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"