k8s集群中etcd的备份与恢复

这篇具有很好参考价值的文章主要介绍了k8s集群中etcd的备份与恢复。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

etcd备份与恢复

  1. 创建备份目录mkdir /var/lib/etcd_backup
  2. 从etcd中的一个正常节点上备份etcd数据
ETCDCTL_API=3 /opt/etcd/bin/etcdctl \
--cacert=/opt/etcd/ssl/ca.pem \
--cert=/opt/etcd/ssl/server.pem \
--key=/opt/etcd/ssl/server-key.pem \
--endpoints=https://192.168.113.4:2379 \
snapshot save /var/lib/etcd_backup/etcd_20230616.db
  1. 停止所节点的kube-apiserver和etcd
systemctl stop kube-apiserver && systemctl stop etcd
  1. 备份原始etcd的路径中的文件
mv /var/lib/etcd/default.etcd /var/lib/etcd/default.etcd_bak
  1. 所有节点恢复etcd数据库

master01执行{etcd01节点}

ETCDCTL_API=3  /opt/etcd/bin/etcdctl snapshot restore  /var/lib/etcd_backup/etcd_20230616.db --cacert=/opt/etcd/ssl/ca.pem --cert=/opt/etcd/ssl/server.pem --key=/opt/etcd/ssl/server-key.pem --name etcd-1 --initial-cluster "etcd-1=https://192.168.113.4:2380,etcd-2=https://192.168.113.6:2380,etcd-3=https://192.168.113.5:2380"  --initial-cluster-token etcd-cluster  --initial-advertise-peer-urls https://192.168.113.4:2380  --data-dir=/var/lib/etcd/default.etcd

work01执行{etcd02节点}

ETCDCTL_API=3  /opt/etcd/bin/etcdctl snapshot restore  /var/lib/etcd_backup/etcd_20230616.db --cacert=/opt/etcd/ssl/ca.pem --cert=/opt/etcd/ssl/server.pem --key=/opt/etcd/ssl/server-key.pem --name etcd-3 --initial-cluster "etcd-1=https://192.168.113.4:2380,etcd-2=https://192.168.113.6:2380,etcd-3=https://192.168.113.5:2380"  --initial-cluster-token etcd-cluster  --initial-advertise-peer-urls https://192.168.113.5:2380  --data-dir=/var/lib/etcd/default.etcd

work02执行{etcd03节点}

ETCDCTL_API=3  /opt/etcd/bin/etcdctl snapshot restore  /var/lib/etcd_backup/etcd_20230616.db --cacert=/opt/etcd/ssl/ca.pem --cert=/opt/etcd/ssl/server.pem --key=/opt/etcd/ssl/server-key.pem --name etcd-2 --initial-cluster "etcd-1=https://192.168.113.4:2380,etcd-2=https://192.168.113.6:2380,etcd-3=https://192.168.113.5:2380"  --initial-cluster-token etcd-cluster  --initial-advertise-peer-urls https://192.168.113.6:2380  --data-dir=/var/lib/etcd/default.etcd
  1. 为目录赋予权限
  2. 每个节点启动etcd
systemctl start etcd
  1. 查看状态
ETCDCTL_API=3 /opt/etcd/bin/etcdctl \
--cacert=/opt/etcd/ssl/ca.pem \
--cert=/opt/etcd/ssl/server.pem \
--key=/opt/etcd/ssl/server-key.pem \
--endpoints=https://192.168.113.4:2379,https://192.168.113.6:2379,https://192.168.113.5:2379 \
endpoint health --write-out=table
  1. 启动kubeapi-server
systemctl start kube-apiserver

10.查看k8s集群状态文章来源地址https://www.toymoban.com/news/detail-509712.html

kubectl get cs

