FastDFS配置nginx以及fastdfs-nginx-model
###下载zlib
1 | wget http://zlib.net/zlib-1.2.8.tar.gz |
###下载zlib
1 | wget http://zlib.net/zlib-1.2.8.tar.gz |
###添加tracker
tracker非常容易扩展,直接增加tracker机器即可.集群中的tracker都是对等的,所有的tracker都接受stroage心跳信息.每个tracker是对等的.由客户端来选择使用哪个tracker.
如果新增加一台tracker server,storage server连接该tracker server,发现该tracker server返回的本组storage server列表比本机记录的要少,就会将该tracker server上没有的storage server同步给该tracker server。
###添加group
文件上传时,tracker会分配一个group给client.group直接配置好后启动group中的storage即可.而添加group也是集群扩容的方式.
配置好group后,启动新的group,tracker接受新的stroage心跳信息,来完成添加.
###group添加storage
fastDFS同group内的storage数据是同步的.storage中由专门的线程根据binlog进行文件同步.
当新添加一台storage,会由已有的一台storage将所有数据同步给新的服务器.
新加入的storage server主动连接tracker server,tracker server发现有新的storage server加入,就会将该组内所有的storage server返回给新加入的storage server,并重新将该组的storage server列表返回给该组内的其他storage server;
storage server有7个状态,如下:
###storage添加空间
在storage添加硬盘,然后添加store_path,一个group中各台storage的store_path的数量和配置必须一致.添加完成后重启服务,会自动在新添加的目录创建文件夹.
###数据迁移
如果新旧IP地址一一对应,而且是一样的,那非常简单,直接将data目录拷贝过去即可。
IP不一样的话,会比较麻烦一些。
如果使用了V4的自定义server ID特性,那么比较容易,直接将tracker上的IP和ID映射文件storage_ids.conf修改好即可。storage_ids文件可以再源码目录的conf里面找到示例.
如果是用IP地址作为服务器标识,那么需要修改tracker和storage的data目录下的几个数据文件,将旧IP调整为新IP。
注意storage的data目录下有一个.打头的隐藏文件也需要修改。
另外,需要将后缀为mark的IP地址和端口命名的同步位置记录文件名改名。
文件全部调整完成后才能启动集群服务。
tracker server上需要调整的文件列表:
data/storage_groups_new.dat
data/storage_servers_new.dat
data/storage_sync_timestamp.dat
storage server需要调整的文件列表:
data/.data_init_flag
data/sync/${ip_addr}_${port}.mark:此类文件,需要将文件名中的IP地址调整过来
[FastDFS FQA])(http://bbs.chinaunix.net/thread-1920470-1-1.html)
安装libevent
http://libevent.org/
1 | tar -zxvf libevent-2.0.21-stable.tar.gz |