192.168.101.130 | nginx 单一入口访问 |
192.168.101.131 | tracker1 |
192.168.101.132 | tracker2 |
192.168.101.133 | nginx fastdfs-nginx-module storage(group1) |
192.168.101.134 | nginx fastdfs-nginx-module storage(group1) |
192.168.101.135 | nginx fastdfs-nginx-module storage(group2) |
192.168.101.136 | nginx fastdfs-nginx-module storage(group2) |
一.下载文件
libfastcommon-1.0.39.tar.gz
fastdfs-5.11.tar.gz
fastdfs-nginx-module-1.20.tar.gz
二 安装软件 6台服务器都需要安装
1 安装libfastcommon
tar -zxvf libfastcommon-1.0.39.tar.gz
cd libfastcommon-1.0.39
./make.sh
./make.sh install
2 安装fastdfs
tar -zxvf fastdfs-5.11.tar.gz
cd fastdfs-5.11
./make.sh
./make.sh install
安装完成之后会生成相应的文件
/usr/bin/ 命令都在这个目录下
/etc/fdfs 配置文件都在这个目录
把fastdfs-5.11/conf 下的配置文件都放到/etc/fdfs
cp -R fastdfs-5.11/conf /etc/fdfs
三 修改/etc/fdfs下配置文件
由于是集群搭建,所以tracker和storage是分开配置
在修改配置文件之前先新建一个目录存放tracker和storage的data和log
192.168.101.131 和 192.168.101.132 新建tracker目录 /home/fastdfs/tracker
192.168.101.133 、192.168.101.134、192.168.101.135、192.168.101.136 新建storage目录 /home/fastdfs/storage
1 修改tracker.conf(192.168.101.131 和 192.168.101.132)
base_path=/home/fastdfs/tracker
http.server_port=80
2 修改storage.conf (192.168.101.133 、192.168.101.134、192.168.101.135、192.168.101.136 )
192.168.101.133 、192.168.101.134修改如下:
group_name=group1 组1
base_path=/home/fastdfs/storage
tracker_server=192.168.101.131:22122 tracker.conf所在服务器的ip port为配置文件中tracker server port(不是http.server_port)
tracker_server=192.168.101.132:22122
http.server_port=8888 直接通过storage服务器访问文件地址的web端口,和后续安装nginx fastdfs-nginx-module模块在nginx中配置的端口一样,如果不一样是访问不了文件的
192.168.101.135 、192.168.101.136修改如下:
group_name=group2 组2
base_path=/home/fastdfs/storage
tracker_server=192.168.101.131:22122
tracker_server=192.168.101.132:22122
http.server_port=8888
3 修改client.conf (192.168.101.131 和 192.168.101.132)方便测试 client.conf和tracker.conf都在相同的服务器上
tracker_server=192.168.101.131:22122
http.tracker_server_port=80 tracker.conf中http.port
同理192.168.101.132也相应的修改
tracker_server=192.168.101.132:22122
http.tracker_server_port=80 tracker.conf中http.port
4 启动服务
1 启动192.168.101.131 和 192.168.101.132 tracker服务
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
可以看到在/home/fastdfs/tracker生成了data和log文件
2 启动192.168.101.133 、192.168.101.134、192.168.101.135、192.168.101.136 storage服务
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
可以看到在/home/fastdfs/storage也生成了data和log文件
进入logs文件查看storage.log日志 ,发现storage和tracker通信正常
四 测试文件上传
刚才已经修改了client.conf配置,这个时候我们可以使用/usr/bin/fdfs_test 命令进行测试了
usr/bin/fdfs_test /etc/fdfs/client.conf upload test.jpg
成功上传,上传到了192.168.101.136的机器上了,group2 组。相同组会同步,group1组发现不存在刚才上传的文件。
五 直接访问上传的文件
对于刚才上传的文件要进行访问,需要安装nginx fastdfs-nginx-module模块扩展
1 解压文件
192.168.101.133 、192.168.101.134、192.168.101.135、192.168.101.136都需要安装
tar -zxvf fastdfs-nginx-module-1.20.tar.gz
cd fastdfs-nginx-module-1.20
2 复制配置文件
把 fastdfs-nginx-module-1.20/src 下的mod_fastdfs.conf文件复制到/etc/fdfs目录中一份
cp src/mod_fastdfs.conf /etc/fdfs
3 修改/etc/fdfs/mod_fastdfs.conf配置文件
192.168.101.133 、192.168.101.134 如下:
base_path=/home/fastdfs
tracker_server=192.168.101.131:22122
tracker_server=192.168.101.132:22122
group_name=group1
url_have_group_name = true
store_path_count=1
store_path0=/home/fastdfs/storage
group_count = 2
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/home/fastdfs/storage
[group2]
group_name=group2
storage_server_port=23000
store_path_count=1
store_path0=/home/fastdfs/storage
192.168.101.135 、192.168.101.136 如下:
base_path=/home/fastdfs
tracker_server=192.168.101.131:22122
tracker_server=192.168.101.132:22122
group_name=group2
url_have_group_name = true
store_path_count=1
store_path0=/home/fastdfs/storage
group_count = 2
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/home/fastdfs/storage
[group2]
group_name=group2
storage_server_port=23000
store_path_count=1
store_path0=/home/fastdfs/storage
4 nginx安装 fastdfs-nginx-module 模块
找到自己的nginx解压文件执行 ./configure --add-module=/usr/local/soft/fastdfs-nginx-module-1.20/src
make && make install
安装成功后需要在nginx.conf中配置http服务
192.168.101.133 、192.168.101.134配置如下:
与storage.conf中配置的端口要一致
同理192.168.101.135 、192.168.101.136配置如下:
与storage.conf中配置的端口要一致
重启nginx服务 service nginx reload
这个时候http服务已经启动,可以访问刚才上传的文件地址了
http://192.168.101.136:8888/group2/M00/00/00/wKhliGCBGg-ACiskAABHEPvOvl8850_big.jpg
六 单一只访问
在192.168.101.130上面修改nginx配置文件如下:
重启nginx 服务器
把刚才直接访问文件地址的地址改为单一入口访问地址:http://192.168.101.130/group2/M00/00/00/wKhliGCBGg-ACiskAABHEPvOvl8850_big.jpg
还可以正常访问。到此单一入口访问文件和集群搭建已经完成。