etcd3集群部署

部署环境

主机名 IP 操作系统
node201       10.0.0.201           centos 7.3 64位      
node202 10.0.0.202 centos 7.3 64位
node203 10.0.0.203 centos 7.3 64位

停掉防火墙

systemctl stop firewalld

systemctl disable firewalld


关闭SELinux

编辑/etc/selinux/config


下载etcd

https://github.com/coreos/etcd/releases

cd /usr/local/src

wget https://github.com/coreos/etcd/releases/download/v3.1.7/etcd-v3.1.7-linux-amd64.tar.gz,也可以使用curl或aria2下载

tar zxvf etcd-v3.1.7-linux-amd64.tar.gz

cd etcd-v3.1.7-linux-amd64


添加环境变量export ETCDCTL_API=3,指定客户端工具etcdctl使用api v3和服务器程序etcd进行通信。


使用静态方式创建集群

在node201节点创建etcd.service

[Unit]
Description=Etcd Server
After=network.target
After=network-online.target
Wants=network-online.target


[Service]
Type=notify
WorkingDirectory=/usr/local/src/etcd-v3.1.7-linux-amd64
EnvironmentFile=-/usr/local/src/etcd-v3.1.7-linux-amd64/etcd.conf
# set GOMAXPROCS to number of processors
ExecStart=/usr/local/src/etcd-v3.1.7-linux-amd64/etcd \
  --name infra0 \
  --initial-advertise-peer-urls http://10.0.0.201:2380 \
  --listen-client-urls http://10.0.0.201:2379,http://127.0.0.1:2379 \
  --listen-peer-urls http://10.0.0.201:2380 \
  --advertise-client-urls http://10.0.0.201:2379 \
  --initial-cluster-token etcd-cluster1 \
  --initial-cluster infra0=http://10.0.0.201:2380,infra1=http://10.0.0.202:2380,infra2=http://10.0.0.203:2380 \
  --initial-cluster-state new
Restart=on-failure
LimitNOFILE=65536


[Install]
WantedBy=multi-user.target


在node202节点创建etcd.service

[Unit]
Description=Etcd Server
After=network.target
After=network-online.target
Wants=network-online.target

[Service]
Type=notify
WorkingDirectory=/usr/local/src/etcd-v3.1.7-linux-amd64
EnvironmentFile=-/usr/local/src/etcd-v3.1.7-linux-amd64/etcd.conf
# set GOMAXPROCS to number of processors
ExecStart=/usr/local/src/etcd-v3.1.7-linux-amd64/etcd \
  --name infra1 \
  --initial-advertise-peer-urls http://10.0.0.202:2380 \
  --listen-client-urls http://10.0.0.202:2379,http://127.0.0.1:2379 \
  --listen-peer-urls http://10.0.0.202:2380 \
  --advertise-client-urls http://10.0.0.202:2379 \
  --initial-cluster-token etcd-cluster1 \
  --initial-cluster infra0=http://10.0.0.201:2380,infra1=http://10.0.0.202:2380,infra2=http://10.0.0.203:2380 \
  --initial-cluster-state new
Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target


在节点node203创建文件etcd.service

[Unit]
Description=Etcd Server
After=network.target
After=network-online.target
Wants=network-online.target

[Service]
Type=notify
WorkingDirectory=/usr/local/src/etcd-v3.1.7-linux-amd64
EnvironmentFile=-/usr/local/src/etcd-v3.1.7-linux-amd64/etcd.conf
# set GOMAXPROCS to number of processors
ExecStart=/usr/local/src/etcd-v3.1.7-linux-amd64/etcd \
  --name infra2 \
  --initial-advertise-peer-urls http://10.0.0.203:2380 \
  --listen-client-urls http://10.0.0.203:2379,http://127.0.0.1:2379 \
  --listen-peer-urls http://10.0.0.203:2380 \
  --advertise-client-urls http://10.0.0.203:2379 \
  --initial-cluster-token etcd-cluster1 \
  --initial-cluster infra0=http://10.0.0.201:2380,infra1=http://10.0.0.202:2380,infra2=http://10.0.0.203:2380 \
  --initial-cluster-state new
Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target


在3个节点执行以下命令

cp etcd.service /usr/lib/systemd/system/

systemctl daemon-reload

systemctl enable etcd

sytemctl start etcd

etcd3集群部署_第1张图片


使用etcdctl版本2查看信息

etcd3集群部署_第2张图片

你可能感兴趣的:(----服务发现与注册)