引言:
fastdfs学完前面六篇博客就已经学完了,本节学点相对高级的东西,就是在集群中使用fastdht和nginx来代理访问。关于单机版的fastdht和nginx在前面已经搭建完成了。其实集群中搭建步骤几乎一样,有些细节需要注意。下面跟我来搭建一下
fastdht的搭建:
注意:本节在上面集群的基础上继续搭建,有不清楚的或者我再本节演示ip对应不上的,参考上篇博客: fastdfs的入门到精通(fastdfs集群的搭建)
下面开始在集群环境下安装fastdht: (在一台storage上操作,其他两台相同步骤,只是个别地方需要修改。我是通过crt工具三台服务器一起修改的。后续会出教程)
storage1-group1 机器上操作:
解压安装包:步骤与单机一样 cd /root/fastdfs/下操作(下面两步 都是在此目录下操作) 1.解压db数据库,然后编译: tar -zxvf db-18.1.32.tar.gz cd db-18.1.32 cd build_unix/ ./../dist/configure make && make install 2.解压fastdht 然后编译: unzip fastdht-master.zip cd fastdht-master/ ./make.sh && ./make.sh install 3.修改配置文件: 执行过后,会在/etc/fastdht/ mkdir /data/fastdht vi fastd.conf base_path=/data/fastdht vi fdht_servers.conf group_count = 1 group0 = storage主机ip:11411 -- ip是本地安装fdht的服务器地址,在哪台写哪台ip 4.修改storage.conf check_file_duplicate=1 keep_alive=1 #include /etc/fdht/fdht_servers.conf
storage2-group1 机器上操作:
cd /root/fastdfs/下操作(下面两步 都是在此目录下操作) 1.解压db数据库,然后编译: tar -zxvf db-18.1.32.tar.gz cd db-18.1.32 cd build_unix/ ./../dist/configure make && make install 2.解压fastdht 然后编译: unzip fastdht-master.zip cd fastdht-master/ ./make.sh && ./make.sh install 3.修改配置文件: 执行过后,会在/etc/fastdht/ mkdir /data/fastdht vi fastd.conf base_path=/data/fastdht vi fdht_servers.conf group_count = 1 group0 = 192.168.236.135:11411 -- ip是本地安装fdht的服务器地址,在哪台写哪台ip 4.修改storage.conf check_file_duplicate=1 keep_alive=1 #include /etc/fdht/fdht_servers.conf
storage1-group2 机器上操作:
cd /root/fastdfs/下操作(下面两步 都是在此目录下操作) 1.解压db数据库,然后编译: tar -zxvf db-18.1.32.tar.gz cd db-18.1.32 cd build_unix/ ./../dist/configure make && make install 2.解压fastdht 然后编译: unzip fastdht-master.zip cd fastdht-master/ ./make.sh && ./make.sh install 3.修改配置文件: 执行过后,会在/etc/fastdht/ mkdir /data/fastdht vi fastd.conf base_path=/data/fastdht vi fdht_servers.conf group_count = 1 group0 = 192.168.236.131:11411 -- ip是本地安装fdht的服务器地址,在哪台写哪台ip 4.修改storage.conf check_file_duplicate=1 keep_alive=1 #include /etc/fdht/fdht_servers.conf
重启2台tracker服务,启动3台fastdht服务,最后启动3台storage服务
先启动tracker fdfs_trackerd /etc/fdfs/tracker.conf restart 然后fdht /usr/local/bin/fdhtd /etc/fdht/fdhtd.conf 最后storage fdfs_storaged /etc/fdfs/storage.conf restart
启动之后上传文件既可验证fastdht去重已经生效:效果如下:
问题:大家注意,在我上传的文件的时候,大家发现上面都传到了group2上,为啥没有group1呢
这个我要给大家解释一下,关于我们集群搭建完成后,要修改集群轮训策略,默认是存到空间大的group上,所以我们需要修改一下:
vi /etc/fdfs/tracker.conf
# the method of selecting group to upload files # 0: round robin # 1: specify group # 2: load balance, select the max free space group to upload file store_lookup=1 -- 修改为1即可
然后重启两台tracker服务:再上传文件测试:就ok了。
关于nginx的整合,与单机安装类似,在这我就不演示了。大家要理解fastdfs的原理。以及两个角色的作用。这样才能灵活的运用的项目中。