FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

时间:2023-03-09 14:24:48
FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

1、搭建虚拟机

a、复制虚拟机文件

首先复制我们之前安装好的fastdfs虚拟机,因为我们现在要设置它的IP为21,改名为CentOS-fastdfs - 21。

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

b、设置网络

  • 生成新的MAC地址

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

  • 设置网络地址为192.168.50.21 

# vi /etc/sysconfig/network-scripts/ifcfg-ens33

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

  • 修改主机名

#vi /etc/hosts

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

#vi /etc/sysconfig/network 

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

  • 重启网络并测试

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

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、解压  

.  cd /usr/local/src
. git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1
   #wget https://github.com/happyfish100/fastdfs-nginx-module/archive/5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip
   #如果出现问题可以使用上面zip链接的资源
. cd fastdfs-nginx-module
. #先停掉nginx
/usr/local/nginx/sbin/nginx -s stop
. #查看nginx的安装目录
find /|grep nginx-1.14.0

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

.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

. /usr/local/nginx/sbin/nginx -V #查看nginx

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

存在我们安装的模块,说明安装成功

  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

、  vim /usr/local/nginx/conf/nginx.conf
#修改配置,其它的默认

#在80端口下添加fastdfs-nginx模块
location ~/group([-])/M00 {
ngx_fastdfs_module;
}

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

  f、启动nginx

/usr/local/nginx/sbin/nginx

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

看到进程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

相关阅读:

CentOS7最小化安装-Linux-1

安装配置fastDFS文件服务器 - Linux

FastDFS 配置 Nginx 模块,并实现分布式同步-Linux

FasDfs缩略图解决方案 -- Linux

C# 使用FastDFS 文件服务