fastdfs集群安裝過程_學習筆記


最終效果

 

 

 

初始化為6個節點

在/usr/local/software 目錄下上傳需要用到tar包,分別在各個節點上傳

使用scp 將本地software目錄復制到其他節點上

73、74為 tracker集群,其他為storage集群

其中13對應15,16

其中14對應17,18

------------------------------------------------------------------------------------------------------

一、安裝軟件部分,6台機器同時進行安裝

  1.安裝 gccyum install make cmake gcc gcc-c 

  2.安裝libfastcommon 包

    上傳libfastcommon-master.zip到/usr/local/software下

    unzip libfastcommon-master.zip -d /usr/local/fast/

    cd /usr/local/fast/libfastcomon-master/ 進行安裝編譯

    ./make.sh

    ./make.sh install

    

    FastDFS主程序設置的目錄為/usr/local/lib/,所以我們需要創建/usr/lib64/下的一些核心執行程序的軟連接文件。

 

    mkdir /usr/local/lib

    ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so

    ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so

    ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

  3.安裝FastDFS系統

    cd /usr/local/software 解壓 FastDFS_v5.05.tar.gz 文件

    cd /usr/local/software

    tar -zxvf FastDFS_v5.05.tar.gz  -C /usr/local/fast

    解壓后進行安裝編譯

    cd /usr/local/fast/FastDFS

    ./make.sh

    ./make.sh install

    

 

      fastDFS的配置文件在 /etc/fdfs/ 目錄下 其中有三個文件 客戶端,storaged以及tracker文件

 

    因為FastDFS服務腳本設置的bin目錄為 /usr/local/bin下,實際安裝如上圖在 /usr/bin下,所以修改

    FastDFS配置文件中的路徑,需要修改兩個配置文件 /etc/init.d/fdfs_storaged 和 fdfs_trackerd文件

    vim打開兩個配置文件 執行 %s+/usr/local/bin+/usr/bin,其中所有節點都進行此項操作

     

    

二、進行兩個 tracker 的配置 兩個tracker服務器同時進行

  1.進入到etc目錄下的fastdfs配置文件夾中,共有三個文件

    cd /etc/fdfs 

    

  2.修改tracker配置文件,修改conf文件

    cp tracker.conf.sample tracker.conf

    vim tracker.conf

      修改屬性 base_path=/fastdfs/tracker

      store_lookup = 0

       0 輪詢上傳文件

       1 固定上傳1個group 為 store_group 指定group

       2 負載均衡上傳,誰空閑大上傳誰

   3.啟動跟蹤器

    mkdier -p /fastdfs/tracker 對應上面配置的 base_path

    cd /fastdfs/tracker/ && ll

      沒有文件 total 0

    /etc/init.d/fdfs_trackerd start 啟動命令 / stop 停止命令

    /etc/init.d/fdfs_tracker

    查看進程

      ps -ef | grep fdfs / netstat -tunp | grep fdfs

    查看log后100行數據

      tail -f n 100 /fastdfs/tracker/logs/trackerd.log

 