到了这里,关于k8s集群中etcd的备份与恢复的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s中部署etcd集群

            Etcd是一个高可用的 、 开源的、分布式的Key/value存储系统 , 提供共享配置、服务的注册和发现、数据TTL失效、数据改变监视、多值、目录监听、分布式原子锁操作等功能 。 通常,k8s使用etcd进行数据存储,本文将部署etcd集群用做应用的存储。 一、前提         部

    2024年02月08日
    浏览(36)
  • 【云原生K8s】二进制部署单master K8s+etcd集群

                                                    mater节点 master01 192.168.190.10 kube-apiserver kube-controller-manager kube-scheduler etcd                                                 node节点 node01 192.168.190.20 kubelet kube-proxy docker (容器引擎) node02 192.168.190.30 kubelet kube-proxy do

    2024年02月14日
    浏览(41)
  • 基于k8s集群容器化部署etcd集群和apisix服务

    创建StorageClass,支持动态pvc创建,StorageClass使用nfs-client,同时使用华为云sfs作为数据持久化存储目录 角色认证(rabc.yaml) 创建nfs-provisioner(nfs-provisioner.yaml) 设置nfs-client(nfs-client.yaml) 创建svc,后续apisix中会使用到(svc.yaml) 挨个执行以上yaml文件,kubectl apply -f ***.yaml 创建etcd有状态服务(e

    2024年01月19日
    浏览(29)
  • 二进制搭建k8s集群 master和etcd

    etcd作为服务发现系统,有以下的特点: 简单:安装配置简单,而且提供了HTTP API进行交互,使用也很简单。 安全:支持SSL证书验证。 快速:单实例支持每秒2k+读操作。 可靠:采用raft算法,实现分布式系统数据的可用性和一致性。 etcd目前默认使用2379端口提供HTTP API服务,

    2024年02月12日
    浏览(34)
  • K8S集群etcd 某个节点数据不一致如何修复 —— 筑梦之路

      二进制方式安装的k8s集群,etcd集群有3个节点,某天有一台机器hang住了,无法远程ssh登陆,于是被管理员直接重启了,重启后发现k8s集群删除一个deployment应用,多次刷新一会有,一会没有,于是在3个节点上执行etcd命令去查询该数据,发现被重启的节点上仍存在删除的该应

    2024年02月05日
    浏览(26)
  • k8s mysql集群 & 分布式锁 & apiserver & etcd 的关系

    在 Kubernetes (k8s) 中,MySQL 集群可以使用分布式锁来确保在多个实例之间对共享资源的互斥访问。这是通过结合 Kubernetes API Server 和 etcd 来实现的。 Kubernetes API Server 是 k8s 集群中的核心组件之一,它充当了集群的控制平面,提供了对集群资源的管理和操作接口。API Server 是一个

    2024年02月07日
    浏览(39)
  • velero备份k8s集群

    本地 Velero 客户端发送备份指令。 Kubernetes 集群内就会创建一个 Backup 对象。 BackupController 监测 Backup 对象并开始备份过程。 BackupController 会向 API Server 查询相关数据。 BackupController 将查询到的数据备份到远端的对象存储。 支持kubernetes集群数据备份和恢复 支持将备份好的数据

    2024年02月06日
    浏览(34)
  • k8s集群异常恢复

    前提、我自己的k8s采用的是单master节点+两个从节点部署,我针对单master情况进行恢复说明 场景一:正常开关虚拟机,可直接重启kubelet进行恢复 1、1、一般重启后三个节点都需要检查,输入命令检查kubelet: 2、状态不正常,输入命令启动kubelet: 3、正常情况下,启动kubelet后,

    2024年01月23日
    浏览(33)
  • etcd在高磁盘IO的情况下会导致K8S集群不可用的解决思路

    etcd是Kubernetes中用于存储集群状态信息的关键组件。高磁盘IO可能导致etcd性能下降,从而影响整个Kubernetes集群的稳定性。解决这个问题可以从多个方面入手: 优化etcd配置 :检查etcd的配置参数,确保其与您的硬件配置和集群规模相适应。可以调整etcd的并发限制、缓存大小等

    2024年02月15日
    浏览(26)
  • K8s主机IP地址变更集群恢复

    k8s版本 v1.23.6 docker版本 20.10.6 节点名称 原IP 新IP k8s-master 192.168.6.100 192.168.6.200 k8s-node01 192.168.6.110 192.168.6.210 k8s-node02 192.168.6.120 192.168.6.220 未调整IP前集群信息如下: 调整k8s-master节点IP后,重启机器,显示如下: 1. 所有机器修改hosts解析文件  2. 把/etc/kubernetes/*.conf中所有的旧

    2024年04月28日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包