通过给group的机器添加硬盘的方式,实现某个group的扩容。

fastdfs在一台服务器支持多个store_path,每个store_path指向一个存储路径。url “M00/3F/E1/oYYBAFXfyuOABOf5AAAHoDwhqE0491.txt”中M00表示使用store_path0,如果没有配置store_path,就使用base_path的路径。

添加了硬盘后,通过把新的store_path指向新硬盘的挂载点,再修改配置文件,就能实现group的扩容。

原来的fdfs的base_path路径为/data/fdfs_store
现在假设添加了一个硬盘,挂载到/data1上,指定/data1/fdfs_store为store_path1

修改/etc/fdfs/storage.conf:

# path(disk or mount point) count, default value is 1
store_path_count=2

# store_path#, based 0, if store_path0 not exists, it's value is base_path
# the paths must be exist
store_path0=/data/fdfs_store
store_path1=/data1/fdfs_store

修改/etc/fdfs/mod_fastdfs.conf:
# path(disk or mount point) count, default value is 1
store_path_count=2

# store_path#, based 0, if store_path0 not exists, it's value is base_path
# the paths must be exist
store_path0=/data/fdfs_store
store_path1=/data1/fdfs_store

在nginx的配置文件中添加新store_path的路径:
location ~* /M01 {
root /data1/fdfs_store/data;
ngx_fastdfs_module;
}

重启服务:

killall fdfs_storaged
killall fdfs_trackerd
/usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf
/usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf

完成后也要重启nginx,这样才能访问新的store_path的文件。

注意,有时候通过fdfs_monitor 发现store_path的配置不生效,这时,必须要删除tracker目录下的两个文件:storage_groups_new.dat,storage_servers_new.dat再重启服务。

文档更新时间: 2022-03-02 02:35   作者:月影鹏鹏
IT运维支持-AIWALY-月影工作室