日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Nginx&&FastDFS實(shí)現(xiàn)分布式文件服務(wù)器

nginx && FastDFS實(shí)現(xiàn)分布式文件服務(wù)器

作者:微笑面對(duì)生活 2019-01-28 11:03:03

服務(wù)器

分布式 FastDFS是一個(gè)開源的輕量級(jí)分布式文件系統(tǒng),它對(duì)文件進(jìn)行管理,功能包括:文件存儲(chǔ)、文件同步、文件訪問(文件上傳、文件下載)等,解決了大容量存儲(chǔ)和負(fù)載均衡的問題。

 FastDFS是一個(gè)開源的輕量級(jí)分布式文件系統(tǒng),它對(duì)文件進(jìn)行管理,功能包括:文件存儲(chǔ)、文件同步、文件訪問(文件上傳、文件下載)等,解決了大容量存儲(chǔ)和負(fù)載均衡的問題。特別適合以文件為載體的在線服務(wù),如相冊(cè)網(wǎng)站、視頻網(wǎng)站等等。

FastDFS為互聯(lián)網(wǎng)量身定制,充分考慮了冗余備份、負(fù)載均衡、線性擴(kuò)容等機(jī)制,并注重高可用、高性能等指標(biāo),使用FastDFS很容易搭建一套高性能的文件服務(wù)器集群提供文件上傳、下載等服務(wù)。

1. 下載安裝 libfastcommon

libfastcommon是從 FastDFS 和 FastDHT 中提取出來的公共 C 函數(shù)庫,基礎(chǔ)環(huán)境,安裝即可 。

1.1 下載:

  
 
 
 
  1. wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz 

1.2 解壓:

  
 
 
 
  1. tar -zxvf V1.0.7.tar.gz 

1.3 安裝:

  
 
 
 
  1. cd libfastcommon-1.0.7 
  2.  
  3. ./make.sh 
  4.  
  5. ./make.sh install 

1.4 復(fù)制文件:

解決FastDFS中l(wèi)ib配置文件路徑問題。

  
 
 
 
  1. cp/usr/lib64/libfastcommon.so/usr/local/lib/libfastcommon.so  
  2. cp/usr/lib64/libfastcommon.so/usr/lib/libfastcommon.so 

2. 下載安裝FastDFS

2.1 下載:

  
 
 
 
  1. wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz 

2.2 解壓:

  
 
 
 
  1. tar -zxvf V5.05.tar.gz 

2.3 安裝:

  
 
 
 
  1. cd fastdfs-5.05 
  2. ./make.sh   
  3. ./make.sh install 

安裝完成后,默認(rèn)配置文件目錄為: /etc/fdfs/,默認(rèn)命令放在 /usr/bin/中,以 fdfs_開頭。

3. 配置FastDFS

首先將配置文件復(fù)制到 /etc/fdfs目錄下。

  
 
 
 
  1. cd/home/fantj/download/fastdfs-5.05/conf 
  2.  
  3. cp*/etc/fdfs/ 
  4.  
  5. 如下: 
  6.  
  7. [root@s168 conf]#cd/etc/fdfs/ 
  8.  
  9. [root@s168 fdfs]#ls 
  10.  
  11. anti-steal.jpg  client.conf.sample  mime.types    storage.conf.sample  tracker.conf 
  12.  
  13. client.conf     http.conf           storage.conf  storage_ids.conf     tracker.conf.sample 

3.1. 配置tracker.conf

FastDFS跟蹤器

修改如下配置:

  
 
 
 
  1. #Tracker 數(shù)據(jù)和日志目錄地址(根目錄必須存在,子目錄會(huì)自動(dòng)創(chuàng)建)  
  2. base_path=/fastdfs/tracker  
  3. port=22122 

3.1.1 創(chuàng)建該目錄:

mkdir-p/fastdfs/tracker3.1.2 啟動(dòng)/關(guān)閉:

fdfs_trackerd/etc/fdfs/tracker.conf start/stop默認(rèn)使用 /etc/fdfs下的配置文件,如有指定配置可在后面追加參數(shù)。如有防火墻,開放防火墻規(guī)則。

3.1.3 設(shè)置開機(jī)啟動(dòng):

  
 
 
 
  1. # systemctl enable fdfs_trackerd 
  2.  
  3.  
  4. 或者: 
  5.  
  6. # vim /etc/rc.d/rc.local 
  7.  
  8. 加入配置: 
  9.  
  10. /etc/init.d/fdfs_trackerd start 

3.1.4 tracker server 目錄及文件結(jié)構(gòu) :

Tracker服務(wù)啟動(dòng)成功后,會(huì)在base_path下創(chuàng)建data、logs兩個(gè)目錄。目錄結(jié)構(gòu)如下:

  
 
 
 
  1. ${base_path} 
  2.  
  3.  |__data 
  4.  
  5.  | |__storage_groups.dat:存儲(chǔ)分組信息 
  6.  
  7.  | |__storage_servers.dat:存儲(chǔ)服務(wù)器列表 
  8.  
  9.  |__logs 
  10.  
  11.  | |__trackerd.log:tracker server日志文件 

