Etcd 配置詳解

配置標(biāo)記

etcd 可以通過命令行標(biāo)記和環(huán)境變量來配置潭枣。命令行上設(shè)置的選項(xiàng)優(yōu)先于環(huán)境變量。

對于標(biāo)記 --my-flag 環(huán)境變量的格式是 ETCD_MY_FLAG。 適用于所有標(biāo)記硝清。

正式的ectd端口 是 2379 用于客戶端連接侨把,而 2380 用于伙伴通訊谆焊。etcd 端口可以設(shè)置為接受 TLS 通訊厚掷,non-TLS 通訊绿聘,或者同時(shí)有 TLS 和 non-TLS 通訊室埋。

為了在 linux 啟動試使用自定義設(shè)置自動啟動 etcd 办绝,強(qiáng)烈推薦使用 systemd單元。

成員標(biāo)記

—name

  • 成員的可讀性的名字.
  • 默認(rèn): “default”
  • 環(huán)境變量: ETCD_NAME
  • 這個值被作為這個節(jié)點(diǎn)自己的入口中被引用姚淆, 在 --initial-cluster 標(biāo)記(例如, default=http://localhost:2380)中列出孕蝉。如果使用 static bootstrapping,這需要匹配在標(biāo)記中使用的key。當(dāng)使用發(fā)現(xiàn)時(shí)腌逢,每個成員必須有唯一名字降淮。Hostnamemachine-id 可以是一個好選擇。

—data-dir

  • 到數(shù)據(jù)目錄的路徑.
  • 默認(rèn): “${name}.etcd”
  • 環(huán)境變量: ETCD_DATA_DIR

—wal-dir

  • 到專用的 wal 目錄的路徑搏讶。如果這個標(biāo)記被設(shè)置佳鳖,etcd將寫 WAL 文件到 walDIR 而不是 dataDIR。這容許使用專門的硬盤窍蓝,并幫助避免日志和其他IO操作之間的IO競爭腋颠。
  • 默認(rèn): “”
  • 環(huán)境變量: ETCD_WAL_DIR

—snapshot-count

  • 觸發(fā)快照到硬盤的已提交事務(wù)的數(shù)量.
  • 默認(rèn): “10000”
  • 環(huán)境變量: ETCD_SNAPSHOT_COUNT

—heartbeat-interval

  • 心跳間隔時(shí)間 (單位 毫秒).
  • 默認(rèn): “100”
  • 環(huán)境變量: ETCD_HEARTBEAT_INTERVAL

—election-timeout

  • 選舉的超時(shí)時(shí)間(單位 毫秒). 閱讀 Documentation/tuning.md 得到更多詳情.
  • 默認(rèn): “1000”
  • 環(huán)境變量: ETCD_ELECTION_TIMEOUT

—listen-peer-urls

用于監(jiān)聽伙伴通訊的URL列表。這個標(biāo)記告訴 etcd 在特定的 scheme://IP:port 組合上從它的伙伴接收進(jìn)來的請求吓笙。scheme 可是 http 或者 https淑玫。如果IP被指定為0.0.0.0,etcd 在所有接口上監(jiān)聽給定端口。如果給定IP地址和端口面睛,etcd 將監(jiān)聽在給定端口和接口上絮蒿。多個URL可以用來指定多個地址和端口來監(jiān)聽。etcd將從任何列出來的地址和端口上應(yīng)答請求叁鉴。

—listen-client-urls

用于監(jiān)聽客戶端通訊的URL列表土涝。這個標(biāo)記告訴 etcd 在特定的 scheme://IP:port 組合上從客戶端接收進(jìn)來的請求。scheme 可是 http 或者 https幌墓。如果IP被指定為 0.0.0.0,etcd 在所有接口上監(jiān)聽給定端口但壮。如果給定IP地址和端口,etcd 將監(jiān)聽在給定端口和接口上常侣。多個 URL 可以用來指定多個地址和端口來監(jiān)聽蜡饵。etcd 將從任何列出來的地址和端口上應(yīng)答請求。

—max-snapshots

  • 保持的快照文件的最大數(shù)量 (0 表示不限制)
  • 默認(rèn): 5
  • 環(huán)境變量: ETCD_MAX_SNAPSHOTS
  • 對于 windows 用戶默認(rèn)不限制胳施,而且推薦手工降低到5(或者某些安全偏好)溯祸。

—max-wals

  • 保持的 wal 文件的最大數(shù)量 (0 表示不限制)
  • 默認(rèn): 5
  • 環(huán)境變量: ETCD_MAX_WALS
  • 對于windows用戶默認(rèn)不限制,而且推薦手工降低到5(或者某些安全偏好)。

—cors

  • 逗號分割的 origin 白名單焦辅,用于 CORS (cross-origin resource sharing/跨 origin 資源共享).
  • 默認(rèn): none
  • 環(huán)境變量: ETCD_CORS

集群標(biāo)記

--initial 前綴標(biāo)記用于啟動(static bootstrap, [discovery-service bootstrap])(clustering.md#discovery) 或 runtime reconfiguration) 新成員, 然后當(dāng)重新啟動一個已有的成員時(shí)被忽略博杖。

--discovery 前綴標(biāo)記在使用發(fā)現(xiàn)服務(wù)需要設(shè)置.

—initial-advertise-peer-urls

列出這個成員的伙伴 URL 以便通告給集群的其他成員。這些地方用于在集群中通訊 etcd 數(shù)據(jù)筷登。至少有一個必須對所有集群成員可以路由的剃根。這些 URL 可以包含域名。

—initial-cluster

為啟動初始化集群配置仆抵。

  • 默認(rèn): “default=http://localhost:2380
  • 環(huán)境變量: ETCD_INITIAL_CLUSTER
  • key是每個提供的節(jié)點(diǎn)的 --name 標(biāo)記的值. 默認(rèn)為這個 key 使用 default 因?yàn)檫@是 --name 標(biāo)記的默認(rèn)值.

—initial-cluster-state

初始化集群狀態(tài)(“new” or “existing”)跟继。在初始化靜態(tài)(initial static)或者 DNS 啟動 (DNS bootstrapping) 期間為所有成員設(shè)置為 new 。如果這個選項(xiàng)被設(shè)置為 existing , etcd 將試圖加入已有的集群镣丑。如果設(shè)置為錯誤的值舔糖,etcd 將嘗試啟動但安全失敗。

  • 默認(rèn): “new”
  • 環(huán)境變量: ETCD_INITIAL_CLUSTER_STATE

—initial-cluster-token

在啟動期間用于 etcd 集群的初始化集群記號(cluster token)莺匠。

  • 默認(rèn): “etcd-cluster”
  • 環(huán)境變量: ETCD_INITIAL_CLUSTER_TOKEN

—advertise-client-urls

列出這個成員的客戶端URL金吗,通告給集群中的其他成員。這些 URL 可以包含域名趣竣。

小心摇庙,如果來自集群成員的通告 URL 比如 http://localhost:2379 正在使用 etcd 的 proxy 特性。這將導(dǎo)致循環(huán)遥缕,因?yàn)榇韺⑥D(zhuǎn)發(fā)請求給它自己直到它的資源(內(nèi)存卫袒,文件描述符)最終耗盡。

—discovery

用于啟動集群的發(fā)現(xiàn)URL单匣。

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_DISCOVERY

—discovery-srv

用于啟動集群的 DNS srv 域名夕凝。

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_DISCOVERY_SRV

—discovery-fallback

當(dāng)發(fā)現(xiàn)服務(wù)失敗時(shí)的期待行為(“exit” 或 “proxy”). “proxy” 僅支持 v2 API.

  • 默認(rèn): “proxy”
  • 環(huán)境變量: ETCD_DISCOVERY_FALLBACK

—discovery-proxy

用于請求到發(fā)現(xiàn)服務(wù)的 HTTP 代理。

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_DISCOVERY_PROXY

—strict-reconfig-check

拒絕將導(dǎo)致法定人數(shù)丟失的重配置請求户秤。

  • 默認(rèn): false
  • 環(huán)境變量: ETCD_STRICT_RECONFIG_CHECK

—auto-compaction-retention

自動壓縮用于 mvcc 鍵值存儲的保持力(注:應(yīng)該指多版本保存)码秉,單位小時(shí)。 0 表示關(guān)閉自動壓縮鸡号。

  • 默認(rèn): 0
  • 環(huán)境變量: ETCD_AUTO_COMPACTION_RETENTION

注: 對于服務(wù)注冊等只保存運(yùn)行時(shí)動態(tài)信息的場合转砖,建議開啟。完全沒有理由損失存儲空間和效率來保存之前的版本信息鲸伴。推薦設(shè)置為1,每小時(shí)壓縮一次府蔗。

Proxy flags

--proxy 前綴標(biāo)記配置 etcd 以 代理模式 運(yùn)行. “proxy” 僅支持 v2 API.

—proxy

代理模式設(shè)置(“off”, “readonly” or “on”).

  • 默認(rèn): “off”
  • 環(huán)境變量: ETCD_PROXY

—proxy-failure-wait

在被重新考慮之前,終端將被視為失敗狀態(tài)的時(shí)間(單位 毫秒)汞窗,用于被代理的請求姓赤。

  • 默認(rèn): 5000
  • 環(huán)境變量: ETCD_PROXY_FAILURE_WAIT

—proxy-refresh-interval

終端刷新間隔時(shí)間(單位 毫秒)

  • 默認(rèn): 30000
  • 環(huán)境變量: ETCD_PROXY_REFRESH_INTERVAL

—proxy-dial-timeout

請求的撥號(dial)超時(shí)時(shí)間(單位 毫秒),或者 0 禁用超時(shí)杉辙。

  • 默認(rèn): 1000
  • 環(huán)境變量 ETCD_PROXY_DIAL_TIMEOUT

—proxy-write-timeout

寫操作的超時(shí)時(shí)間(單位 毫秒)模捂,或者 0 禁用超時(shí)。

  • 默認(rèn): 5000
  • 環(huán)境變量: ETCD_PROXY_WRITE_TIMEOUT

—proxy-read-timeout

讀操作的超時(shí)時(shí)間(單位 毫秒)蜘矢,或者 0 禁用超時(shí)狂男。

不要修改這個值,如果在使用 watch品腹,因?yàn)?watch 將使用 long polling 請求岖食。

  • 默認(rèn): 0
  • 環(huán)境變量: ETCD_PROXY_READ_TIMEOUT

