1.搭建etcd集群

1.ectd概述

etcd是一个分布式键值存储,它提供了一种在一组机器上存储数据的可靠方法。它是开源的,可在GitHub上获得。etcd在网络分区期间优雅地处理领导者选举,并且可以容忍机器故障,包括领导者。

您的应用程序可以将数据读写到etcd中。一个简单的用例是将etcd中的数据库连接详细信息或功能标记存储为键值对。可以监视这些值,允许您的应用在更改时重新配置。

高级用法利用一致性保证来实现数据库领导者选举或跨工作集群进行分布式锁定。

 

etcd的特性

 

和同类产品的对比

 

为什么选用etcd

本计划使用consul的,但是考虑到k8s默认使用etcd进行存储.所以这里也使用etcd来做存储和服务发现

 

2.搭建一个集群版的etcd

2.1使用yum安装etcd

yum install etcd -y

2.2 配置etcd

分别在各个节点上备份配置文件后清空原始配置文件

主要是方便后续写入新的配置文件

cd /etc/etcd/
cp etcd.conf etcd.conf.bak
cat /dev/null > /etc/etcd/etcd.conf

 

 
master1节点
# 节点名称
ETCD_NAME=master1
# 数据库存放位置
ETCD_DATA_DIR="/var/lib/etcd/etcd"
# 监听其他 Etcd 实例地址
ETCD_LISTEN_PEER_URLS="http://192.168.161.128:2380"
# 监听客户端地址
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379,http://0.0.0.0:4001"
# 通知其他 Etcd 实例地址
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.161.128:2380"
# 初始化集群内节点地址
ETCD_INITIAL_CLUSTER="master1=http://192.168.161.128:2380,master2=http://192.168.161.129:2380,master3=http://192.168.161.130:2380"   
# 初始化集群状态,new 表示新建
ETCD_INITIAL_CLUSTER_STATE="new"
# 初始化集群 token
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-token"
# 通知客户端地址
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.161.128:2379"

 

master2节点
# 节点名称
ETCD_NAME=master2
# 数据库存放位置
ETCD_DATA_DIR="/var/lib/etcd/etcd"
# 监听其他 Etcd 实例地址
ETCD_LISTEN_PEER_URLS="http://192.168.161.129:2380"
# 监听客户端地址
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379,http://0.0.0.0:4001"
# 通知其他 Etcd 实例地址
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.161.129:2380"
# 初始化集群内节点地址
ETCD_INITIAL_CLUSTER="master1=http://192.168.161.128:2380,master2=http://192.168.161.129:2380,master3=http://192.168.161.130:2380"   
# 初始化集群状态,new 表示新建
ETCD_INITIAL_CLUSTER_STATE="new"
# 初始化集群 token
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-token"
# 通知客户端地址
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.161.129:2379"

 

master3
# 节点名称
ETCD_NAME=master3
# 数据库存放位置
ETCD_DATA_DIR="/var/lib/etcd/etcd"
# 监听其他 Etcd 实例地址
ETCD_LISTEN_PEER_URLS="http://192.168.161.130:2380"
# 监听客户端地址
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379,http://0.0.0.0:4001"
# 通知其他 Etcd 实例地址
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.161.130:2380"
# 初始化集群内节点地址
ETCD_INITIAL_CLUSTER="master1=http://192.168.161.128:2380,master2=http://192.168.161.129:2380,master3=http://192.168.161.130:2380"   
# 初始化集群状态,new 表示新建
ETCD_INITIAL_CLUSTER_STATE="new"
# 初始化集群 token
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-token"
# 通知客户端地址
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.161.130:2379"

 

3.常用命令

设置开机启动:
systemctl enable etcd

启动etcd:
systemctl start etcd

查看状态:
systemctl status etcd

列出节点成员:
etcdctl member list

查看节点监控状态:
etcdctl cluster-health

 

转载于:https://www.cnblogs.com/gytangyao/p/10824456.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值