快速搭建ETCD集群

2018-01-08 13:47:52来源:网络收集作者:程序诗人人点击

分享

阿里云爆款
准备


  准备三台可以互相的访问的Linux机器,这里全部以Centos 7为例:


node1-192.168.22.117


node2-192.168.22.118


node3-192.168.22.119


  关闭这三台机器的防火墙:


systemctl disable firewalld.service
systemctl stop firewalld.service
安装


  三台机器都需要安装ETCD,可以采用下载二进制代码的方式来安装etcd:


wget https://github.com/coreos/etcd/releases/download/v3.2.13/etcd-v3.2.13-linux-amd64.tar.gz
tar -xvf etcd-v3.2.13-linux-amd64.tar.gz
mv etcd-v3.2.13-linux-amd64/etcd* /usr/bin

  建议使用yum的安装方式:


yum -y install etcd
配置


  无论采用哪种方式,最后都需要配置 /usr/lib/systemd/system/etcd.service 和 /etc/etcd/etcd.config 这两个文件。


  使用vi编辑器打开或者创建etcd.service文件:


vi /usr/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=etcd
# set GOMAXPROCS to number of processors
ExecStart=/bin/bash -c "GOMAXPROCS=$(nproc) /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-cluster=/"${ETCD_INITIAL_CLUSTER}/" --initial-cluster-state=/"${ETCD_INITIAL_CLUSTER_STATE}/" "
Restart=on-failure
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target

  使用vi编辑器打开或者创建etcd.conf文件:


vi /etc/etcd/etcd.config

  根据自己实际ip地址修改如下文件:


ETCD_NAME=node1
ETCD_DATA_DIR="/var/lib/etcd/etcd01"
ETCD_LISTEN_PEER_URLS="http://192.168.22.117:2380"
ETCD_LISTEN_CLIENT_URLS="http://192.168.22.117:2379,http://127.0.0.1:2379"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.22.117:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.22.117:2379"
ETCD_INITIAL_CLUSTER_STATE="new"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_INITIAL_CLUSTER="node1=http://192.168.22.117:2380,node2=http://192.168.22.118:2380,node3=http://192.168.22.119:2380"

三台机器的ETCD_NAME需要不同,如:node1、node2、node3。ETCD_DATA_DIR也做相应的修改,如:”/var/lib/etcd/etcd01”、”/var/lib/etcd/etcd02”、”/var/lib/etcd/etcd03”。ETCD_INITIAL_CLUSTER需要配置这三台机器所有的ip地址。


添加服务


  安装并配置完成etcd后,分别为三台机器添加etcd服务,设置自动启动:


systemctl daemon-reload
systemctl start etcd
systemctl enable etcd

  服务启动成功后,查看etcd各个节点状态:


etcdctl member list快速搭建ETCD集群

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台