安全標(biāo)記

安全標(biāo)記用于幫助 搭建安全 etcd 集群.

—ca-file [棄用]

客戶端服務(wù)器 TLS 證書文件的路徑。--ca-file ca.crt 可以被 --trusted-ca-file ca.crt --client-cert-auth 替代舞吭,而 etcd 同樣工作泡垃。

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_CA_FILE

—cert-file

客戶端服務(wù)器 TLS 證書文件的路徑。

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_CERT_FILE

—key-file

客戶端服務(wù)器 TLS key 文件的路徑羡鸥。

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_KEY_FILE

—client-cert-auth

開啟客戶端證書認(rèn)證蔑穴。

  • 默認(rèn): false
  • 環(huán)境變量: ETCD_CLIENT_CERT_AUTH

—trusted-ca-file

客戶端服務(wù)器 TLS 信任證書文件的路徑。

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_TRUSTED_CA_FILE

—auto-tls

使用生成證書的客戶端 TLS惧浴。

  • 默認(rèn): false
  • 環(huán)境變量: ETCD_AUTO_TLS

—peer-ca-file [棄用]

peer server TLS 證書文件的路徑. --peer-ca-file ca.crt 可以被 --peer-trusted-ca-file ca.crt --peer-client-cert-auth 替代存和,而 etcd 同樣工作.

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_PEER_CA_FILE

