FastDFS分佈式文件系統的安裝及配置

分佈式文件系統(Distributed File System)是指文件系統管理的物理存儲資源不必定直接鏈接在本地節點上,而是經過計算機網絡與節點相連。分佈式文件系統的設計基於客戶機/服務器模式。一個典型的網絡可能包括多個供多用戶訪問的服務器。另外,對等特性容許一些系統扮演客戶機和服務器的雙重角色。 html

FastDFS是一個開源的輕量級分佈式文件系統,它對文件進行管理,功能包括:文件存儲、文件同步、文件訪問(文件上傳、文件下載)等,解決了大容量存儲和負載均衡的問題。特別適合以文件爲載體的在線服務,如相冊網站、視頻網站等等。 vim

一:安裝FastDFS 瀏覽器

一、首先安裝libevent。 服務器

 
  1. wget http://monkey.org/~provos/libevent-2.0.11-stable.tar.gz  
  2. tar -zxvf libevent-2.0.11-stable.tar.gz  
  3. cd libevent-2.0.11-stable  
  4. ./configure --prefix=/usr  
  5. make clean  
  6. make  
  7. make install 

二、安裝FastDFS的步驟 網絡

 
  1. wget http://fastdfs.googlecode.com/files/FastDFS_v3.03.tar.gz  
  2. tar -zxvf FastDFS_v3.03.tar.gz  
  3. cd FastDFS  
  4. vim make.sh 將#WITH_HTTPD=1 修改爲WITH_HTTPD=1 以支持 http  
  5. ./make.sh  
  6. ./make.sh install 

二:FastDFS的配置 app

一、配置及啓動Tracker Server: 負載均衡

 
  1. mkdir /home/fastdfs  
  2. vi /etc/fdfs/tracker.conf  
  3. base_path=/home/yuqing/fastdfs -> base_path=/home/fastdfs  
  4. http.server_port=8080 -> http.server_port=9090 
  5. ##include http.conf -> #include http.conf  
  6. reserved_storage_space = 4GB -> reserved_storage_space = 1GB 
 
  1. cd /usr/local/bin  
  2. fdfs_trackerd /etc/fdfs/tracker.conf 

檢查tracker是否啓動成功,能夠查看以下文件/home/fastdfs/logs/trackerd.log: dom

 
  1. [2011-10-21 14:29:44] INFO - FastDFS v3.03, base_path=/home/fastdfs, run_by_group=, run_by_user=, connect_timeout=30snetwork_timeout=60sport=22122bind_addr=, max_connections=256work_threads=4store_lookup=2store_group=, store_server=0store_path=0reserved_storage_space=1024MBdownload_server=0allow_ip_count=-1, sync_log_buff_interval=10scheck_active_interval=120sthread_stack_size=64 KB, storage_ip_changed_auto_adjust=1storage_sync_file_max_delay=86400sstorage_sync_file_max_time=300suse_trunk_file=0slot_min_size=256slot_max_size=16 MB, trunk_file_size=64 MB  
  2. [2011-10-21 14:29:44] INFO - HTTP supported: server_port=9090default_content_type=application/octet-stream, anti_steal_token=0token_ttl=0s, anti_steal_secret_key length=0, token_check_fail content_type=, token_check_fail buff length=0check_active_interval=30check_active_type=tcpcheck_active_uri=/status.html 

二、配置及啓動Storage Server: tcp

 
  1. mkdir /home/fastdfs/fdfs_storage  
  2. cd /etc/fdfs  
  3. vi storage.conf  
  4. base_path=/home/yuqing/fastdfs -> /home/fastdfs/fdfs_storage  
  5. store_path0=/home/yuqing/fastdfs -> store_path0=/home/fastdfs/fdfs_storage  
  6. group_name=group1 
  7. tracker_server=192.168.209.121:22122 -> tracker_server=173.252.200.228:22122  
  8. ##include http.conf ->#include http.conf 

