靜態(tài)方式部署etcd集群

以靜態(tài)方式部署etcd集群

何為靜態(tài)方式部署呢运提?

預(yù)先已知etcd集群中有哪些節(jié)點(diǎn)鳍寂,在啟動(dòng)時(shí)通過(guò)--initial-cluster參數(shù)直接指定好etcd的各個(gè)節(jié)點(diǎn)地址

一改含、測(cè)試環(huán)境

主機(jī)名 系統(tǒng)版本 IP 服務(wù)
master centos7.5 172.16.91.195 etcd
slave01 centos7.5 172.16.91.196 etcd
slave02 centos7.5 172.16.91.197 etcd

二、部署方式說(shuō)明

目前大概有以下幾種部署方式吧:

2.1 通過(guò)yum方式安裝的etcd服務(wù)鞍爱,配置文件位置如下:

名稱 位置
etcd /usr/bin/etcd
etcdctl /usr/bin/etcdctl
etcd.service /lib/systemd/system/etcd.service
etcd.conf /etc/etcd/etcd.conf

三鹃觉、部署etcd服務(wù)(不帶認(rèn)證)

3.1 通過(guò)yum方式部署安裝etcd

在三臺(tái)節(jié)點(diǎn)上,分別使用下面的命令睹逃,來(lái)安裝etcd

yum install -y etcd

注意:

  • 通過(guò)yum方式安裝的etcd服務(wù)盗扇,是交給linux的系統(tǒng)服務(wù)來(lái)維護(hù)生命周期的
  • 此時(shí)etcd服務(wù)并沒(méi)有起來(lái)祷肯,需要手動(dòng)啟動(dòng)etcd服務(wù)
    image

由于默認(rèn)的配置只能自己本節(jié)點(diǎn)使用,因此這里先不啟動(dòng)etcd服務(wù)

3.2 更新配置文件

3.2.1 更新etcd.service

  1. master節(jié)點(diǎn)疗隶,配置文件如下所示:

    [root@master lib]# more /lib/systemd/system/etcd.service 
    [Unit]
    Description=Etcd Server
    After=network.target
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=notify
    WorkingDirectory=/var/lib/etcd/
    EnvironmentFile=-/etc/etcd/etcd.conf
    User=root
    # set GOMAXPROCS to number of processors
    ExecStart=/usr/bin/etcd  \
        --name=${ETCD_NAME} \
        --data-dir=${ETCD_DATA_DIR} \
        --listen-client-urls=${ETCD_LISTEN_CLIENT_URLS} \
        --listen-peer-urls=${ETCD_LISTEN_PEER_URLS} \
        --advertise-client-urls=${ETCD_ADVERTISE_CLIENT_URLS} \
        --initial-cluster-token=${ETCD_INITIAL_CLUSTER_TOKEN} \
        --initial-advertise-peer-urls=${ETCD_INITIAL_ADVERTISE_PEER_URLS} \
        --initial-cluster-state=${ETCD_INITIAL_CLUSTER_STATE} \
        --initial-cluster=${ETCD_INITIAL_CLUSTER}
    
    
    Restart=on-failure
    LimitNOFILE=65536
    
    [Install]
    WantedBy=multi-user.target
    
  2. slave1節(jié)點(diǎn)佑笋,配置文件如下所示:

    [root@slave1 lib]# more /lib/systemd/system/etcd.service 
    [Unit]
    Description=Etcd Server
    After=network.target
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=notify
    WorkingDirectory=/var/lib/etcd/
    EnvironmentFile=-/etc/etcd/etcd.conf
    User=root
    # set GOMAXPROCS to number of processors
    ExecStart=/usr/bin/etcd  \
        --name=${ETCD_NAME} \
        --data-dir=${ETCD_DATA_DIR} \
        --listen-client-urls=${ETCD_LISTEN_CLIENT_URLS} \
        --listen-peer-urls=${ETCD_LISTEN_PEER_URLS} \
        --advertise-client-urls=${ETCD_ADVERTISE_CLIENT_URLS} \
        --initial-cluster-token=${ETCD_INITIAL_CLUSTER_TOKEN} \
        --initial-advertise-peer-urls=${ETCD_INITIAL_ADVERTISE_PEER_URLS} \
        --initial-cluster-state=${ETCD_INITIAL_CLUSTER_STATE} \
        --initial-cluster=${ETCD_INITIAL_CLUSTER}
    
    Restart=on-failure
    LimitNOFILE=65536
    
    [Install]
    WantedBy=multi-user.target
    
  3. slave2節(jié)點(diǎn),配置文件如下所示:

    [root@slave2 ~]# more /lib/systemd/system/etcd.service 
    [Unit]
    Description=Etcd Server
    After=network.target
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=notify
    WorkingDirectory=/var/lib/etcd/
    EnvironmentFile=-/etc/etcd/etcd.conf
    User=root
    # set GOMAXPROCS to number of processors
    ExecStart=/usr/bin/etcd  \
        --name=${ETCD_NAME} \
        --data-dir=${ETCD_DATA_DIR} \
        --listen-client-urls=${ETCD_LISTEN_CLIENT_URLS} \
        --listen-peer-urls=${ETCD_LISTEN_PEER_URLS} \
        --advertise-client-urls=${ETCD_ADVERTISE_CLIENT_URLS} \
        --initial-cluster-token=${ETCD_INITIAL_CLUSTER_TOKEN} \
        --initial-advertise-peer-urls=${ETCD_INITIAL_ADVERTISE_PEER_URLS} \
        --initial-cluster-state=${ETCD_INITIAL_CLUSTER_STATE} \
        --initial-cluster=${ETCD_INITIAL_CLUSTER}
    
    
    Restart=on-failure
    LimitNOFILE=65536
    
    [Install]
    WantedBy=multi-user.target
    