—peer-cert-file

peer server TLS 證書文件的路徑.

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_PEER_CERT_FILE

—peer-key-file

peer server TLS key 文件的路徑.

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_PEER_KEY_FILE

—peer-client-cert-auth

開啟 peer client 證書驗(yàn)證.

  • 默認(rèn): false
  • 環(huán)境變量: ETCD_PEER_CLIENT_CERT_AUTH

—peer-trusted-ca-file

peer server TLS 信任證書文件路徑.

  • 默認(rèn): none
  • 環(huán)境變量: ETCD_PEER_TRUSTED_CA_FILE

—peer-auto-tls

使用生成證書的peer TLS。

  • 默認(rèn): false
  • 環(huán)境變量: ETCD_PEER_AUTO_TLS

日志標(biāo)記

—debug

設(shè)置所有子包的默認(rèn)日志級別為 DEBUG

  • 默認(rèn): false (所有包為 INFO)
  • 環(huán)境變量: ETCD_DEBUG

—log-package-levels

設(shè)置個人 etcd 子包為指定日志級別衷旅。例如 etcdserver=WARNING,security=DEBUG

  • 默認(rèn): none (所有包為 INFO)
  • 環(huán)境變量: ETCD_LOG_PACKAGE_LEVELS

不安全的標(biāo)記