三、四台機器分別配置存儲節點storaged

  1.修改storage.conf文件

    cd /etc/fdfs

    cp storage.conf.sample storage.conf

    vim storage.conf

    115,116為1組 group1, 117和118為1組 group2 編輯文件內容如下:

      disabled=false  啟用配置文件

      group_name=group1  組名 第一組group1 第二組group2

      Port=23000  storage 端口號 同一個storage端口號必須相同

      base_path=/fastdfs/storage  設置log存儲路徑

      store_path_count=1  設置存儲路徑個數

      store_path0=/fastdfs/storage  設置存儲路徑

      tracker_server=tracker1IP:22122  tracker服務器ip地址和端口號

      tracker_server=tracker2IP:22122  多個tracker直接添加多個配置

      Http.server_port=8888  設置端口號 -》 nginx.conf 設置 listen 8888 對應

      同步文件到其余3個storage服務器中

      其中117,118服務器storage.cnf 修改group_name,其余不用修改

        group_name=group2

  2.創建storage存放數據目錄

    mkdir -p /fastdfs/storage

  3.啟動storage服務

    啟動服務: /etc/init.d/fdfs_storaged start

    查看日志: tail -f /fastdfs/storage/logs/storaged.log

    注意:啟動服務時候先啟動 173 174 tracker 跟蹤器節點,然后分別啟動第一組存儲節點(175,176)節點,通過日志可以知道誰是leader節點,如下圖:175節點log, tracker leader 是174節點,最后一句 75成功連接 76 服務同為 group1組

    

  4.如果174 leader 節點down了,則服務自動切換成 173 為leader 節點

  5.在usr/bin 下有好多命令,通過fdfs_monitor 命令監控當前storage存儲狀態

    

    /usr/binfdfs_monitor /etc/fdfs/storage.conf 會顯示集群所有節點信息

  6.進行服務測試,通過client 服務測試

    cd /etc/fastdfs/  進行測試

    cp client.conf.sample client.conf

    vim client.conf   修改測試客戶信息

      base_path=/fastdfs/tracker

      tracker_server=trackerIP1:22122

      tracker_server=trackerIP2:22122

    cd /usr/local

    長傳文件到storage上

      /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/xxxxx.file

      返回 group1/M00/00/00/xxxxxxxxx.file

      查看75,76文件data,都有上傳文件,77,78沒有文件

      /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/ssss.file

      返回 group2/M00/00/00/ssss.file

      查看75,76 沒有文件, 77 ,78 data目錄下有文件

      (在 store_lookup=0 設置 輪詢上傳)

------------------------------------------------------fastdfs集群部署完成--------------------------------------------------------

四.fastdfs配置ngnix

  (在storage節點上安裝)

  1.添加 fastdfs-nginx-modue模塊, 

    cd /usr/local/software

    tar -zxvf fastdfs-nginx-module_v1.16.tar.gz -C /usr/local/fast

  2.安裝fastdfs-nginx-modue之前,對配置文件進行修改

    cd fastdfs-nginx-module/src/

    vim config

    去除local文件層次 四個節點同時操作

    

  3.四個存儲節點安裝nginx依賴包,安裝nginx,添加fastdfs和nginx的整合模塊

    (1).安裝nginx依賴包

      yum install pcre

      yum install pcre-devel

      yum install zlib

      yum install zlib-devel

    (2).安裝nginx,加入fastdfs-nginx-module

      cd /usr/local/software

      tar -zxvf nginx-1.6.2.tar.gz -C /usr/local

      cd /usr/local/nginx-1.6.2/

      ./configure --add-module=/usr/local/fast/fastdfs-nginx-module/src

      make && make install

    (3).復制fastdfs-nginx-module中的配置文件到 /etc/fdfs 目錄下

      cd /usr/local/fast/fastdfs-nginx-module/src

      cp mod_fastdfs.conf /etc/fdfs/

      vim /etc/fdfs/mod_fastdfs.conf 修改連接超時時間。追蹤器路徑,url的group配置等

        第一組 175 176 和 第二組 177 178 節點修改內容 只有組名稱不同

        [115]

        connect_timeout=10

        tracker_server=trackerIP1:22122

        tracker_server=trackerIP2:22122

        storage_server_port=23000

        url_have_group_name=true

        store_path0=/fastdfs/storage

        group_name=group1 / group2  第一組(115 116)為group1 第二組(117 118)為 group2

        group_count=2

    (4).復制FastDFS中的 2 個文件到 /etc/fdfs 目錄中 所有節點

      cd /usr/local/fast/FastDFS/conf

      cp http.conf mime.types /etc/fdfs/

    (5).創建一個軟連接,在 /fastdfs/storage  文件存儲目錄下創建, 將其連接到實際存放數據的目錄

              源文件                          連接文件   M00 指向 data

      ln -s /fastdfs/storage/data /fastdfs/storage/data/M00

    (6).配置 nginx 配置文件

      cd /usr/local/nginx/conf

      vim nginx.conf  

        訪問 group [0-9] ,直接訪問 M00軟連接,執行 ngx_fastdfs_module模塊

        listen 8888為 storage http.server_port=8888 配置對應

        

    (7).檢查防火牆,啟動 nginx

      /usr/local/nginx/sbin/nginx  啟動服務

      /usr/local/nginx/sbin/nginx stop  停止服務

      /usr/local/nginx/sbin/nginx -s stop  重啟服務

    (8).可以通過 tracler 節點 client 上傳文件 然后使用http url訪問圖片了

      /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/xxxxxx.file

      http://ClientIP:8888/group1/M00/00/00/xxxxxx.file  -》ClientID 75 76 77 78

      其中 75 76 數據相同  77 78 數據相同 不能跨域訪問

 

