1. 程式人生 > >FastDHT安裝部署文件

FastDHT安裝部署文件

本文轉自http://blog.csdn.net/baidu_29609961/article/details/77692774,其中有一條未講到,就是將配置檔案需要複製到storaged伺服器上面。自己留存以備學習。

一、      安裝

以下三個檔案可到對應官網下載最新版本。隨文件也提供了對應的軟體安裝包,可以上傳至圖片伺服器上(如:/opt/tools/目錄下)進行安裝操作。

下載FastDHT

已經上傳至CSDN資源,搜尋:FastDHT安裝程式

安裝BerkeleyDB

        解壓db-6.2.32.tar.gz
        cd /opt/tools/
        tar xvzf db-6.2.32.tar.gz
進入db-6.2.32目錄
        cd /opt/tools/db-6.2.32/build_unix
執行以下命令(make時間較長,請耐心等待)
        ../dist/configure --prefix=/usr/local/db-6.2.32
        make
        make install
安裝完db,會在/usr/local目錄下生成db-6.2.32/

安裝FastDHT

fastdht-master原始碼解壓到 /opt/tools:
         cd /opt/tools
        unzip fastdht.zip
編譯之前需要先修改make.sh
檔案。
        cd fastdht-master/
        vim make.sh
        CFLAGS=-Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -I/usr/local/db-6.2.32/include/ -L/usr/local/db-6.2.32/lib/這行裡面加上斜體藍色字部分。然後,進入/opt/tools/fastdht-master原始碼目錄下,執行
        ./make.sh
        然後執行
        ./make.sh install
        最後會在/usr/local/bin生成安裝後的檔案,在/etc/fdht
下生成檔案如下:
        cd /usr/local/bin/
        cd /etc/fdht/
               

配置FastDHT

先確認目錄/data/fastdht/已建立,如果沒有建立,執行以下命令建立目錄:

mkdir -p /data/fastdht/

配置fdht_client.conf檔案

cd /etc/fdht/
vim fdht_client.conf
base_path=/data/fastdht
keep_alive=1
#include /etc/fdht/fdht_servers.conf

配置fdht_servers.conf檔案

vim /etc/fdht/fdht_servers.conf
group_count = 1
group0 = 192.168.1.81:11411

配置fdhtd.conf檔案

vim /etc/fdht/fdhtd.conf
port=11411
base_path=/data/fastdht
cache_size = 64MB
#include /etc/fdht/fdht_servers.conf  -> (本行前有#表示開啟,如果想關閉此選項,則應該為##開頭)

配置storaged.conf檔案

vim /etc/fdfs/storage.conf     (需要提前將配置檔案複製至該伺服器)
#是否檢測上傳檔案已經存在。如果已經存在,則建立一個索引連結以節省磁碟空間 
check_file_duplicate=1
#當上個引數設定為1時 , 在FastDHT中的名稱空間
key_namespace=FastDFS
#長連線配置選項,如果為0則為短連線 1為長連線 
keep_alive=1
#此處特別需要注意配置
#include /etc/fdht/fdht_servers.conf

啟動

或fdhtd /etc/fdht/fdhtd.conf 
fdhtd /etc/fdht/fdhtd.conf restart

可能遇到問題:

fdhtd/etc/fdht/fdhtd.conf

fdhtd: error whileloading shared libraries: libdb-6.2.so: cannot open shared object file: No suchfile or directory

解決辦法:

複製libdb-6.2.so檔案到/usr/lib/目錄,命令如下:

cp /usr/local/db-6.2.32/lib/libdb-6.2.so /usr/lib/
在/etc/ld.so.conf檔案末尾中加入include /usr/local/lib這一行,命令如下:
vim /etc/ld.so.conf

將/etc/ld.so.conf存檔後,還要執行/sbin/ldconfig 來更新一下才會生效。

/sbin/ldconfig

通過命令啟動fastdht,命令如下:

fdhtd /etc/fdht/fdhtd.conf

檢視服務是否執行,命令如下:

ss -lntup|grep 11411

上傳圖片實驗是否成功。首先保證待上傳的圖片(/opt/tools/abc.JPEG)存在,然後執行上傳操作,看圖片是否上傳成功,命令如下:

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /home/3.jpg