# 我們將在我們的三臺master上搭建三個節點的etcd集群:
1. 我們為了不消耗性能,所以etcd不用證書驗證權限
2. 到 https://github.com/coreos/etcd/releases 頁面下載最新版本的二進制文件
~~~
wget https://github.com/coreos/etcd/releases/download/v3.1.5/etcd-v3.1.5-linux-amd64.tar.gz
tar -xvf etcd-v3.1.5-linux-amd64.tar.gz
mv etcd-v3.1.5-linux-amd64/etcd* /opt/kubernetes/bin/
chmod +x etcd*
~~~
1. 下面給出配置文件,以及啟動文件:
~~~
master1:
配置文件:/etc/kubernetes/cfg/etcd.conf
啟動文件:/lib/systemd/system/etcd.service
創建存放數據的文件:mkidr -pv /data/etcd
~~~
**#cat etcd.conf**
~~~
ETCD_NAME=etcd1
ETCD_DATA_DIR="/data/etcd"
ETCD_LISTEN_CLIENT_URLS="http://192.168.11.212:2379,http://127.0.0.1:2379"
ETCD_LISTEN_PEER_URLS="http://192.168.11.213:2380"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.11.214:2380"
ETCD_INITIAL_CLUSTER="etcd1=http://192.168.11.212:2380,etcd2=http://192.168.11.213:2380,etcd3=http://192.168.11.214:2380"
ETCD_INITIAL_CLUSTER_STATE="new"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.11.214:2379"
我們知道ubuntu中服務的啟動文件放在/lib/systemd/system/ 目錄中
#cd /lib/systemd/system/
#cat etcd.service
[Unit]
Description=Etcd Server
After=network.target
[Service]
Type=simple
WorkingDirectory=/var/lib/etcd
EnvironmentFile=-/opt/kubernetes/cfg/etcd.conf
##set GOMAXPROCS to number of processors
ExecStart=/bin/bash -c "GOMAXPROCS=$(nproc) /opt/kubernetes/bin/etcd"
Type=notify
[Install]
WantedBy=multi-user.target
~~~
* * * * *
創建完后,別急著啟動,等其余兩臺都配置好了啟動文件后,一同啟動,另外兩臺的配置和第一臺大致相同,注意ETCD_NAME一定要改成對應的。
**# etcdctl cluster-health 運行此命令可以查看etcd集群是否健康**