3.2. 配置storage

下面只是基本配置,如有更細(xì)微的需要,則請(qǐng)查看所有配置。

  
 
 
 
  1. group_name=fantj    #組名 
  2.  
  3. base_path=/fastdfs/storage  #日志目錄 
  4.  
  5. store_path0=/fastdfs/storage    #存儲(chǔ)目錄 
  6.  
  7. tracker_server=192.168.27.168:22122   #tracker節(jié)點(diǎn) 
  8.  
  9. http.server_port=8888   #端口 

3.2.1 啟動(dòng)

  
 
 
 
  1. 可以用這種方式啟動(dòng) 
  2.  
  3. fdfs_storaged/etc/fdfs/storage.conf start 
  4.  
  5. 也可以用這種方式,后面都用這種 
  6.  
  7. # service fdfs_storaged start 

3.2.2 檢查進(jìn)程

netstat-unltp|grep fdfs3.2.3 Storage 開機(jī)啟動(dòng)

  
 
 
 
  1. # systemctl enable fdfs_storaged  
  2.  
  3. 或者: 
  4.  
  5. # vim /etc/rc.d/rc.local 
  6.  
  7. 加入配置: 
  8.  
  9. /etc/init.d/fdfs_storaged start 

3.2.4 Storage 目錄

Storage 啟動(dòng)成功后,在base_path 下創(chuàng)建了data、logs目錄,記錄著 Storage Server 的信息。

在 store_path0 目錄下,創(chuàng)建了N*N個(gè)子目錄:

  
 
 
 
  1. [root@s168 data]# pwd 
  2.  
  3. /fastdfs/storage/data 
  4.  
  5. [root@s168 data]# ls 
  6.  
  7. 00  07  0E  15  1C  23  2A  31  38  3F  46  4D  54  5B  62  69  70  77  7E  85  8C  93  9A  A1  A8  AF  B6  BD  C4  CB  D2  D9  E0  E7  EE  F5  FC 
  8.  
  9. 01  08  0F  16  1D  24  2B  32  39  40  47  4E  55  5C  63  6A  71  78  7F  86  8D  94  9B  A2  A9  B0  B7  BE  C5  CC  D3  DA  E1  E8  EF  F6  FD 
  10.  
  11. 02  09  10  17  1E  25  2C  33  3A  41  48  4F  56  5D  64  6B  72  79  80  87  8E  95  9C  A3  AA  B1  B8  BF  C6  CD  D4  DB  E2  E9  F0  F7  fdfs_storaged.pid 
  12.  
  13. 03  0A  11  18  1F  26  2D  34  3B  42  49  50  57  5E  65  6C  73  7A  81  88  8F  96  9D  A4  AB  B2  B9  C0  C7  CE  D5  DC  E3  EA  F1  F8  FE 
  14.  
  15. 04  0B  12  19  20  27  2E  35  3C  43  4A  51  58  5F  66  6D  74  7B  82  89  90  97  9E  A5  AC  B3  BA  C1  C8  CF  D6  DD  E4  EB  F2  F9  FF 
  16.  
  17. 05  0C  13  1A  21  28  2F  36  3D  44  4B  52  59  60  67  6E  75  7C  83  8A  91  98  9F  A6  AD  B4  BB  C2  C9  D0  D7  DE  E5  EC  F3  FA  storage_stat.dat 
  18.  
  19. 06  0D  14  1B  22  29  30  37  3E  45  4C  53  5A  61  68  6F  76  7D  84  8B  92  99  A0  A7  AE  B5  BC  C3  CA  D1  D8  DF  E6  ED  F4  FB  sync 

3.3. 配置client

  
 
 
 
  1. vim client.conf 
  2.  
  3. tracker_server=192.168.27.168:22122 #tracker節(jié)點(diǎn) 
  4.  
  5. base_path=/fastdfs/client  #日志路徑 

3.4. 本地圖片上傳測(cè)試

  
 
 
 
  1. [root@s168 fdfs]#fdfs_upload_file/etc/fdfs/client.conf/home/test.png 
  2. fantj/M00/00/00/wKgbqFu7T7iAJh7lAABDYbhAMC4812.png 
  3. 或者: 
  4. [root@s168 fdfs]#fdfs_test/etc/fdfs/client.conf/home/test.png 
  5.  
  6. ThisisFastDFSclient test program v5.05 
  7. Copyright(C)2008,HappyFish/YuQing 
  8. FastDFSmay be copied only under the terms of the GNUGeneral 
  9.  
  10. PublicLicenseV3,which may be foundintheFastDFSsource kit. 
  11.  
  12. Pleasevisit theFastDFSHomePagehttp://www.csource.org/ 
  13.  
  14. formore detail. 
  15.  
  16. [2018-5-0820:41:15]DEBUG-base_path=/fastdfs/client,connect_timeout=30,network_timeout=60,tracker_server_count=1,anti_steal_token=0,anti_steal_secret_key length=0,use_connection_pool=0,g_connection_pool_max_idle_time=3600s,use_storage_id=0,storage server id count:0 
  17. invalid operation:/home/test.png 

