首页 > 其他分享 >etcd集群新增节点和移除节点

etcd集群新增节点和移除节点

时间:2024-09-06 11:25:12浏览次数:18  
标签:-- 192.168 port ssl etcd 移除 data 节点

etcd集群新增节点和删除节点

现在的集群信息是:

 

新增节点

  1、下载etcd二进制包

wget https://github.com/etcd-io/etcd/releases/download/v3.5.15/etcd-v3.5.15-linux-amd64.tar.gz

  

  2、创建etcd目录

mkdir -p /data/etcd/{data,ssl,bin}

  

  3、解压并移动etcd命令至etcd目录

tar zxf etcd-v3.5.15-linux-amd64.tar.gz
cp etcd-v3.5.15-linux-amd64/etcd* /data/etcd/bin/

  

  4、配置环境变量

echo "export PATH=/data/etcd/bin:\$PATH" > /etc/profile.d/etcd.sh
source /etc/profile.d/etcd.sh

  

  5、cp证书文件

scp  etcd1:/data/etcd/ssl/*.pem /data/etcd/ssl/

  

  6、复制配置文件

scp etcd1:/usr/lib/systemd/system/etcd.service /usr/lib/systemd/system/

  

  7、修改配置文件

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

[Service]
Type=notify
ExecStart=/data/etcd/bin/etcd \
--name=etcd4 \
--cert-file=/data/etcd/ssl/server.pem \
--key-file=/data/etcd/ssl/server-key.pem \
--peer-cert-file=/data/etcd/ssl/server.pem \
--peer-key-file=/data/etcd/ssl/server-key.pem \
--trusted-ca-file=/data/etcd/ssl/ca.pem \
--peer-trusted-ca-file=/data/etcd/ssl/ca.pem \
--peer-client-cert-auth \
--client-cert-auth \
--initial-advertise-peer-urls=https://192.168.110.17:2380 \
--listen-peer-urls=https://192.168.110.17:2380 \
--listen-client-urls=https://192.168.110.17:2379,https://127.0.0.1:2379 \
--advertise-client-urls=https://192.168.110.17:2379 \
--initial-cluster-token=etcd-cluster-1 \
--initial-cluster=etcd1=https://192.168.110.12:2380,etcd2=https://192.168.110.13:2380,etcd3=https://192.168.110.15:2380,etcd4=https://192.168.110.17:2380 \
--initial-cluster-state=existing \
--data-dir=/data/etcd/data

Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

  红色位置为需要修改的配置,绿色位置为新增配置。

 

  8、配置防火墙信息

  etcd1-3

firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.17" port protocol="tcp" port="2379" accept'
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.17" port protocol="tcp" port="2380" accept
firewall-cmd --reload

  etcd4

firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.12" port protocol="tcp" port="2379" accept'
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.12" port protocol="tcp" port="2380" accept
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.13" port protocol="tcp" port="2379" accept'
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.13" port protocol="tcp" port="2380" accept
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.15" port protocol="tcp" port="2379" accept'
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.15" port protocol="tcp" port="2380" accept
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.17" port protocol="tcp" port="2379" accept'
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.110.17" port protocol="tcp" port="2380" accept
firewall-cmd --reload

 

  9、加入新节点到集群中

  在etcd1-3中任何一个节点上操作一次即可

etcdctl --endpoints=https://192.168.110.13:2379 --cacert=/data/etcd/ssl/ca.pem --cert=/data/etcd/ssl/server.pem --key=/data/etcd/ssl/server-key.pem member add etcd4 --peer-urls=https://192.168.110.17:2380

 

  10、启动新节点

systemctl start etcd
systemctl enable etcd

 

  11、查看集群信息

etcdctl --endpoints=https://192.168.110.12:2379 --cacert=/data/etcd/ssl/ca.pem --cert=/data/etcd/ssl/server.pem --key=/data/etcd/ssl/server-key.pem member list

 

移除节点

  1、查看需要移除的节点ID

etcdctl --endpoints=https://192.168.110.12:2379 --cacert=/data/etcd/ssl/ca.pem --cert=/data/etcd/ssl/server.pem --key=/data/etcd/ssl/server-key.pem member list

  

  2、根据ID移除节点

etcdctl --endpoints=https://192.168.110.12:2379 --cacert=/data/etcd/ssl/ca.pem --cert=/data/etcd/ssl/server.pem   --key=/data/etcd/ssl/server-key.pem member remove 5e994a4b4e60b7c9

 

重新加入被之前移除的节点

  1、修改节点启动配置

   initial-cluster-state参数的值需要修改为:existing

 

  2、需要清空数据目录  

rm -rf /data/etcd/data/*

  

  3、执行加入新节点命令后再启动新节点的etcd服务

 

 

标签:--,192.168,port,ssl,etcd,移除,data,节点
From: https://www.cnblogs.com/NanZhiHan/p/18399906

相关文章

  • 记一次阿里云搭建K8S在恢复镜像快照之后etcd一个节点无法启动问题
    环境查看系统环境#cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)#uname-aLinuxCentOS7K8SMaster010051013.10.0-1160.114.2.el7.x86_64#1SMPWedMar2015:54:52UTC2024x86_64x86_64x86_64GNU/Linux软件环境#kubectlversionClientVe......
  • 【数据结构】二叉树的链式结构,二叉树的遍历,求节点个数以及高度
    目录1.二叉树链式结构的概念2.二叉树的遍历2.1前序遍历2.2中序遍历2.3后序遍历2.4层序遍历3.二叉树的节点个数以及高度3.1二叉树节点个数3.2 二叉树叶子节点个数3.3二叉树的高度3.4 二叉树第k层节点个数3.5 二叉树查找值为x的节点4. 二叉树的创建和......
  • 使用CJson编写多个节点嵌套的程序代码
    CJson(或者更常见的名称可能是cJSON,一个流行的C语言JSON解析库)允许你以程序化的方式处理JSON数据,包括创建、解析、修改和删除JSON对象。这里我将展示如何使用cJSON库来创建一个包含多个嵌套节点的JSON对象。首先,确保你已经安装了cJSON库。如果你使用的是像Ubuntu这样的Linux......
  • 部署K8S集群(三):子节点部署及加入集群
    子节点:安装kubeletkubeadmkubectlyuminstall-ykubeletkubeadmkubectl安装containerd下载地址:https://github.com/containerd/containerd/releases找到标签为Latest的包,根据系统类型下载对应的包#解压tarCxzvf/usr/localcontainerd-1.7.21-linux-amd64.tar.g......
  • 部署K8S集群(二):主节点初始化
    主节点:以下操作只在master进行安装kubeletkubeadmkubectlyuminstall-ykubeletkubeadmkubectl安装containerd下载地址:https://github.com/containerd/containerd/releases找到标签为Latest的包,根据系统类型下载对应的包#解压tarCxzvf/usr/localcontainerd-1......
  • Prometheus通过node_exporter监控Node节点,Node节点的详细指标解读
    ✨✨欢迎大家来到景天科技苑✨✨......
  • MongoDB单节点部署与基本操作
    MongoDB7.0单节点部署与MongoDBshell基本操作部署准备:1、操作系统:CentOS7.9 2、在操作系统中,创建一个mongod的用户和用户组,并配置其sudo权限,如果使用root用户可以不考虑准备此项。3、mongodb服务二进制包:mongodb-linux-x86_64-rhel70-7.0.14.tgz。下载地......
  • redis-cli创建Redis集群时显式指定主从节点
    背景前些年用python写过一个RedisCluster自动化安装,扩容和缩容的工具,虽然当时官方的的redis-trib.rb集群创建工具提供了集群创建、检查、修复、均衡等命令行功能,个人接受不了redis-trib.rb,原因在于redis-trib.rb需要ruby的环境,同时无法自定义指定集群中节点的主从关系。随后R......
  • [Python图论]在用图nx.shortest_path求解最短路径时,节点之间有多条边edge,会如何处理?
    问:在使用图求最短路径时,如果节点之间有多条路径,shortest_route=nx.shortest_path(G,source=start_node,target=end_node,weight='length')会如何处理,会自动选择最短那条吗?#输出图G各节点之间有多少条边edge,并给出其长度Edgesbetween103928and25508583:共2条Edge......