1、Tracker基本配置
# is this config file disabled # false for enabled # true for disabled disabled=false
# bind an address of this host # empty for bind all addresses of this host bind_addr=10.16.123.132
# the tracker server pfort port=22122
# connect timeout in seconds # default value is 30s connect_timeout=30
# network timeout in seconds # default value is 30s network_timeout=60
# the base path to store data and log files base_path=/home/openpf/app/fdfs407/base-g1
# max concurrent connections this server supported max_connections=1024
# accept thread count # default value is 1 # since V4.07 accept_threads=1
# work thread count, should <= max_connections # default value is 4 # since V2.00 work_threads=4
# 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
# which group to upload file # when store_lookup set to 1, must set store_group to the group name store_group=group2
# 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
# 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
# which storage server to download file # 0: round robin (default) # 1: the source storage server which the current file uploaded to download_server=0
# 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 for byte(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=
#unix username to run this program, #not set (empty) means run by current user run_by_user=
# 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=*
# default value is true storage_ip_changed_auto_adjust = true
# check storage server alive interval seconds check_active_interval = 120
# thread stack size, should >= 64KB # default value is 64KB thread_stack_size = 64KB
二、同步
# storage sync file max delay seconds # default value is 86400 seconds (one day) # since V2.00 storage_sync_file_max_delay = 86400
# the max time of storage sync a file # default value is 300 seconds # since V2.00 storage_sync_file_max_time = 300
# sync log buff to disk every interval seconds # default value is 10 seconds sync_log_buff_interval = 10
3、trunk和slot
# 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
# 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
# the trunk file size, should >= 4MB # default value is 64MB # since V3.00 trunk_file_size = 64MB
# if create trunk file advancely # default value is false # since V3.06 trunk_create_file_advance = false
# 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
# the interval of create trunk file, unit: second # default value is 38400 (one day) # since V3.06 trunk_create_file_interval = 86400
# 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
# 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
# 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
4、HTTP相关
# HTTP port on this tracker server http.server_port=8080
# check storage HTTP server alive interval seconds # <= 0 for never check # default value is 30 http.check_alive_interval=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 # check storage HTTP server alive uri/url # NOTE: storage embed HTTP server support uri: /status.html http.check_alive_uri=/status.html
# is http disabled # false for enabled # true for disabled http.disabled=false
#include http.conf
1、Storage基本配置
# is this config file disabled # false for enabled # true for disabled disabled=false
# the name of the group this storage server belongs to group_name=group1
# bind an address of this host # empty for bind all addresses of this host bind_addr=10.16.125.32
# if bind an address of this host when connect to other servers # (this storage server as a client) # true for binding the address configed by above parameter: "bind_addr" # false for binding any address of this host client_bind=true
# the storage server port port=21000
# connect timeout in seconds # default value is 30s connect_timeout=30
# network timeout in seconds # default value is 30s network_timeout=60
# heart beat interval in seconds heart_beat_interval=30
# disk usage report interval in seconds stat_report_interval=60
# the base path to store data and log files base_path=/home/openpf/app/fdfs407/base-g1
# max concurrent connections the server supported # default value is 256 # more max_connections means more memory will be used max_connections=1024
# the buff size to recv / send data # this parameter must more than 8KB # default value is 64KB # since V2.00 buff_size = 256KB
# accept thread count # default value is 1 # since V4.07 accept_threads=1
# work thread count, should <= max_connections # work thread deal network io # default value is 4 # since V2.00 work_threads=8
# set keep_alive to 1 to enable persistent connection with FastDHT servers # default value is 0 (short connection) keep_alive=0
# namespace for storing file indexes (key-value pairs) # this item must be set when check_file_duplicate is true / on key_namespace=FastDFS
# if check file duplicate, when set to true, use FastDHT to store file indexes # 1 or yes: need check # 0 or no: do not check # default value is 0 check_file_duplicate=0
# the NIC alias prefix, such as eth in Linux, you can see it by ifconfig -a # multi aliases split by comma. empty value means auto set by OS type # default values is empty if_alias_prefix=
# the priority as a source server for uploading file. # the lower this value, the higher its uploading priority. # default value is 10 upload_priority=10
# thread stack size, should >= 512KB # default value is 512KB thread_stack_size=512KB
# default value is true storage_ip_changed_auto_adjust = true
# check storage server alive interval seconds check_active_interval = 120
# thread stack size, should >= 64KB # default value is 64KB thread_stack_size = 64KB
# tracker_server can ocur more than once, and tracker_server format is "host:port", host can be hostname or ip address tracker_server=10.16.139.2:22122 tracker_server=10.16.139.2:22123
#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
# 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=*
# file signature method for check file duplicate ## hash: four 32 bits hash code ## md5: MD5 signature # default value is hash # since V4.01 file_signature_method=hash
# 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
# the mode of the files distributed to the data path # 0: round robin(default) # 1: random, distributted by hash code file_distribute_path_mode=0
# valid when file_distribute_to_path is set to 0 (round robin), # when the written file count reaches this number, then rotate to next path # default value is 100 file_distribute_rotate_count=100
# path(disk or mount point) count, default value is 1 store_path_count=1
# store_path#, based 0, if store_path0 not exists, it's value is base_path # the paths must be exist store_path0=/home/openpf/app/fdfs407/data
# subdir_count * subdir_count directories will be auto created under each # store_path (disk), value can be 1 to 256, default value is 256 subdir_count_per_path=256
二、IO
# if disk read / write separated ## false for mixed read and write ## true for separated read and write # default value is true # since V2.00 disk_rw_separated = true
# disk reader thread count per store base path # for mixed read / write, this parameter can be 0 # default value is 1 # since V2.00 disk_reader_threads = 1
# disk writer thread count per store base path # for mixed read / write, this parameter can be 0 # default value is 1 # since V2.00 disk_writer_threads = 1
3、同步
# after sync a file, usleep milliseconds # 0 for sync successively (never call usleep) sync_interval=0
# when no entry to sync, try read binlog again after X milliseconds # must > 0, default value is 200ms sync_wait_msec=50
# storage sync start time of a day, time format: Hour:Minute # Hour from 0 to 23, Minute from 0 to 59 sync_start_time=00:00
# storage sync end time of a day, time format: Hour:Minute # Hour from 0 to 23, Minute from 0 to 59 sync_end_time=23:59
# write to the mark file after sync N files # default value is 500 write_mark_file_freq=500
# call fsync to disk when write big file # 0: never call fsync # other: call fsync when written bytes >= this bytes # default value is 0 (never call fsync) fsync_after_written_bytes=0
# sync log buff to disk every interval seconds # must > 0, default value is 10 seconds sync_log_buff_interval=10
# sync binlog buff / cache to disk every interval seconds # default value is 60 seconds sync_binlog_buff_interval=10
# sync storage stat info to disk every interval seconds # default value is 300 seconds sync_stat_file_interval=300
4、HTTP相关
# use the ip address of this storage server if domain_name is empty, # else this domain name will ocur in the url redirected by the tracker server http.domain_name=
# the port of the web server on this storage server http.server_port=8888
# is http disabled # false for enabled # true for disabled http.disabled=false
#include http.conf