分布式文件系统FastDFS动态扩容

  当用户量越来越大,则集群中某个group总会到达其极限,这时就得扩展集群的容量了。

FastDFS的扩容分为对group纵向扩容和横向扩容

  纵向扩容 指在同一个group组中增加服务器,实现数据冗余,数据备份。同一个group中最大容量取决于最小的storage的存储容量。因此如果还想继续使用此group,则需要对此group对应的所有服务器挂载同样容量的磁盘,指定store_path1……,但这样做的话成本相当的高,不推荐。

  横向扩容是通过集群实现,指新增一个group,增加整个FastDFS的存储空间。fastDFS的存储空间指的是所有group加起来的存储容量。

下面就横向扩容来做介绍

在高可用高性能分布式文件系统FastDFS进阶keepalived+nginx对多tracker进行高可用热备中已经讲了如何配置集群的2个tracker和4个storage,分group1和group2,下面增加一组group3,也由2台服务器组成 group3:36、37。

安装storage

按照高可用高性能分布式文件系统FastDFS进阶keepalived+nginx对多tracker进行高可用热备分别布署storage存储节点。

  安装 nginx和fastdfs-nginx-module 到 storage存储节36、37。

  将/etc/fdfs/storage.conf里面的 group_name=group3 其它内容与其它storage存储节一样。

然后开启这两个storage,并加入开机启动:

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf

chkconfig fdfs_storaged on

查看集群状态,会显示整体内容:

/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

安装配置nginx

/opt/nginx/conf/nginx.conf 文件内容与其它结点一样。

但修改/etc/fdfs/mod_fastdfs.conf

base_path=/data/fastdfs/storage

tracker_server=192.168.80.30:22122

tracker_server=192.168.80.31:22122

storage_server_port=23000

group_name=group3 # 第一组storage的组名

url_have_group_name=true

store_path0=/data/fastdfs/storage

group_count=2[group1]

group_name=group1

storage_server_port=23000

store_path_count=1

store_path0=/data/fastdfs/storage

[group2]

group_name=group2

storage_server_port=23000

store_path_count=1store_path0=/data/fastdfs/storage[group3]

group_name=group3

storage_server_port=23000

store_path_count=1

store_path0=/data/fastdfs/storage

注意:

将存储结点32到37的/etc/fdfs/mod_fastdfs.conf里面都加上

[group3]

group_name=group3

storage_server_port=23000

store_path_count=1

store_path0=/data/fastdfs/storage

启动Nginx,并加和自启动

shell>/opt/nginx/sbin/nginx

上传测试文件到group3上。

浏览器访问测试时上传的文件,应该都能正常访问。

http://192.168.80.36:8888/group3/M00/00/00/CgNXGVpddOKANpzbAABdrZgsqUU369_big.jpg

http://192.168.80.37:8888/group3/M00/00/00/CgNXGVpddOKANpzbAABdrZgsqUU369_big.jpg

配置Nginx,设置tracker负载均衡以及缓存

vi /opt/nginx/conf/nginx.conf

添加以下内容

#设置 group3 的服务器

upstream fdfs_group3 {

server 192.168.80.36:8888 weight=1 max_fails= 2 fail_timeout=30s;

server 192.168.80.37:8888 weight=1 max_fails=2 fail_timeout=30s;

}

location /group3/M00 {

            proxy_next_upstream http_502 http_504 error timeout invalid_header; proxy_cache http-cache;

            proxy_cache_valid 200304 12h;

            proxy_cache_key $uri$is_args$args;

            proxy_pass http://fdfs_group3;            

            expires 30d;

        }

再重启nginx就行了。

  从上面来看,给集群增加group,storage的安装配置很简单,主要是 nginx和fastdfs-nginx-module的配置比较麻烦,需要手动添加组,因此要注意以上要注意的地方不要漏掉了。

你可能感兴趣的:(分布式文件系统FastDFS动态扩容)