3.2.2 更新etcd.conf

  1. master節(jié)點(diǎn)斑鼻,配置文件如下所示:

    [root@master lib]# more /etc/etcd/etcd.conf 
    #[Member]
    ETCD_DATA_DIR="/var/lib/etcd-jingtai/data"
    ETCD_LISTEN_PEER_URLS="http://172.16.91.195:2380"
    ETCD_LISTEN_CLIENT_URLS="http://127.0.0.1:2379,http://172.16.91.195:2379"
    ETCD_NAME="master"
    
    #[Clustering]
    ETCD_INITIAL_ADVERTISE_PEER_URLS="http://172.16.91.195:2380"
    ETCD_ADVERTISE_CLIENT_URLS="http://127.0.0.1:2379,http://172.16.91.195:2379"
    ETCD_INITIAL_CLUSTER="master=http://172.16.91.195:2380,slave1=http://172.16.91.196:2380,slave2=http://172.16.91.197:2380"
    ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster001"
    ETCD_INITIAL_CLUSTER_STATE="new"
    
  2. slave1節(jié)點(diǎn)蒋纬,配置文件如下所示:

    [root@slave1 etcd-jingtai]# more /etc/etcd/etcd.conf 
    #[Member]
    ETCD_DATA_DIR="/var/lib/etcd-jingtai/data"
    ETCD_LISTEN_PEER_URLS="http://172.16.91.196:2380"
    ETCD_LISTEN_CLIENT_URLS="http://127.0.0.1:2379,http://172.16.91.196:2379"
    ETCD_NAME="slave1"
    
    #[Clustering]
    ETCD_INITIAL_ADVERTISE_PEER_URLS="http://172.16.91.196:2380"
    ETCD_ADVERTISE_CLIENT_URLS="http://127.0.0.1:2379,http://172.16.91.196:2379"
    ETCD_INITIAL_CLUSTER="master=http://172.16.91.195:2380,slave1=http://172.16.91.196:2380,slave2=http://172.16.91.197:2380"
    ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster001"
    ETCD_INITIAL_CLUSTER_STATE="new"
    
  3. slave2節(jié)點(diǎn),配置文件如下所示:

    [root@slave2 ~]# more /etc/etcd/etcd.conf 
    #[Member]
    ETCD_DATA_DIR="/var/lib/etcd-jingtai/data"
    ETCD_LISTEN_PEER_URLS="http://172.16.91.197:2380"
    ETCD_LISTEN_CLIENT_URLS="http://127.0.0.1:2379,http://172.16.91.197:2379"
    ETCD_NAME="slave2"
    
    #[Clustering]
    ETCD_INITIAL_ADVERTISE_PEER_URLS="http://172.16.91.197:2380"
    ETCD_ADVERTISE_CLIENT_URLS="http://127.0.0.1:2379,http://172.16.91.197:2379"
    ETCD_INITIAL_CLUSTER="master=http://172.16.91.195:2380,slave1=http://172.16.91.196:2380,slave2=http://172.16.91.197:2380"
    ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster001"
    ETCD_INITIAL_CLUSTER_STATE="new"
    

3.3 重啟etcd服務(wù)

  1. 創(chuàng)建data目錄

mkdir -p /var/lib/etcd-jingtai/data

  1. 啟動(dòng)服務(wù)

systemctl daemon-reload
systemctl enable etcd
systemctl start etcd
systemctl status etcd

四坚弱、測(cè)試etcd服務(wù)

查看服務(wù)狀態(tài)


image