------------------------------------------------------nginx fastdfs 整合完成--------------------------------------------------------

 五.追蹤器上提那家nginx,提供反向代理服務(使用一個ip向外部提供服務)

  1.上傳ngx_cache_purge-2.3.tar.gz 文件到 /usr/local/software 目錄下

  2.上傳tar -zxvf ngx_cache_purge-2.3.tar.gz -C /usr/local/fast 並且進行解壓

  3.cd /usr/local/fast/ ll  查看目錄下文件 新增緩存模塊

    

  4.配置nginx,添加nginx依賴包等

    yum install pcre

    yum install pcre-devel

    yum install zlib

    yum install zlib-devel

  5.解壓nginx 並且加入 ngx_cache_pureg (緩存模塊)

    cd /usr/local/software

    tar -zxvf nginx-1.6.2.tar.gz -C /usr/local

    cd /usr/local/nginx-1.6.2

    添加ngx_cache_pureg模塊,之前加入 fastdfs 模塊

      ./configure --add-module=/usr/local/fast/ngx_catch_purge-2.3

    make && make install

  6.配置nginx 負載均衡和緩存 (173 174 節點配置一致)   /usr/local/nginx/conf/nginx.conf

    (1).設置緩存信息

      

    (2).負載均衡 fdfs_group1 兩個服務對應 tracker 173,fdfs_group2 對應 tracker174

      

    (3).設定服務,對外提供統一端口 8000 ,其中 173 174 服務配置參數完全相同

      服務訪問 /group1/M00 則對應訪問 fdfs_group1 服務 對應上面圖片中 fdfs_group1 集群服務

      服務訪問 /group2/M00 則對應訪問 fdfs_group2 服務 對應上面圖片中 fdfs_group2 集群服務

      

      

      

    (4).添加創建緩存的使用文件夾 上面 3 中配置緩存路徑

      mkdir -p /fastdfs/cache/nginx/proxy_cache

      mkdir -p /fastdfs/cache/nginx/proxy_cache/tmp

    (5).開放8000 端口, 修改 /etc/sysconfig/iptables 文件 添加 8000端口號

      service iptables restart

    (6).client 上傳文件 通過 8000端口進行訪問  

      73 上傳文件  /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/xxxxx.file

      通過 tracker ip:8000 訪問文件

      http://192.168.1.173:8000/group1/M00/00/00/xxxxxx.file

        73 代理 75 76 storage 

      73 上傳文件  /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/xxxxx.file

      http://192.168.1.174:8000/group2/M00/00/00/xxxxxx.file

        74 代理 77 78 storage

    

   7.在 tracker (73 74) 安裝nginx后,可以對 group1 和 group2 進行訪問(反向代理),最后虛擬一個keepalived,虛擬出一個VIP對兩台tracker做高可用配置

    nginx + keepalived ???學習

    

    

    修改后需要把 nginx.conf 配置文件傳送到 帶有 keepalived 的節點上 (114 115)

    114,115 兩節點代理 73 74 兩節點  修改配置文件后需要重啟 nginx,

      /usr/local/nginx/sbin/nginx -s reload

    在 73 上傳文件 通過 110 (115 114 代理)進行訪問

    192.168.1.110/fastdfs/group1/M00/00/00/xxxx.file   fastdfs 對應 上面配置 location

    (可以將 173 174 結合keepalived 做出高可用 虛擬IP訪問)

   8.關閉集群步驟

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM