etcd 添加新节点或修复节点操作类似----整个集群坏了

http://www.mamicode.com/info-detail-1737556.html

master:etcd.conf

ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_PEER_URLS="http://0.0.0.0:2380"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379,http://0.0.0.0:4001"
ETCD_NAME="k8s-master-116"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://etcd-116:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://etcd-116:2379,http://etcd-116:4001"
ETCD_INITIAL_CLUSTER="k8s-master-116=http://etcd-116:2380,k8s-produce-117=http://etcd-117:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_INITIAL_CLUSTER_STATE="new"

node1:

ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_PEER_URLS="http://0.0.0.0:2380"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379,http://0.0.0.0:4001"
ETCD_NAME="k8s-produce-117"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://etcd-117:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://etcd-117:2379,http://etcd-117:4001"
ETCD_INITIAL_CLUSTER="k8s-master-116=http://etcd-116:2380,k8s-produce-117=http://etcd-117:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_INITIAL_CLUSTER_STATE="new"
master:systemctl start etcd

node1:systemctl start etcd

添加节点:

在master或node1上面添加新节点:

[root@k8s-produce-117 etcd]# etcdctl member add k8s-produce-118 http://etcd-118:2380
Added member named k8s-produce-118 with ID cbed7cc31d20ceb9 to cluster

ETCD_NAME="k8s-produce-118"
ETCD_INITIAL_CLUSTER="k8s-produce-117=http://etcd-117:2380,k8s-master-116=http://etcd-116:2380,k8s-produce-118=http://etcd-118:2380"
ETCD_INITIAL_CLUSTER_STATE="existing"

把上面信息复制相应的到新节点的etcd.conf配置中

node2:

ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_PEER_URLS="http://0.0.0.0:2380"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379,http://0.0.0.0:4001"
ETCD_NAME="k8s-produce-118"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://etcd-118:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://etcd-118:2379,http://etcd-118:4001"
ETCD_INITIAL_CLUSTER="k8s-master-116=http://etcd-116:2380,k8s-produce-117=http://etcd-117:2380,k8s-produce-118=http://etcd-118:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_INITIAL_CLUSTER_STATE="existing"

systemctl start etcd

添加成功

=====================================

假如有个节点坏了。

1、在坏的节点上面
    systemctl stop etcd;rm -rf /var/lib/etcd/*
2、在好的节点上面
    etcdctl member remove id 移除
    etcdctl member add k8s-produce-117 http://etcd-117:2380 添加
3、启动坏的节点
    systemctl start etcd
    

9,故障排查

注意各节点时钟相差过大导致集群建立不起来,所以需要先做时钟同步,默认1s内时差才能成功

注意如果其中有etcd节点启动不起来,可以etcdctl rember delete 后重新添加,删除时清空/data/etcd数据,注意至少要有一份数据保存,这样才能同步到其他节点

===================

整个集群坏了

发布了459 篇原创文章 · 获赞 118 · 访问量 82万+

猜你喜欢

转载自blog.csdn.net/Michaelwubo/article/details/92796426