fastDfs服务器部署使用

简介: 强大的文件管理服务器fastDFS

一、准备环境

下载,推荐到这里,这是作者的GitHub:https://github.com/happyfish100

image.jpeg

首先进入到根目录

               cd /              

创建一个文件夹development,主要用于存放我们FastDFS的安装文件

image.jpeg

将相关文件上传至development文件夹中,可以通过FX等方式

image.jpeg

二、安装libfastcommon内库

进入到development文件夹后加压libfastcommon-1.0.39.tar.gz打包压缩文件

               #进入development准备加压 cd development/ #解压 tar -zxvf libfastcommon-1.0.39.tar.gz  #进入 cd libfastcommon-1.0.39 #查看文件中的内容 ll              

image.jpeg

准备编译并且安装

               ./make.sh && ./make.sh install              

查看libfastcommon有没有正确安装到虚拟机上

               cd /usr/lib && ll libfast*              

显示如下信息,表示成功安装

image.jpeg

三、安装fastdfs

3.1、安装基本环境

重新进入到development目录下,加压fastdfs-5.11.tar.gz

               #进入development目录 cd /development/ #解压 tar -zxvf fastdfs-5.11.tar.gz #进入fastdfs-5.11目录,然后ll查看文件 cd fastdfs-5.11 ll              

image.jpeg

创建一个目录,用来存放FastDFS的配置

               mkdir /etc/fdfs              

拷贝两个文件到创建的fdfs目录中,目的是为了避免后面会出现的错误

               cp /development/fastdfs-5.11/conf/mime.types /etc/fdfs/ cp /development/fastdfs-5.11/conf/http.conf /etc/fdfs/ #查看/etc/fdfs目录下的内容 ll /etc/fdfs/              

开始编译安装fastdfs

               #进入到 fastdfs-5.11 目录,执行相同的编译安装命令 cd /development/fastdfs-5.11/ ./make.sh && ./make.sh install              

安装成功后查看安装的情况

               cd /usr/bin/ && ll fdfs*              

image.jpeg

3.2、安装Tracker服务(监控服务)

编辑tracker服务的配置文件tracker.conf

               vim /development/fastdfs-5.11/conf/tracker.conf              

需要修改的内容如下:

               # the base path to store data and log files base_path=/home/yuqing/fastdfs 修改为 base_path=/development/fastdfs/tracker #注意,这里是本地,只需要修改这一个地方,更多的修改根据环境的不同来修改              

因为我们并没有上面修改的文件夹,下面就来创建这个文件夹

               mkdir -p /development/fastdfs/tracker #存储目录 mkdir -p /development/fastdfs/storage mkdir -p /development/fastdfs/client #Ngix使用的目录 mkdir -p /var/temp/nginx/client              

               mkdir --help 长选项必须使用的参数对于短选项时也是必需使用的。   -m, --mode=模式       设置权限模式(类似chmod),而不是rwxrwxrwx 减umask   -p, --parents         需要时创建目标目录的上层目录,但即使这些目录已存在也不当作错误处理   -v, --verbose         每次创建新目录都显示信息   -Z, --context=CTX     将每个创建的目录的SELinux 安全环境设置为CTX       When COREUTILS_CHILD_DEFAULT_ACLS environment variable is set, -p/--parents       option respects default umask and ACLs, as it does in Red Hat Enterprise Linux 7 by default             --help              显示此帮助信息并退出       --version         显示版本信息并退出              

验证stracker服务是否能正常启动和关闭

               #启动=命令+配置+命令 fdfs_trackerd /development/fastdfs-5.11/conf/tracker.conf #查看tracker目录下是否有文件了 ll /development/fastdfs/tracker/              

image.jpeg

看到data和logs就证明tracker服务已经启动,并且配置的basepath也是没有问题的

               #关闭/停止 = 命令 + 配置 + 命令 fdfs_trackerd /development/fastdfs-5.11/conf/tracker.conf stop              

image.jpeg

               #接start启动 fdfs_trackerd /development/fastdfs-5.11/conf/tracker.conf start #查看进程的方式查看fdfs ps -ef | grep fdfs              

3.3、安装storage服务

编辑storage的配置文件

               vim /development/fastdfs-5.11/conf/storage.conf              

修改内容如下:

               # and storage_ids.conf must be configed correctly. group_name=group1 修改这个的分组名称,这里可以默认为group1,              

               # bind an address of this host # empty for bind all addresses of this host bind_addr= 修改为当前IP地址 bind_addr=192.168.25.129              

               # the base path to store data and log files base_path=/home/yuqing/fastdfs 修改为刚新建的storage目录 base_path=/development/fastdfs/storage              

               # store_path#, based 0, if store_path0 not exists, it's value is base_path # the paths must be exist store_path0=/home/yuqing/fastdfs 修改为storage目录 store_path0=/development/fastdfs/storage              

               # tracker_server can ocur more than once, and tracker_server format is #  "host:port", host can be hostname or ip address tracker_server=192.168.209.121:22122 修改为自己的IP地址 tracker_server=192.168.25.129:22122              

               修改完成保存并退出              