請謹(jǐn)慎使用不安全標(biāo)記捐腿,因?yàn)樗鼘⒋蚱埔恢滦詤f(xié)議提供的保證。

例如柿顶,它可能驚慌茄袖,如果集群中的其他成員還活著。

當(dāng)使用這些標(biāo)記時(shí)嘁锯,遵循操作指南宪祥。

—force-new-cluster

強(qiáng)制創(chuàng)建新的單一成員的集群。它提交配置修改來強(qiáng)制移除集群中的所有現(xiàn)有成員然后添加自身猪钮。當(dāng) restore a backup 時(shí)需要設(shè)置品山。

  • 默認(rèn): false
  • 環(huán)境變量: ETCD_FORCE_NEW_CLUSTER

其他標(biāo)記

—version

打印版本并退出.

  • 默認(rèn): false

—config-file

從文件中裝載服務(wù)器配置.

  • 默認(rèn): none

分析標(biāo)記

—enable-pprof

通過 HTTP 服務(wù)器開啟運(yùn)行時(shí)分析數(shù)據(jù)。地址是 client URL + “/debug/pprof/“

  • 默認(rèn): false

—metrics

  • 為導(dǎo)出的度量烤低,設(shè)置詳情的等級肘交,指定 ‘extensive’ 來包含柱狀圖
  • 默認(rèn): basic
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市扑馁,隨后出現(xiàn)的幾起案子涯呻,更是在濱河造成了極大的恐慌,老刑警劉巖腻要,帶你破解...
    沈念sama閱讀 217,907評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件复罐,死亡現(xiàn)場離奇詭異,居然都是意外死亡雄家,警方通過查閱死者的電腦和手機(jī)效诅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人乱投,你說我怎么就攤上這事咽笼。” “怎么了戚炫?”我有些...
    開封第一講書人閱讀 164,298評論 0 354
  • 文/不壞的土叔 我叫張陵剑刑,是天一觀的道長。 經(jīng)常有香客問我双肤,道長施掏,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,586評論 1 293
  • 正文 為了忘掉前任茅糜,我火速辦了婚禮七芭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蔑赘。我一直安慰自己抖苦,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,633評論 6 392
  • 文/花漫 我一把揭開白布米死。 她就那樣靜靜地躺著锌历,像睡著了一般。 火紅的嫁衣襯著肌膚如雪峦筒。 梳的紋絲不亂的頭發(fā)上究西,一...
    開封第一講書人閱讀 51,488評論 1 302
  • 那天,我揣著相機(jī)與錄音物喷,去河邊找鬼卤材。 笑死,一個胖子當(dāng)著我的面吹牛峦失,可吹牛的內(nèi)容都是我干的扇丛。 我是一名探鬼主播,決...
    沈念sama閱讀 40,275評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼尉辑,長吁一口氣:“原來是場噩夢啊……” “哼帆精!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起隧魄,我...
    開封第一講書人閱讀 39,176評論 0 276
  • 序言:老撾萬榮一對情侶失蹤卓练,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后购啄,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體襟企,經(jīng)...
    沈念sama閱讀 45,619評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,819評論 3 336
  • 正文 我和宋清朗相戀三年狮含,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了顽悼。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片曼振。...
    茶點(diǎn)故事閱讀 39,932評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖蔚龙,靈堂內(nèi)的尸體忽然破棺而出拴测,到底是詐尸還是另有隱情,我是刑警寧澤府蛇,帶...
    沈念sama閱讀 35,655評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站屿愚,受9級特大地震影響汇跨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜妆距,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,265評論 3 329
  • 文/蒙蒙 一穷遂、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧娱据,春花似錦蚪黑、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至结啼,卻和暖如春掠剑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背郊愧。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評論 1 269
  • 我被黑心中介騙來泰國打工朴译, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人属铁。 一個月前我還...
    沈念sama閱讀 48,095評論 3 370
  • 正文 我出身青樓眠寿,卻偏偏與公主長得像,于是被迫代替她去往敵國和親焦蘑。 傳聞我的和親對象是個殘疾皇子盯拱,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,884評論 2 354

推薦閱讀更多精彩內(nèi)容