# 我们将在我们的三台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集群是否健康**