etcd Version: 3.0.15
Git SHA: fc00305
Go Version: go1.6.3
Go OS/Arch: linux/amd64node
https://github.com/coreos/etcd/blob/master/Documentation/op-guide/configuration.mdlinux
usage: etcd [flags]
start an etcd servergit
etcd --version
show the version of etcdgithub
etcd -h | --help
show the help information about etcdbootstrap
etcd --config-file
path to the server configuration file
app
member flags:cors
--name 'default' 方便理解的節點名稱,默認爲 default
,在集羣中應該保持惟一,可使用 hostname
human-readable name for this member.
--data-dir '${name}.etcd' 服務運行數據保存的路徑,默認爲 ${name}.etcd
path to the data directory.
--wal-dir ''
path to the dedicated wal directory.
--snapshot-count '10000' 指定有多少事務(transaction)被提交時,觸發截取快照保存到磁盤
number of committed transactions to trigger a snapshot to disk.
--heartbeat-interval '100' leader 多久發送一次心跳到 followers。默認值是 100ms
time (in milliseconds) of a heartbeat interval.
--election-timeout '1000' 從新投票的超時時間,若是 follow 在該時間間隔沒有收到心跳包,會觸發從新投票,默認爲 1000 ms
time (in milliseconds) for an election to timeout. See tuning documentation for details.
--listen-peer-urls 'http://localhost:2380' 和同伴通訊的地址,好比 http://ip:2380
,若是有多個,使用逗號分隔。須要全部節點都可以訪問, 因此不要使用 localhost!
list of URLs to listen on for peer traffic.
--listen-client-urls 'http://localhost:2379' 對外提供服務的地址:好比 http://ip:2379,http://127.0.0.1:2379
,客戶端會鏈接到這裏和 etcd 交互。
list of URLs to listen on for client traffic. 若是服務啓動時,設置了--listen-client-urls,須要設置 --advertise-client-urls
--max-snapshots '5'
maximum number of snapshot files to retain (0 is unlimited).
--max-wals '5'
maximum number of wal files to retain (0 is unlimited).
--cors ''
comma-separated whitelist of origins for CORS (cross-origin resource sharing).
--quota-backend-bytes '0'
raise alarms when backend size exceeds the given quota (0 defaults to low space quota).dom
clustering flags:分佈式
--initial 前綴的設置項,用於啓動集羣(static, discovery或者運行時配置)中的一個成員。集羣成員重啓時,忽略此配置相。ide
--initial-advertise-peer-urls 'http://localhost:2380' 該節點同伴監聽地址,這個值會告訴集羣中其餘節點。 做爲集羣中的peer接口,若是啓動服務時,設置了--initial-advertise-peer-urls, 須要設置--initial-cluster
list of this member's peer URLs to advertise to the rest of the cluster.
--initial-cluster 'default=http://localhost:2380' STATIC 初始化集羣,集羣中全部節點的信息,格式爲 node1=http://ip1:2380,node2=http://ip2:2380,…
。注意:這裏的 node1
是節點的 --name
指定的名字;後面的 ip1:2380
是 --initial-advertise-peer-urls
指定的值內容是advertised peer URLs,與各個節點的 initial-advertise-peer-urls 匹配。
initial cluster configuration for bootstrapping.
--initial-cluster-state 'new' 新建集羣的時候,這個值爲 new
;假如已經存在的集羣,這個值爲 existing
initial cluster state ('new' or 'existing').
--initial-cluster-token 'etcd-cluster' 經過設置etcd集羣的token,生成不一樣的集羣ID和memberid,區別其餘羣。當系統中有多個集羣時。建立集羣的 token,這個值每一個集羣保持惟一。這樣的話,若是你要從新建立集羣,即便配置和以前同樣,也會再次生成新的集羣和節點 uuid;不然會致使多個集羣之間的衝突,形成未知的錯誤。
initial cluster token for the etcd cluster during bootstrap.
Specifying this can protect you from unintended cross-cluster interaction when running multiple clusters.
--advertise-client-urls 'http://localhost:2379' 對外公告的該節點客戶端監聽地址,這個值會告訴集羣中其餘節點。 做爲分佈式的客戶端鏈接端口 for member to other member、proxy、 client in cluster。
list of this member's client URLs to advertise to the public.
The client URLs advertised should be accessible to machines that talk to etcd cluster. etcd client libraries parse these URLs to connect to the cluster.
--discovery '' discovery URL should not be set when joining existing initial cluster, 不與--initial-cluster-state、--initial-cluster 一塊兒使用。
discovery URL used to bootstrap the cluster.
--discovery-fallback 'proxy'
expected behavior ('exit' or 'proxy') when discovery services fails.
"proxy" supports v2 API only.
--discovery-proxy ''
HTTP proxy to use for traffic to discovery service.
--discovery-srv ''
dns srv domain used to bootstrap the cluster.
--strict-reconfig-check 使用此配置項,在運行時從新配置集羣時,當從新配置集羣已啓動成員數少於其法定數時,從新配置請求將被拒絕處理。缺省時,沒有此配置項,建議啓動時使用此配置項。
reject reconfiguration requests that would cause quorum loss.
--auto-compaction-retention '0'
auto compaction retention in hour. 0 means disable auto compaction.
proxy flags:
"proxy" supports v2 API only.
--proxy 'off'
proxy mode setting ('off', 'readonly' or 'on').
--proxy-failure-wait 5000
time (in milliseconds) an endpoint will be held in a failed state.
--proxy-refresh-interval 30000
time (in milliseconds) of the endpoints refresh interval.
--proxy-dial-timeout 1000
time (in milliseconds) for a dial to timeout.
--proxy-write-timeout 5000
time (in milliseconds) for a write to timeout.
--proxy-read-timeout 0
time (in milliseconds) for a read to timeout.
security flags:
--ca-file '' [DEPRECATED]
path to the client server TLS CA file. '-ca-file ca.crt' could be replaced by '-trusted-ca-file ca.crt -client-cert-auth' and etcd will perform the same.
--cert-file ''
path to the client server TLS cert file.
--key-file ''
path to the client server TLS key file.
--client-cert-auth 'false'
enable client cert authentication.
--trusted-ca-file ''
path to the client server TLS trusted CA key file.
--auto-tls 'false'
client TLS using generated certificates.
--peer-ca-file '' [DEPRECATED]
path to the peer server TLS CA file. '-peer-ca-file ca.crt' could be replaced by '-peer-trusted-ca-file ca.crt -peer-client-cert-auth' and etcd will perform the same.
--peer-cert-file ''
path to the peer server TLS cert file.
--peer-key-file ''
path to the peer server TLS key file.
--peer-client-cert-auth 'false'
enable peer client cert authentication.
--peer-trusted-ca-file ''
path to the peer server TLS trusted CA file.
--peer-auto-tls 'false'
peer TLS using self-generated certificates if --peer-key-file and --peer-cert-file are not provided.
logging flags
--debug 'false'
enable debug-level logging for etcd.
--log-package-levels ''
specify a particular log level for each etcd package (eg: 'etcdmain=CRITICAL,etcdserver=DEBUG').
unsafe flags:
Please be CAUTIOUS when using unsafe flags because it will break the guarantees
given by the consensus protocol.
--force-new-cluster 'false' 使用此配置項,生成的集羣peer URL 爲缺省的localhost, 須要使用集羣接口update。 force to create a new one-member cluster. profiling flags: --enable-pprof 'false' Enable runtime profiling data via HTTP server. Address is at client URL + "/debug/pprof"