五蜀备、問(wèn)題列表

  1. request sent was ignored (cluster ID mismatch: peer[3fc33c18ca0433f2]=3b1291d31874b132, local=9818358e4a92d2d9) request cluster ID mismatch (got 9818358e4a92d2d9 want 3b29dfa314757683)
    現(xiàn)象是: 一個(gè)etcd集群里,有兩個(gè)leader荒叶, 或者說(shuō)碾阁,這兩個(gè)etcd實(shí)例有各自的集群ID,
    第3個(gè)etcd實(shí)例停撞,分別向這兩個(gè)發(fā)送請(qǐng)求

    master

    slave1

    slave2

    原因:
    在搭建集群前,先進(jìn)行了單實(shí)例的etcd部署測(cè)試悼瓮, 即master, slave1節(jié)點(diǎn)分別進(jìn)行了單實(shí)例部署測(cè)試戈毒,
    也就是歷史數(shù)據(jù)的影響。
    刪除歷史數(shù)據(jù)即可横堡。
    rm -rf /var/lib/etcd/*

六埋市、說(shuō)明:

在部署過(guò)程中,遇到的主要問(wèn)題有:

  • 配置文件名稱寫錯(cuò)了

  • etcd.service里命贴,啟動(dòng)服務(wù)ExecStart里不能有空白行道宅,注釋

  • 權(quán)限問(wèn)題,User=etcd,改成root
    recognized environment variable ETCD_DATA_DIR, but unused: shadowed by corresponding flag

    user設(shè)置錯(cuò)誤.jpg

    默認(rèn)是etcd胸蛛,導(dǎo)致污茵,啟動(dòng)失敗。當(dāng)然葬项,也可以修改ETCD_DATA_DIR的權(quán)限泞当,或者所有者

  • 歷史數(shù)據(jù)的影響

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市民珍,隨后出現(xiàn)的幾起案子襟士,更是在濱河造成了極大的恐慌,老刑警劉巖嚷量,帶你破解...
    沈念sama閱讀 206,602評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件陋桂,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡蝶溶,警方通過(guò)查閱死者的電腦和手機(jī)嗜历,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人秸脱,你說(shuō)我怎么就攤上這事落包。” “怎么了摊唇?”我有些...
    開(kāi)封第一講書人閱讀 152,878評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵咐蝇,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我巷查,道長(zhǎng)有序,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 55,306評(píng)論 1 279
  • 正文 為了忘掉前任岛请,我火速辦了婚禮旭寿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘崇败。我一直安慰自己盅称,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,330評(píng)論 5 373
  • 文/花漫 我一把揭開(kāi)白布后室。 她就那樣靜靜地躺著缩膝,像睡著了一般。 火紅的嫁衣襯著肌膚如雪岸霹。 梳的紋絲不亂的頭發(fā)上疾层,一...
    開(kāi)封第一講書人閱讀 49,071評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音贡避,去河邊找鬼痛黎。 笑死,一個(gè)胖子當(dāng)著我的面吹牛刮吧,可吹牛的內(nèi)容都是我干的湖饱。 我是一名探鬼主播,決...
    沈念sama閱讀 38,382評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼杀捻,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼琉历!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起水醋,我...
    開(kāi)封第一講書人閱讀 37,006評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤旗笔,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后拄踪,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體蝇恶,經(jīng)...
    沈念sama閱讀 43,512評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,965評(píng)論 2 325
  • 正文 我和宋清朗相戀三年惶桐,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了撮弧。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片潘懊。...
    茶點(diǎn)故事閱讀 38,094評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖贿衍,靈堂內(nèi)的尸體忽然破棺而出授舟,到底是詐尸還是另有隱情,我是刑警寧澤贸辈,帶...
    沈念sama閱讀 33,732評(píng)論 4 323
  • 正文 年R本政府宣布释树,位于F島的核電站,受9級(jí)特大地震影響擎淤,放射性物質(zhì)發(fā)生泄漏奢啥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,283評(píng)論 3 307
  • 文/蒙蒙 一嘴拢、第九天 我趴在偏房一處隱蔽的房頂上張望桩盲。 院中可真熱鬧,春花似錦席吴、人聲如沸赌结。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,286評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)柬姚。三九已至,卻和暖如春迈倍,著一層夾襖步出監(jiān)牢的瞬間伤靠,已是汗流浹背捣域。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,512評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工啼染, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人焕梅。 一個(gè)月前我還...
    沈念sama閱讀 45,536評(píng)論 2 354
  • 正文 我出身青樓迹鹅,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親贞言。 傳聞我的和親對(duì)象是個(gè)殘疾皇子斜棚,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,828評(píng)論 2 345

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

  • [root@all softs]# yum install etcd -y [root@all softs]# m...
    amoyzhu閱讀 4,037評(píng)論 0 1
  • Kubernetes作為容器應(yīng)用的管理中心,通過(guò)對(duì)Pod的數(shù)量進(jìn)行監(jiān)控该窗,并且根據(jù)主機(jī)或容器失效的狀態(tài)將新的Pod調(diào)...
    輝耀輝耀閱讀 4,593評(píng)論 0 13
  • from http://www.infoq.com/cn/articles/etcd-interpretation...
    小樹(shù)苗苗閱讀 13,940評(píng)論 3 38
  • 前言 嘗到k8s甜頭以后弟蚀,我們就想著應(yīng)用到生產(chǎn)環(huán)境里去,以提高業(yè)務(wù)迭代效率酗失,可是部署在生產(chǎn)環(huán)境里有一個(gè)要求义钉,就是k...
    我的橙子很甜閱讀 12,888評(píng)論 0 15
  • 深秋將至,北方的秋雨緊跟著中秋的到來(lái)一場(chǎng)接著一場(chǎng)规肴,寒冷的氣息愈來(lái)愈強(qiáng)烈捶闸。中秋夜的小鎮(zhèn)沒(méi)有月光夜畴,沒(méi)有賞月的行人,燈下...
    南漂先生閱讀 216評(píng)論 0 1