FastDFS 配置 Nginx 模块,并实现分布式同步-Linux
1、搭建虚拟机
a、复制虚拟机文件
首先复制我们之前安装好的fastdfs虚拟机,因为我们现在要设置它的IP为21,改名为CentOS-fastdfs - 21。
b、设置网络
-
生成新的MAC地址
- 设置网络地址为192.168.50.21
# vi /etc/sysconfig/network-scripts/ifcfg-ens33
- 修改主机名
#vi /etc/hosts
#vi /etc/sysconfig/network
- 重启网络并测试
2、安装配置Nginx模块
a、fastdfs-nginx-module 模块说明
FastDFS 通过 Tracker 服务器,将文件放在 Storage 服务器存储, 但是同组存储服务器之间需要进行文件复制, 有同步延迟的问题。
如我们将文件通过Tracker 服务器上传到192.168.50.20 我们同组的192.168.50.21将要进行同步,如果同步没有完成。这时候访问192.168.50.21的这个文件,会返回错误,所以fastdfs-nginx-module这个模块,将会查找一个源文件,也就是存在192.168.50.20的服务器上的文件。
b、下载 fastdfs-nginx-module、解压
1. cd /usr/local/src 2. git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1
#wget https://github.com/happyfish100/fastdfs-nginx-module/archive/5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip
#如果出现问题可以使用上面zip链接的资源 3. cd fastdfs-nginx-module 4. #先停掉nginx /usr/local/nginx/sbin/nginx -s stop
5. #查看nginx的安装目录 find /|grep nginx-1.14.0
6.cd /nginx-1.14.0
7.# 添加模块
./configure --prefix=/usr/local/nginx --add-module=/usr/local/src/fastdfs-nginx-module/src
#--prefix对应nginx的安装目录,--add-module对应fastdfs-nginx-module的路径
8. make && make install
9. /usr/local/nginx/sbin/nginx -V #查看nginx
存在我们安装的模块,说明安装成功
c、复制 fastdfs-nginx-module 源码中的配置文件到/etc/fdfs 目录, 并修改
1、cd /usr/local/src/fastdfs-nginx-module/src
2、 cp mod_fastdfs.conf /etc/fdfs/
修改配置
vim /etc/fdfs/mod_fastdfs.conf
# 连接超时时间
connect_timeout=10 # Tracker Server
tracker_server=192.168.50.20:22122
tracker_server=192.168.50.21:22122
# StorageServer 默认端口 storage_server_port=23000 # 如果文件ID的uri中包含/group**,则要设置为true url_have_group_name = true # Storage 配置的store_path0路径,必须和storage.conf中的一致 store_path0=/fastdfs/file #这里要根据你自己的具体情况来设置
d、复制 FastDFS安装包 的部分配置文件到/etc/fdfs 目录
1、 cd /usr/local/src/fastdfs-5.05/conf 2、 cp anti-steal.jpg http.conf mime.types /etc/fdfs/
e、配置nginx,修改nginx.conf
1、 vim /usr/local/nginx/conf/nginx.conf
#修改配置,其它的默认 #在80端口下添加fastdfs-nginx模块 location ~/group([0-9])/M00 { ngx_fastdfs_module; }
f、启动nginx
/usr/local/nginx/sbin/nginx
看到进程ID,代表启动成功
3、测试
http://192.168.50.21/group1/M00/00/00/wKgyFFtm9mWAZfJhAAANHkI1RM4732.gif
如果测试有问题重点检查一下几个conf文件有没有错误。
vim /etc/fdfs/tracker.conf
vim /etc/fdfs/storage.conf
vim /etc/fdfs/mod_fastdfs.conf
vim /etc/sysconfig/iptables
相关阅读:
FastDFS 配置 Nginx 模块,并实现分布式同步-Linux
C# 使用FastDFS 文件服务