接下來會出現不少mkdir data path,這是系統在建立數據目錄。 分佈式

 
  1. [2011-10-21 14:49:20] INFO - FastDFS v3.03, base_path=/home/fastdfs/fdfs_storage, store_path_count=1subdir_count_per_path=256group_name=group1run_by_group=, run_by_user=, connect_timeout=30snetwork_timeout=60sport=23000bind_addr=, client_bind=1max_connections=256work_threads=4disk_rw_separated=1disk_reader_threads=1disk_writer_threads=1disk_rw_direct=0buff_size=256KBheart_beat_interval=30sstat_report_interval=60stracker_server_count=1sync_wait_msec=50mssync_interval=0mssync_start_time=00:00, sync_end_time=23:59, write_mark_file_freq=500allow_ip_count=-1, file_distribute_path_mode=0file_distribute_rotate_count=100fsync_after_written_bytes=0sync_log_buff_interval=10ssync_binlog_buff_interval=10ssync_stat_file_interval=300sthread_stack_size=512 KB, upload_priority=10if_alias_prefix=, check_file_duplicate=0, FDHT group count=0, FDHT server count=0, FDHT key_namespace=, FDHT keep_alive=0, HTTP server port=8888, domain name=  
  2. [2011-10-21 14:49:20] INFO - HTTP supported: server_port=8888http_trunk_size=262144default_content_type=application/octet-stream, anti_steal_token=0token_ttl=0s, anti_steal_secret_key length=0, token_check_fail content_type=, token_check_fail buff length=0 
  3. [2011-10-21 14:49:42] INFO - file: storage_param_getter.c, line: 97, storage_ip_changed_auto_adjust=1store_path=0reserved_storage_space=1024 MB, use_trunk_file=0slot_min_size=0slot_max_size=16 MB, trunk_file_size=64 MB  
  4. [2011-10-21 14:49:44] INFO - file: tracker_client_thread.c, line: 304, successfully connect to tracker server 173.252.200.228:22122, as a tracker client, my ip is 173.252.200.228  
  5. [2011-10-21 14:50:14] INFO - file: tracker_client_thread.c, line: 1100, tracker server 173.252.200.228:22122, set tracker leader: 173.252.200.228:22122 

三:測試及使用FastDFS

一、FastDFS之配置client:

 
  1. vi /etc/fdfs/client.conf  
  2. base_path=/home/yuqing/fastdfs-> base_path=/home/fastdfs  
  3. tracker_server=192.168.209.121:22122 -> tracker_server=173.252.200.228:22122  
  4. http.tracker_server_port=8080 ->http.tracker_server_port=9090 
  5. ##include http.conf ->#include http.conf 

二、測試上傳文件:

 
  1. cd ~  
  2. fdfs_test /etc/fdfs/client.conf upload FastDFS_v3.03.tar.gz 

執行成功後會出現以下提示:

 
  1. This is FastDFS client test program v3.03  
  2.  
  3. Copyright (C) 2008, Happy Fish / YuQing  
  4.  
  5. FastDFS may be copied only under the terms of the GNU General  
  6. Public License V3, which may be found in the FastDFS source kit.  
  7. Please visit the FastDFS Home Page http://www.csource.org/  
  8. for more detail.  
  9.  
  10. [2011-10-21 15:14:59] INFO - base_path=/home/fastdfs, connect_timeout=30network_timeout=60tracker_server_count=1anti_steal_token=0, anti_steal_secret_key length=0 
  11.  
  12. tracker_query_storage_store_list_without_group:  
  13. server 1. group_name=group1ip_addr=173.252.200.228, port=23000 
  14.  
  15. group_name=group1ip_addr=173.252.200.228, port=23000 
  16. storage_upload_by_filename  
  17. group_name=group1remote_filename=M00/00/00/rfzI5E6hG_O5wNKxAAVAc72y1Jc.tar.gz  
  18. source ip address: 173.252.200.228  
  19. file timestamp=2011-10-21 15:14:59  
  20. file size=344179 
  21. file crc32=3182613655 
  22. file url: http://173.252.200.228:9090/group1/M00/00/00/rfzI5E6hG_O5wNKxAAVAc72y1Jc.tar.gz  
  23. storage_upload_slave_by_filename  
  24. group_name=group1remote_filename=M00/00/00/rfzI5E6hG_O5wNKxAAVAc72y1Jc_big.tar.gz  
  25. source ip address: 173.252.200.228  
  26. file timestamp=2011-10-21 15:14:59  
  27. file size=344179 
  28. file crc32=3182613655 
  29. file url: http://173.252.200.228:9090/group1/M00/00/00/rfzI5E6hG_O5wNKxAAVAc72y1Jc_big.tar.gz 

三、測試下載文件

在瀏覽器中,輸入上圖中的url地址,tracker server會自動重定向到存儲文件的storage server,文件下載成功。至此,已經成功搭建了FastDFS,編寫你本身的client來進行訪問吧!

相關文章
相關標籤/搜索