FastDFS+Nginx安裝配置

FastDFS+Nginx安裝配置

1.系統環境

最小化安裝的RedHat 6.4

fastdfs版本:FastDFS_v3.06.tar.gz

nginx版本:nginx-1.0.11.tar.gz

fastdfs-nginx-module版本:fastdfs-nginx-module_v1.10.tar.gz

tracker1:192.168.199.126

tracker2:192.168.199.127

storage1:192.168.199.128

storage2: 192.168.199.129

 

2.安裝依賴包

yumgroupinstall -y "Development Tools"

yuminstall -y libevent-devel pcre-devel zlib-devel

 

3.安裝配置

1.)在所有機器上安裝fastdfs

mkdir –p/data/fastdfs #爲以後存放日誌和數據做準備

tar xvzfFastDFS_v3.06.tar.gz

cd FastDFS

vimmake.sh

#將找到下面兩行,將前邊的"#"去掉,目的是安裝httpdfdfs_trackerd/fdfs_storaged服務

    WITH_HTTPD=1

    WITH_LINUX_SERVICE=1

./make.sh

./make.shinstall

#如果遇到報錯

/usr/bin/ld: cannot find -levent

collect2: ld returned 1 exit status

make: *** [fdfs_monitor] Error 1

則是缺少libevent-devel造成,需要安裝libevent-devel

安裝方法:

rpm -ivhlibevent-doc-1.4.13-4.el6.noarch.rpm libevent-headers-1.4.13-4.el6.noarch.rpmlibevent-devel-1.4.13-4.el6.x86_64.rpm

 

2.)tracker上修改tracker.conf配置文件

vim /etc/fdfs/tracker.conf

# 配置datalog的存放路徑,該路徑如果不存在,需要自己創建

    base_path=/data/fastdfs

   

   # 找到下面這行包含兩個"##"

    ##include http.conf

    # 去掉一個"#"

    #include http.conf

tracker上修改client.conf配置文件

vim/etc/fdfs/client.conf

#修改base_path

base_path=/data/fastdfs

#修改tracker地址,多個tracker寫成多行,IP地址後面需要加端口

tracker_server=192.168.199.126:22122

tracker_server=192.168.199.127:22122

3.)storage上修改storage.conf配置文件

vim/etc/fdfs/storage.conf

#修改base_path

base_path=/data/fastdfs

#修改store_path0,此爲存放數據路徑

store_path0=/data/fastdfs

#修改tracker地址,多個tracker寫成多行,IP地址後面需要加端口

tracker_server=192.168.199.126:22122

tracker_server=192.168.199.127:22122

# 關閉內置的webserver

http.disabled=true

# webserver的端口改成80

http.server_port=80

# 此臺storage1所屬的服務器組名,同組內storage數據完全相同

group_name=group1

4.)storage上安裝nginxfastdfs-nginx-module

tar xvzffastdfs-nginx-module_v1.10.tar.gz

tar xvzfnginx-1.0.11.tar.gz

cdnginx-1.0.11

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

make&& make install

cp/opt/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

vim/etc/fdfs/mod_fastdfs.conf

# 放置log的目錄

base_path=/home/storage1/fastdfs

# tracker1ip和端口,此處可以寫多個trackerserver,每行一個

tracker_server=192.168.199.126:22122

tracker_server=192.168.199.127:22122

# 此臺storageserver所屬的服務組名

group_name=group1

# URL中包含group名稱,很重要

url_have_group_name = true

# 放置文件的目錄

store_path0=/data/fastdfs

==============================================

nginx配置文件中添加如下信息

vim/usr/local/nginx/conf/nginx.conf

    location /group1/M00 {

            root /home/storage1/fastdfs/data;

            ngx_fastdfs_module;

}

 

創建M00目錄的軟連接

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

5.)啓動與監控:

tracker啓動:確認8080,22122端口已經監聽

/etc/init.d/fdfs_trackerdstart

tracker上面監控:

fdfs_monitor/etc/fdfs/client.conf

storage啓動:確認80,23000端口已經監聽

/etc/init.d/fdfs_storagedstart

storage上面監控:

fdfs_monitor/etc/fdfs/storage.conf

nginx啓動:

/usr/local/nginx/sbin/nginx

4.在tracker上測試

echo'hello,this is my first fastdfs test' >test.txt

/usr/local/bin/fdfs_test/etc/fdfs/client.conf upload test.txt

This isFastDFS client test program v3.06

 

Copyright(C) 2008, Happy Fish / YuQing

 

FastDFSmay be copied only under the terms of the GNU General

PublicLicense V3, which may be found in the FastDFS source kit.

Pleasevisit the FastDFS Home Page http://www.csource.org/

for moredetail.

 

[2015-08-1212:59:22] INFO - base_path=/data/fastdfs, connect_timeout=30,network_timeout=60, tracker_server_count=2, anti_steal_token=0,anti_steal_secret_key length=0

 

tracker_query_storage_store_list_without_group:

        server 1. group_name=group1, ip_addr=10.10.212.135,port=23000

        server 2. group_name=group1,ip_addr=192.168.199.129, port=23000

 

group_name=group1,ip_addr=192.168.199.129, port=23000

storage_upload_by_filename

group_name=group1,remote_filename=M00/00/00/wKjHgVXK0qqKJ6VhAAAAJP1L3N8706.txt

source ipaddress: 192.168.199.129

filetimestamp=2015-08-12 12:59:22

filesize=36

filecrc32=4249607391

