文章目录
6.FastDFS安装和使用
6.1 安装总体介绍
-
- 首先安装libfastcommon (fastdfs依赖的函数库)
-
- 接着安装fastdfs(其实就是把client , tracker ,storage安装完成了)
-
- 接下来安装fastdfs-nginx-module (fastdfs提供对nginx的依赖模块)
-
- 最后安装nginx(如果此前安装好了,可以不用重新安装)
注意: 安装分为在线安装(要求提供良好的网络)或者离线安装(将相关的软件包下载下来后离线安装,安装资料在资料\fastdfs\安装包)
-
-
安装之前,创建两个目录
/usr/local/soft: 安装包所在的目录,执行命令: mkdir -p /usr/local/soft
/data/fastdfs: 数据所在的目录(fastdfs上传文件和日志所在的目录) 执行命令: mkdir -p /data/fastdfs
-
6.2 安装libfastcommon (安装方式二选一)
-
在线安装
步骤一: git clone https://github.com/happyfish100/libfastcommon.git --depth 1 步骤二: cd libfastcommon/ 步骤三:#编译安装 ./make.sh && ./make.sh install
-
离线安装
步骤一: unzip libfastcommon-master.zip 步骤二: cd libfastcommon-master 步骤三: ./make.sh && ./make.sh install
6.3 安装fastdfs (安装方式二选一)
-
在线安装
cd ../ #返回上一级目录 ,回到soft所在的目录 git clone https://github.com/happyfish100/fastdfs.git --depth 1 #下载fastdfs.git cd fastdfs/ #进入fastdfs ./make.sh && ./make.sh install #编译安装 #供nginx访问使用 cp /usr/local/soft/fastdfs/conf/http.conf /etc/fdfs/ cp /usr/local/soft/fastdfs/conf/mime.types /etc/fdfs/
-
离线安装
步骤一: unzip fastdfs-master.zip #首先切换到soft目录 步骤二: cd fastdfs-master 步骤三: ./make.sh && ./make.sh install #供nginx访问使用 cp /usr/local/soft/fastdfs-master/conf/http.conf /etc/fdfs/ cp /usr/local/soft/fastdfs-master/conf/mime.types /etc/fdfs/
6.4 安装fastdfs-nginx-module (安装方式二选一)
-
在线安装
cd ../ #返回上一级目录 git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1 cp /usr/local/soft/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs
-
离线安装
步骤一: unzip fastdfs-nginx-module-master.zip 步骤二: cp /usr/local/soft/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs
6.5 安装nginx (安装方式二选一)
-
在线安装
wget http://nginx.org/download/nginx-1.15.4.tar.gz #下载nginx压缩包 tar -zxvf nginx-1.15.4.tar.gz #解压 cd nginx-1.15.4/ #添加fastdfs-nginx-module模块 ./configure --add-module=/usr/local/soft/fastdfs-nginx-module/src/ make && make install #编译安装
-
离线安装
步骤一: tar -zxvf nginx-1.8.1.tar.gz #切换到/usr/local/soft目录下面 步骤二: 安装nginx依赖 sudo apt-get install openssl libssl-dev sudo apt-get install libpcre3 libpcre3-dev sudo apt-get install zlib1g-dev 步骤三: 切换进入nginx目录 cd /usr/local/soft/nginx-1.8.1 步骤四: 将fastdfs提供的nginx依赖配置到nginx里面 sudo ./configure --prefix=/usr/local/nginx/ --add-module=fastdfs-nginx-module-master/src(对应的绝对路径) 步骤五: make &&make install 如果执行步骤五错,那么首先删除nginx-1.8.1/objs/Makefile这个文件, 命令为: rm -rf /usr/local/soft/nginx-1.8.1/objs/Makefile 然后再次执行步骤五
7.单机部署fastdfs
-
注意注意!!!
由于离线安装和在线安装,生成的配置文件名称不一致,
如果是离线安装,那么需要修改配置文件名称
#执行如下命令 cd /etc/fdfs mv tracker.conf.sample tracker.conf mv storage.conf.sample storage.conf mv client.conf.sample client.conf
-
步骤一: 配置虚拟主机
比如: 编辑虚拟机的host文件: vim /etc/hosts 添加这段内容: 192.168.200.13 fastdfs.com 注意: ip写自己主机的ip, fastdfs.com域名 可以随意起. 如果通过windows浏览器访问虚拟机的fastdfs,同时需要配置C:\Windows\System32\drivers\etc\hosts文件 添加这段内容: 192.168.200.131 www.fastdfs.com
-
步骤二: 配置tracker
vim /etc/fdfs/tracker.conf #需要修改的内容如下 port=22122 # tracker服务器端口(默认22122,一般不修改) base_path=/data/fastdfs # 存储日志和数据的根目录
-
步骤三: 配置storage
vim /etc/fdfs/storage.conf #需要修改的内容如下 port=23000 # storage服务端口(默认23000,一般不修改) base_path=/data/fastdfs # 数据和日志文件存储根目录 store_path0=/data/fastdfs # 第一个存储目录 tracker_server=fastdfs.com:22122 # tracker服务器IP和端口 http.server_port=80 # http访问文件的端口(默认8888,看情况修改,和nginx的端口中保持一致)
-
步骤四: 启动服务测试
- 先启动服务
# 永久关闭防火墙 systemctl disable firewalld.service #启动tracker /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf #启动storage /usr/bin/fdfs_storaged /etc/fdfs/storage.conf # 重启storage /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
-
client测试
vim /etc/fdfs/client.conf #需要修改的内容如下 base_path=/data/fastdfs tracker_server=fastdfs.com:22122 #tracker服务器IP和端口 #保存后测试,返回ID表示成功 如:group1/M00/00/00/wKgDDWDtRu6AMPhBARBlpcz7xUs146.jpg # 上传文件 fdfs_upload_file /etc/fdfs/client.conf /usr/local/soft/fox.jpg # 删除文件 fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKgDCmD1LHaADXrMAAW3EDO1WQ106.jpg
-
步骤五: 配置nginx访问(client)
vim /etc/fdfs/mod_fastdfs.conf #需要修改的内容如下 tracker_server=fastdfs.com:22122 #tracker服务器IP和端口 url_have_group_name=true store_path0=/data/fastdfs #配置nginx.config vim /usr/local/nginx/conf/nginx.conf #添加如下配置 server { listen 80; ## 该端口为storage.conf中的http.server_port相同 server_name localhost; location ~/group[0-9]/ { ngx_fastdfs_module; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
Nginx测试:
1.启动服务
/usr/local/nginx/sbin/nginx #启动nginx /usr/local/nginx/sbin/nginx -s reload #重启nginx /usr/local/nginx/sbin/nginx -s stop #停止nginx
2.测试,如果能看到图片表示成功**(后面的图片是自己的图片名称)**
http://fastdfs.com:8888/group1/M00/00/00/wKgDDWDtRu6AMPhBARBlpcz7xUs146.jpg
8.集群部署fastdfs
-
声明: 集群部署fastdfs时,
服务器规划:
跟踪服务器1【主机】(Tracker Server):192.168.200.131
跟踪服务器2【备机】(Tracker Server):192.100.200.132
存储服务器1(Storage Server):192.168.200.x1
存储服务器2(Storage Server):192.168.200.x2
存储服务器3(Storage Server):192.168.200.x3
存储服务器4(Storage Server):192.168.200.x4
最好: 保证 tracker 和 storage安装在不同ip的主机上, 避免报错.
具体流程如:
-
步骤一: 准备3台服务器(至少2台)
*