启动storage服务,这里需要注意,需要先启动tracker服务

               #因为刚才我们已经启动过了,使用这里不需要启动tracker了 #如果没有启动,记得启动 #启动/关闭也差不多 = 命令 + 配置 + 命令 fdfs_storaged /development/fastdfs-5.11/conf/storage.conf fdfs_storaged /development/fastdfs-5.11/conf/storage.conf stop fdfs_storaged /development/fastdfs-5.11/conf/storage.conf start ps -ef|grep fdfs              

image.jpeg

image.jpeg

四、测试服务

4.1、上传一张图片到Linux服务器上

4.2、通过FastDFS中的测试(刚才的test)进行测试

               #上传测试 = 命令 + 配置 + 命令 + 图片 fdfs_test /development/fastdfs-5.11/conf/client.conf  upload /development/test.png                

image.jpeg

修改配置文件呗:

               vim /development/fastdfs-5.11/conf/client.conf              

修改信息如下

               # the base path to store log files base_path=/home/yuqing/fastdfs 修改为刚才的client目录 base_path=/development/fastdfs/client              

               # tracker_server can ocur more than once, and tracker_server format is #  "host:port", host can be hostname or ip address tracker_server=192.168.0.197:22122 修改为本地IP地址 tracker_server=192.168.25.129:22122              

               保存并退出              

再次执行上传测试命令

               fdfs_test /development/fastdfs-5.11/conf/client.conf  upload /development/test.png                

image.jpeg

如果显示上图信息,表示上传已经成功了,保存地址,为了后面配置好Nginx之后可以查看

http://192.168.25.129/group1/M00/00/00/wKgZgV2vhkqAF4HEAAOyoURsXcU168_big.png

4.3、查看一下图片被保存的地方

               #进入数据保存的位置(请记好这个文件夹的地址) cd /development/fastdfs/storage/data/ #通过ls来进行查看,因为分片后的文件比较多 ls #上面地址上有M00/00/00,下面的00是第一个目录 cd 00 #这是进入到第二个目录 cd 00 #通过ll命令可以查看到图片文件了 ll              

image.jpeg

五、FastDFS和Nginx整合

回到development目录,解压fastdfs-nginx-module-1.20.tar.gz

               cd /development/ tar -zxvf fastdfs-nginx-module-1.20.tar.gz  cd fastdfs-nginx-module-1.20 ll cd fastdfs-nginx-module-1.20/src/ ll              

image.jpeg

修改config文件

               vim config              

               ngx_module_incs="/usr/local/include" 修改为 ngx_module_incs="/usr/include/fastdfs /usr/include/fastcommon"              

               CORE_INCS="$CORE_INCS /usr/local/include" 修改为 CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon"              

               保存并退出              

到目前为止,已经安装好FastDFS服务器,但是还没有和Nginx进行配合实现图片服务器的效果,因为Nginx我们还未安装,下面就安装Nginx

               #再次回到development目录,解压Nginx cd /development/ tar -zxvf nginx-1.8.0.tar.gz  cd nginx-1.8.0 ll              

image.jpeg

配置命令:

               ./configure \ --prefix=/usr/local/nginx \ --pid-path=/var/run/nginx/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --error-log-path=/usr/local/nginx/errors/error.log \ --http-log-path=/usr/local/nginx/logs/access.log \ --with-http_gzip_static_module \ --http-client-body-temp-path=/var/temp/nginx/client \ --http-proxy-temp-path=/var/temp/nginx/proxy \ --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ --http-scgi-temp-path=/var/temp/nginx/scgi \ --add-module=/development/fastdfs-nginx-module-1.20/src              

报错

               ./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre=<path> option.              

               yum -y install pcre-devel              

               yum install -y zlib-devel              

再次执行上面的配置命令

image.jpeg

接下来运行make命令安装

               #当前所在目录/development/nginx-1.8.0 make && make install              

image.jpeg

开始配置Nginx配合FastDFS,修改配置文件mod_fastdfs.conf

               vim /development/fastdfs-nginx-module-1.20/src/mod_fastdfs.conf              

修改内容如下:

               # the base path to store log files base_path=/tmp 修改为 base_path=/development/fastdfs              

               #  "host:port", host can be hostname or ip address # valid only when load_fdfs_parameters_from_tracker is true tracker_server=tracker:22122 修改为自己的IP地址 tracker_server=192.168.25.129:22122              

               # if the url / uri including the group name # set to false when uri like /M00/00/00/xxx # set to true when uri like ${group_name}/M00/00/00/xxx, such as group1/M00/xxx # default value is false url_have_group_name = false 修改为 url_have_group_name = true              

               # store_path#, based 0, if store_path0 not exists, it's value is base_path # the paths must be exist # must same as storage.conf store_path0=/home/yuqing/fastdfs #store_path1=/home/yuqing/fastdfs1 修改为 store_path0=/development/fastdfs/storage              

               保存并退出              