file url:http://10.10.212.134:8080/group1/M00/00/00/wKjHgVXK0qqKJ6VhAAAAJP1L3N8706.txt

storage_upload_slave_by_filename

group_name=group1,remote_filename=M00/00/00/wKjHgVXK0qqKJ6VhAAAAJP1L3N8706_big.txt

source ipaddress: 192.168.199.129

filetimestamp=2015-08-12 12:59:22

filesize=36

filecrc32=4249607391

file url: http://10.10.212.134:8080/group1/M00/00/00/wKjHgVXK0qqKJ6VhAAAAJP1L3N8706_big.txt

使用瀏覽器打開上面任一地址地址,如果看到文件內容,說明配置成功!

5.FAQ

1.)查看當前監控信息,在tracker上執行fdfs_monitor/etc/fdfs/client.conf和在storage上執行fdfs_monitor/etc/fdfs/storage.conf得到的結果一樣。

[root@localhosttmp]# fdfs_monitor /etc/fdfs/client.conf                           

[2015-08-1213:08:34] INFO - base_path=/data/fastdfs, connect_timeout=30,network_timeout=60, tracker_server_count=2, anti_steal_token=0,anti_steal_secret_key length=0

 

server_count=2,server_index=0

 

trackerserver is 10.10.212.134:22122

 

groupcount: 1

 

Group 1:

group name= group1

disk freespace = 36 GB

trunk freespace = 0 GB

storageserver count = 2

activeserver count = 2

storageserver port = 23000

storageHTTP port = 80

store pathcount = 1

subdircount per path = 256

currentwrite server index = 1

currenttrunk file id = 0

 

        Storage 1:

                ip_addr = 10.10.212.135  ACTIVE

                http domain =

                version = 3.06

                join time = 2015-05-20 13:44:32

                up time = 2015-08-12 10:35:12

                total storage = 45GB

                free storage = 36GB

                upload priority = 10

                store_path_count = 1

                subdir_count_per_path = 256

                storage_port = 23000

                storage_http_port = 80

                current_write_path = 0

                source ip_addr =

                if_trunk_server= 0

                total_upload_count = 9283

                success_upload_count = 9283

                total_append_count = 0

                success_append_count = 0

                total_set_meta_count = 1688

                success_set_meta_count = 1688

                total_delete_count = 132

                success_delete_count = 132

                total_download_count = 4539

                success_download_count = 4539

                total_get_meta_count = 0

                success_get_meta_count = 0

                total_create_link_count = 0

                success_create_link_count = 0

                total_delete_link_count = 0

                success_delete_link_count = 0

                total_upload_bytes = 2474396113

                success_upload_bytes =2474396113

                total_append_bytes = 0

                success_append_bytes = 0

                stotal_download_bytes =377438594

                success_download_bytes =377438594

                total_sync_in_bytes = 67059

                success_sync_in_bytes = 67059

                total_sync_out_bytes =2435190011

                success_sync_out_bytes =2435190011

                total_file_open_count = 13836

                success_file_open_count = 13836

                total_file_read_count = 5176

                success_file_read_count = 5176

                total_file_write_count = 16999

                success_file_write_count =16999

                last_heart_beat_time =2015-08-12 13:05:44

                last_source_update = 2015-08-1211:37:09

                last_sync_update = 2015-08-1213:00:26

                last_synced_timestamp = 2015-08-1212:59:22 (0s delay)

        Storage 2:

                ip_addr = 192.168.199.129  ACTIVE

                http domain =

                version = 3.06

                join time = 2015-08-12 10:11:25

                up time = 2015-08-12 10:30:23

                total storage = 44GB

                free storage = 37GB

                upload priority = 10

                store_path_count = 1

                subdir_count_per_path = 256

                storage_port = 23000

                storage_http_port = 80

                current_write_path = 0

                source ip_addr = 10.10.212.135

                if_trunk_server= 0

                total_upload_count = 4

                success_upload_count = 4

                total_append_count = 0

                success_append_count = 0

                total_set_meta_count = 3

                success_set_meta_count = 3

                total_delete_count = 0

                success_delete_count = 0

                total_download_count = 3

                success_download_count = 3

                total_get_meta_count = 0

                success_get_meta_count = 0

                total_create_link_count = 0

                success_create_link_count = 0

                total_delete_link_count = 0

                success_delete_link_count = 0

                total_upload_bytes = 66850

                success_upload_bytes = 66850

                total_append_bytes = 0

                success_append_bytes = 0

                stotal_download_bytes = 319240

                success_download_bytes = 319240

                total_sync_in_bytes =2435190011

                success_sync_in_bytes =2435190011

                total_sync_out_bytes = 67059

                success_sync_out_bytes = 67059

                total_file_open_count = 10721

                success_file_open_count = 10721

                total_file_read_count = 3

                success_file_read_count = 3

                total_file_write_count = 18311

                success_file_write_count =18311

                last_heart_beat_time =2015-08-12 13:05:56

                last_source_update = 2015-08-1212:59:22

                last_sync_update = 2015-08-1211:36:11

                last_synced_timestamp =2015-08-12 11:37:09 (0s delay)

#多個節點查看當前是否爲激活狀態和同步延時時間,

2.)增加storage節點,配置與其它節點相同,安裝fastdfsnginx ,把配置文件storage.confmod_fastdfs.conf copy/etc/fdfs/即可,添加完成後重啓trackerstorage,再用monitor查看同步信息及節點當前狀態。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章