分佈式文件系統FastDFS動態擴容

  當用戶量愈來愈大,則集羣中某個group總會到達其極限,這時就得擴展集羣的容量了。html

FastDFS的擴容分爲對group縱向擴容和橫向擴容

  縱向擴容 指在同一個group組中增長服務器,實現數據冗餘,數據備份。同一個group中最大容量取決於最小的storage的存儲容量。所以若是還想繼續使用此group,則須要對此group對應的全部服務器掛載一樣容量的磁盤,指定store_path1……,但這樣作的話成本至關的高,不推薦。nginx

  橫向擴容是經過集羣實現,指新增一個group,增長整個FastDFS的存儲空間。fastDFS的存儲空間指的是全部group加起來的存儲容量。shell

下面就橫向擴容來作介紹

  在 高可用高性能分佈式文件系統FastDFS進階keepalived+nginx對多tracker進行高可用熱備 中已經講了如何配置集羣的2個tracker和4個storage,分group1和group2,下面增長一組group3,也由2臺服務器組成 group3:3六、37。瀏覽器

安裝storage

  按照 高可用高性能分佈式文件系統FastDFS進階keepalived+nginx對多tracker進行高可用熱備 分別佈署storage存儲節點。緩存

  安裝 nginx和fastdfs-nginx-module 到 storage存儲節3六、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.confpost

安裝配置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=1
store_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 200 304 12h;
            proxy_cache_key $uri$is_args$args;
            proxy_pass http://fdfs_group3;
            expires 30d;
        }

再重啓nginx就好了。

  從上面來看,給集羣增長group,storage的安裝配置很簡單,主要是 nginx和fastdfs-nginx-module的配置比較麻煩,須要手動添加組,所以要注意以上要注意的地方不要漏掉了。

相關文章
相關標籤/搜索