FastDFS Tracker端配置檔案詳解及啟動注意事項
阿新 • • 發佈:2019-01-26
今天進行了FastDFS的tracker端的配置,程式碼傳送如下:
Java程式碼
附件中有儲存好的traker.conf檔案,需要的可以進行下載
配置完成之後,執行
Java程式碼
tracker端就可以執行成功了。
可能出現的問題有兩個
1.base_path設定的目錄不存在,如果報這個錯誤,需要按base_path的設定建立一個目錄
2.找不到libevent-2.0.so.5
如果找不到這個,請確認安裝時的安裝位置
一般這個庫會安裝到/usr/local/lib中
而我們的fdfs_trackerd會到/usr/lib中去查詢,所以使用
Java程式碼
將庫載入到/usr/lib中就可以了
Java程式碼
- # is this config file disabled
- # falsefor enabled
- # truefor disabled
- disabled=false
- #當前配置是否不可用false可用,true不可用
- # bind an address of this host
- # empty for bind all addresses of this host
- bind_addr=
- #是否繫結IP如果一個伺服器上有多個IP則設定哪個IP可用,如果不設定則不限制
- # the tracker server port
- port=22122
- #埠
- # connect timeout in seconds
- # default value is 30s
- connect_timeout=30
- #針對socket套接字函式connect的連線超時時間設定
- # network timeout in seconds
- # default value is 30s
- network_timeout=60
- #設定網路超時,單位秒,傳送或接收資料時,如果在超時時間之後依然不能進行,則本次網路通訊失敗
- # the base path to store data and log files
- base_path=/home/fdfs
- #配置儲存根目錄地址,這個目錄必須存在,子目錄將自動建立
- # max concurrent connections this
- max_connections=256
- #最大連線數
- # work thread count, should <= max_connections
- # default value is 4
- # since V2.00
- work_threads=1
- #工作執行緒數,通常設定為CPU數量
- # the method of selecting group to upload files
- # 0: round robin
- # 1: specify group
- # 2: load balance, select the max free space group to upload file
- store_lookup=2
- #上傳組(卷)的方式:0輪詢,1:指定,2:負載平衡(剩餘空間最大選擇)
- # which group to upload file
- # when store_lookup set to 1, must set store_group to the group name
- store_group=group2
- #如果上一引數選擇1方式,即制定祖名,當前引數用來設定指定的組,如果選擇其他方式,當前引數無效
- # which storage server to upload file
- # 0: round robin (default)
- # 1: the first server order by ip address
- # 2: the first server order by priority (the minimal)
- store_server=0
- #同組推送方式0.輪詢方式,1.根據ip地址進行排序選擇第一個伺服器,2.根據優先順序進行排序(優先順序由storeServer的配置檔案中upload_priority屬性設定)
- # which path(means disk or mount point) of the storage server to upload file
- # 0: round robin
- # 2: load balance, select the max free space path to upload file
- store_path=0
- #選擇哪個檔案目錄進行上傳(一個StroeServer上面可以有多個base_path)0.輪詢,2.剩餘空間最大
- # which storage server to download file
- # 0: round robin (default)
- # 1: the source storage server which the current file uploaded to
- download_server=0
- #選擇哪個storeServer最為下載伺服器,0.輪詢,1.哪個為源則哪個下載
- # reserved storage space for system or other applications.
- # if the free(available) space of any stoarge server in
- # a group <= reserved_storage_space,
- # no file can be uploaded to this group.
- # bytes unit can be one of follows:
- ### G or g for gigabyte(GB)
- ### M or m for megabyte(MB)
- ### K or k for kilobyte(KB)
- ### no unit forbyte(B)
- ### XX.XX% as ratio such as reserved_storage_space = 10%
- reserved_storage_space = 10%
- #系統保留空間大小,用來保證系統和其他應用的正常執行
- #standard log level as syslog, case insensitive, value list:
- ### emerg for emergency
- ### alert
- ### crit for critical
- ### error
- ### warn for warning
- ### notice
- ### info
- ### debug
- log_level=info
- #日誌級別
- #unix group name to run this program,
- #not set (empty) means run by the group of current user
- run_by_group=
- #使用那個系統使用者組執行FastDFS,預設為啟動執行緒的使用者組
- #unix username to run this program,
- #not set (empty) means run by current user
- run_by_user=
- #使用那個系統使用者執行FastDFS。預設為啟動執行緒的使用者
- # allow_hosts can ocur more than once, host can be hostname or ip address,
- # "*" means match all ip addresses, can use range like this: 10.0.1.[1-15,20] or
- # host[01-08,20-25].domain.com, for example:
- # allow_hosts=10.0.1.[1-15,20]
- # allow_hosts=host[01-08,20-25].domain.com
- allow_hosts=*
- #設定可以連線當前tracker的IP範圍,包括client和store_server
- # sync log buff to disk every interval seconds
- # default value is 10 seconds
- sync_log_buff_interval = 10
- #同步或重新整理日誌到本地硬碟的時間間隔,單位:秒
- # check storage server alive interval seconds
- check_active_interval = 120
- #檢測storage_server的存活狀態時間間隔,單位:秒,本引數要大於storage server的心跳包傳送間隔一般為2-3倍
- # thread stack size, should >= 64KB
- # default value is 64KB
- thread_stack_size = 64KB
- #tracker server的執行緒棧大小,要求大於等於64K
- # auto adjust when the ip address of the storage server changed
- # default value is true
- storage_ip_changed_auto_adjust = true
- #當storage server的IP發生變化時叢集是否自動調整。只有在storage server程序重啟時才能完成自動調整
- # storage sync file max delay seconds
- # default value is 86400 seconds (one day)
- # since V2.00
- storage_sync_file_max_delay = 86400
- #儲存伺服器之間同步檔案的最大延遲時間,預設為1天,可以根據實際情況進行調整
- # the max time of storage sync a file
- # default value is 300 seconds
- # since V2.00
- storage_sync_file_max_time = 300
- #同步一個檔案需要消耗的最大時間,預設為300秒,即5分鐘
- # if use a trunk file to store several small files
- # default value is false
- # since V3.00
- use_trunk_file = false
- #是否使用小檔案合併儲存特性,預設關閉,開啟時可以減少碎片檔案的出現,但同時加大伺服器的負載
- # the min slot size, should <= 4KB
- # default value is 256 bytes
- # since V3.00
- slot_min_size = 256
- #為trunk file分配的最小位元組數,比如一個檔案只有16位元組,根據當前設定,也會為其分配256位元組
- # the max slot size, should > slot_min_size
- # store the upload file to trunk file when it's size <= this value
- # default value is 16MB
- # since V3.00
- slot_max_size = 16MB
- #為trunk file分配的最大位元組數,如果檔案小於大小則使用trunk方式儲存,當檔案大小大於這個數值是直接儲存到一個檔案中(不採用合併儲存方式)
- # the trunk file size, should >= 4MB
- # default value is 64MB
- # since V3.00
- trunk_file_size = 64MB
- #trunk file的大小,不建議設定過大
- # if create trunk file advancely
- # default value is false
- # since V3.06
- trunk_create_file_advance = false
- #是否提前建立好trunk檔案,只用當這個引數設定為true時下面的3個以trunk_create_file開頭的引數將不用設定
- # the time base to create trunk file
- # the time format: HH:MM
- # default value is 02:00
- # since V3.06
- trunk_create_file_time_base = 02:00
- #建立trunk file的起始時間點,當前為凌晨2點開始
- # the interval of create trunk file, unit: second
- # default value is 38400 (one day)
- # since V3.06
- trunk_create_file_interval = 86400
- #提前建立trunk file的時間間隔,預設為1天
- # the threshold to create trunk file
- # when the free trunk file size less than the threshold, will create
- # the trunk files
- # default value is 0
- # since V3.06
- trunk_create_file_space_threshold = 20G
- #提前建立trunk file時,需要達到的空閒trunk大小
- #例如:當前配置為20G,現在空閒的trunk file大小為4G,那麼只建立16G的trunk file
- # if check trunk space occupying when loading trunk free spaces
- # the occupied spaces will be ignored
- # default value is false
- # since V3.09
- # NOTICE: set this parameter to true will slow the loading of trunk spaces
- # when startup. you should set this parameter to true when neccessary.
- trunk_init_check_occupying = false
- #trunk file 初始化時,是否檢查可用空間是否被佔用
- # if ignore storage_trunk.dat, reload from trunk binlog
- # default value is false
- # since V3.10
- # set to true once for version upgrade when your version less than V3.10
- trunk_init_reload_from_binlog = false
- #是否無條件從trunk binlog中載入trunk可用空間資訊
- # if use storage ID instead of IP address
- # default value is false
- # since V4.00
- use_storage_id = false
- #是否使用 serverID作為storage server標識
- # specify storage ids filename, can use relative or absolute path
- # since V4.00
- storage_ids_filename = storage_ids.conf
- #use_storage_id設定為true,才需要設定本引數,詳見原始碼目錄下的conf/storage_ids.conf
- #這個檔案中設定組名、serverID和對應的IP地址
- # id type of the storage server in the filename, values are:
- ## ip: the ip address of the storage server
- ## id: the server id of the storage server
- # this paramter is valid only when use_storage_id set to true
- # default value is ip
- # since V4.03
- id_type_in_filename = ip
- #use_storage_id設定為true時才需要設定本引數
- # if store slave file use symbol link
- # default value is false
- # since V4.01
- store_slave_file_use_link = false
- #儲存從檔案是否採用symbol link(符號連結)方式
- #如果設定為true,一個從檔案將佔用兩個檔案:原始檔案及指向它的符號連結
- # if rotate the error log every day
- # default value is false
- # since V4.02
- rotate_error_log = false
- #是否定期輪轉error log,目前僅支援一天輪轉一次
- # rotate error log time base, time format: Hour:Minute
- # Hour from 0 to 23, Minute from 0 to 59
- # default value is 00:00
- # since V4.02
- error_log_rotate_time=00:00
- #error log定期輪轉的時間節點,rotate_error_log引數設定為true時,本引數有效
- # rotate error log when the log file exceeds this size
- # 0 means never rotates log file by log file size
- # default value is 0
- # since V4.02
- rotate_error_log_size = 0
- #error log按大小進行輪轉 0代表不按大小進行輪轉,否則當error log檔案達到大小則輪轉
- # if use connection pool
- # default value is false
- # since V4.05
- use_connection_pool = false
- #是否使用連線池
- # connections whose the idle time exceeds this time will be closed
- # unit: second
- # default value is 3600
- # since V4.05
- connection_pool_max_idle_time = 3600
- #連線池連結的最大生存時間,單位秒,use_connection_pool設定為true時有效
- # HTTP port on this tracker server
- http.server_port=8080
- #http服務埠,預設情況下V4.06是不安裝http服務的,詳見INSTALL檔案
- # check storage HTTP server alive interval seconds
- # <= 0for never check
- # default value is 30
- http.check_alive_interval=30
- #檢查長連結的存活時間30秒
- # check storage HTTP server alive type, values are:
- # tcp : connect to the storge server with HTTP port only,
- # do not request and get response
- # http: storage check alive url must return http status 200
- # default value is tcp
- http.check_alive_type=tcp
- #長連結的存在方式,當前配置為tcp方式
- # check storage HTTP server alive uri/url
- # NOTE: storage embed HTTP server support uri: /status.html
- http.check_alive_uri=/status.html
- #利用什麼標識進行檢查
附件中有儲存好的traker.conf檔案,需要的可以進行下載
配置完成之後,執行
Java程式碼
- /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf
tracker端就可以執行成功了。
可能出現的問題有兩個
1.base_path設定的目錄不存在,如果報這個錯誤,需要按base_path的設定建立一個目錄
2.找不到libevent-2.0.so.5
如果找不到這個,請確認安裝時的安裝位置
一般這個庫會安裝到/usr/local/lib中
而我們的fdfs_trackerd會到/usr/lib中去查詢,所以使用
Java程式碼
- ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib/libevent-2.0.so.5
將庫載入到/usr/lib中就可以了