将修改好的文件复制一份到/etc/fdfs 目录下

               cp /development/fastdfs-nginx-module-1.20/src/mod_fastdfs.conf /etc/fdfs/              

启动前,配置Nginx相关配置

创建存放Nginx多虚拟的配置文件的目录

               mkdir /usr/local/nginx/conf/conf.d              

配置Nginx的主配置文件nginx.conf

               vim /usr/local/nginx/conf/nginx.conf              

               #添加如下信息 include conf.d/*.conf; # another virtual host using mix of IP-, name-, and port-based configuration              

               保存并退出              

在创建一个fastdfs-server.conf文件

               vim /usr/local/nginx/conf/conf.d/fastdfs-server.conf              

填上fastdfs相关的配置信息

               server{     listen 18888;     server_name 192.168.25.129;     location /group1/M00{         ngx_fastdfs_module;     } }              

验证Nginx,通过:

               /usr/local/nginx/sbin/nginx -t                

不带参数启动Nginx

               /usr/local/nginx/sbin/nginx              

本地浏览器测试,带上端口号(配置的18888)

http://192.168.25.129:9870/group1/M00/00/00/wKgZgV2vhkqAF4HEAAOyoURsXcU168_big.png

相关文章
|
1月前
|
中间件 Java 应用服务中间件
Windows部署web应用服务器Jboss中间件
如何在Windows系统上部署JBoss 7.1作为Web应用服务器,包括配置环境变量、自动部署WAR包、访问JBoss控制台、设置管理员账户以及修改端口和绑定地址等操作。
68 1
|
1月前
|
JavaScript 前端开发 应用服务中间件
【Vue面试题三十】、vue项目本地开发完成后部署到服务器后报404是什么原因呢?
这篇文章分析了Vue项目在服务器部署后出现404错误的原因,主要是由于history路由模式下服务器缺少对单页应用的支持,并提供了通过修改nginx配置使用`try_files`指令重定向所有请求到`index.html`的解决方案。
【Vue面试题三十】、vue项目本地开发完成后部署到服务器后报404是什么原因呢?
|
1月前
|
负载均衡 应用服务中间件 持续交付
微服务架构下的Web服务器部署
【8月更文第28天】随着互联网应用的不断发展,传统的单体应用架构逐渐显露出其局限性,特别是在可扩展性和维护性方面。为了解决这些问题,微服务架构应运而生。微服务架构通过将应用程序分解成一系列小型、独立的服务来提高系统的灵活性和可维护性。本文将探讨如何在微服务架构中有效部署和管理Web服务器实例,并提供一些实际的代码示例。
65 0
|
25天前
|
网络协议 网络安全
基于bind软件部署DNS服务器
关于如何使用bind软件部署DNS服务器的教程,包括DNS服务器的类型、基于bind软件的部署步骤、验证DNS服务器可用性的指导,以及如何进行DNS正向解析的实现。
25 2
基于bind软件部署DNS服务器
|
9天前
|
监控 JavaScript Java
部署应用程序到服务器
部署应用程序到服务器
23 3
|
26天前
|
存储 关系型数据库 MySQL
使用Docker快速部署Mysql服务器
本文介绍了如何使用Docker快速部署MySQL服务器,包括下载官方MySQL镜像、启动容器、设置密码、连接MySQL服务器以及注意事项。
128 18
|
1月前
|
应用服务中间件 Docker 容器
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
这篇文章介绍了在Docker中安装Tomcat的过程,包括搜索Tomcat镜像、拉取镜像、目录挂载的准备、创建并挂载容器,以及如何进入容器和进行测试。文中还说明了如何将WAR包部署到Tomcat服务器并访问部署的应用。
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
|
1天前
|
JavaScript Linux 开发工具
如何将nodejs项目程序部署到阿里云服务器上
该文章详细描述了将Node.js项目部署到阿里云服务器的步骤,包括服务器环境配置、项目上传及使用PM2进行服务管理的过程。
|
1月前
|
监控 应用服务中间件 网络安全
Nightingale——部署客户端采集其他服务器状态信息
Nightingale——部署客户端采集其他服务器状态信息
51 1
Nightingale——部署客户端采集其他服务器状态信息
|
9天前
|
Ubuntu 开发工具 git
在Ubuntu上部署BOA服务器的步骤
部署BOA服务器是一个涉及多个步骤的过程,包括系统更新、安装依赖、下载和编译源代码、配置服务器以及启动和验证。遵循上述步骤,可以在Ubuntu系统上成功部署BOA服务器,为开发和测试提供一个轻量级的Web服务器环境。
12 0

热门文章

最新文章