该测试基于两台服务器,集群搭建只需按一中的步骤分别在两台服务器上搭建即可;

测试一:单个tracker对应两个storager(storager组名相同)

1:修改两个storager的storager.conf文件中的tracker_server为tracker的地址,group相同

2:设定对单个tracker上传图片,结果为两台服务器上均有图片,且图片名相同;

结论:此时两个storager为同一个组,图片上传至该组内,成员间会相互备份


测试二:两个tracker分别对应两个storager(storager组名相同)

1:分别修改两个storager的storager.conf文件中的tracker_server为不同的两个tracker的地址,group相同

2:设定对两个tracker上传图片,上传多次后发现两台服务器上均有图片,数量相同,且图片名不相同

结论:此时两个storager组名相同,但分别被不同的tracker控制实现了负载均衡


测试三:两个storager(storager组名相同)分别配置两个tracker(测试主备关系)

1:分别修改两个storager的storager.conf文件中在加一个tracker_server(tracker_server可配置多个每个一行),此时两个storager中tracker_server配置相同,storager同时被两个tracker控制

2:设定对两个tracker上传图片,结果为两台服务器上均有图片,数量相同图片名称相同

结论:同测试一

3:此时关闭其中一台服务器的tracker

4:设定对两个tracker上传图片,图片上次依旧成功,两台服务器均有图片,数量相同,且图片名相同

结论:两个tracker同时控制两个storager时,两个storager为同一个组,成员间相互备份,而两个tracker形成主备关系,其中一台不能进行服务时,另一台能继续提供服务

期间还运到另外一个问题,当把两个storager分别改成本机的tracker地址在上传文件时,居然可以从另一台机子传到这一台,而且两台机子的依旧会进行相互备份。后来发现原来tracker会把所有连接过自己的storager记录在本地文件中,下一次启动的时候回从文件中读取自己管理的storager,原来连接过的几台storager依旧是组的关系,

可以通过fdfs_monitor 查看当前连接的storager,在此之前需要先配置client.conf,修改base_path为日志所在文件夹的地址,tracker_server为本机tracker的地址。

通过以下指令查看

/usr/local/include/fastdfs/bin/fdfs_monitor /etc/fdfs/client.conf

 fdfs安装路径中的fdfs_monitor client.conf文件位置

srorage1,srorage2…..即为tracker当前连接着的srorage ,多个表示管理着多台,当需要把该srorage去除时,通过以下指令删除:

/usr/local/include/fastdfs/bin/fdfs_monitor /etc/fdfs/client.confdelete group1 10.110.10.130

 fdfs安装路径中的fdfs_monitor client.conf文件位置 delete 组名ip_addr