4. 安裝nginx

之前有寫過nginx的安裝文章,在這里不重復(fù)。沒有安裝過的請(qǐng)點(diǎn)擊:

點(diǎn)擊查看我的文章:nginx安裝

5. FastDFS 配置 Nginx 模塊

fastdfs-nginx-module 可以重定向文件鏈接到源服務(wù)器取文件,避免客戶端由于復(fù)制延遲導(dǎo)致的文件無法訪問錯(cuò)誤。

5.1 下載安裝

  
 
 
 
  1. wget https://github.com/happyfish100/fastdfs-nginx-module/archive/5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip 
  2.  
  3. unzip5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip 
  4.  
  5. mv fastdfs-nginx-module-5e5f3566bbfa57418b5506aaefbe107a42c9fcb1/fastdfs-nginx-module 

5.2 配置Nginx

  
 
 
 
  1. ngix-s stop 
  2.  
  3. cd nginx-1.12.1 
  4.  
  5. #添加模塊 
  6.  
  7. ./configure--add-module=../fastdfs-nginx-module/src 
  8.  
  9. (如果你是yum安裝的nginx,我暫時(shí)還沒找到解決辦法,目前的方法是nginx-V查看nginx版本,然后下載一個(gè)同版本的nginx, 
  10.  
  11. 然后將/etc/nginx下數(shù)據(jù)整體備份,make&&make install完成后再做恢復(fù)) 
  12.  
  13. #重新編譯和安裝 
  14.  
  15. make 
  16.  
  17. make install 
  18.  
  19. #拷貝配置文件 
  20.  
  21. [root@s168 src]#pwd 
  22.  
  23. /home/fantj/download/fastdfs-nginx-module/src 
  24.  
  25. [root@s168 src]#cp mod_fastdfs.conf/etc/fdfs/ 

配置 /etc/fdfs/mod_fastdfs.conf文件

  
 
 
 
  1. #配置 /etc/fdfs/mod_fastdfs.conf文件 
  2.  
  3. base_path=/fastdfs/tmp  #日志目錄 
  4.  
  5. store_path0=/fastdfs/storage 
  6.  
  7. tracker_server=192.168.27.168:22122 
  8.  
  9. # the group name of the local storage server 
  10.  
  11. group_name=fantj  #和storage的groupname一一對(duì)應(yīng) 
  12.  
  13. url_have_group_name=true #開啟url中附帶group_name 

配置nginx

  
 
 
 
  1. # 配置nginx 
  2.  
  3. [root@s168 fdfs]#cd/usr/local/nginx/conf/ 
  4.  
  5. [root@s168 conf]#vim nginx.conf 
  6.  
  7. #添加如下配置 
  8.  
  9. server{ 
  10.  
  11.    listen88; 
  12.  
  13.    server_name192.168.27.168; 
  14.  
  15.    location/fantj/M00{ 
  16.  
  17.            ngx_fastdfs_module; 
  18.  
  19.    } 
  20.  
  21.  
  22.  
  23. # 進(jìn)入/usr/local/nginx/sbin目錄執(zhí)行配置檢測(cè) 
  24.  
  25. [root@s168 sbin]#./nginx  -t 
  26.  
  27. ngx_http_fastdfs_set pid=6431 
  28.  
  29. nginx:the configuration file/usr/local/nginx/conf/nginx.conf syntaxisok 
  30.  
  31. nginx:configuration file/usr/local/nginx/conf/nginx.conf testissuccessful 
  32.  
  33. # 啟動(dòng)nginx 
  34.  
  35. [root@s168 sbin]#./nginx 
  36.  
  37. ngx_http_fastdfs_set pid=6436 

服務(wù)重啟并測(cè)試

  
 
 
 
  1. [root@s168 fdfs]#fdfs_trackerd tracker.conf restart 
  2.  
  3. waitingforpid[1202]exit... 
  4.  
  5. starting... 
  6.  
  7. [root@s168 fdfs]#fdfs_storaged storage.conf restart 
  8.  
  9. waitingforpid[1211]exit... 
  10.  
  11. starting... 
  12.  
  13. [root@s168 fdfs]#/usr/local/nginx/sbin/nginx-s reload 
  14.  
  15. ngx_http_fastdfs_set pid=6463 

6. 配置成功測(cè)試

 

 


分享題目:Nginx&&FastDFS實(shí)現(xiàn)分布式文件服務(wù)器
分享地址:http://www.5511xx.com/article/cdsjgjo.html