k8s集群etcd备份与恢复

一、前言

     k8s集群使用etcd集群存储数据,如果etcd集群崩溃了,k8s集群的数据就会全部丢失,所以需要日常进行etcd集群数据的备份,预防etcd集群崩溃后可以使用数据备份进行恢复,也可用于重建k8s集群进行数据恢复

二、备份

    先安装etcd服务,k8s集群使用的pod部署etcd集群

   yum -y install etcd

   更改etcd api版本为v3(临时生效,重启后会失效)

   export ETCDCTL_API=3

   永久生效

   vi /etc/profile

export ETCDCTL_API=3    #在末尾加入该配置

使配置生效 

source /etc/profile 

   查看是否生效

   etcdctl version

   

 etcd集群数据备份,只需在一个节点上执行备份即可,因为用的是pod部署所以直接调用etcd接口进行备份

 netstat -tlpn

创建备份存放目录

mkdir -p /opt/etcd/backup/ 

执行备份命令

ETCDCTL_API=3 etcdctl --endpoints=https://127.0.0.1:2379 \
--cacert=/etc/kubernetes/pki/etcd/ca.crt \
--cert=/etc/kubernetes/pki/etcd/server.crt \
--key=/etc/kubernetes/pki/etcd/server.key \
snapshot save /opt/etcd/backup/etcdbackup.db

ls -ll  /opt/etcd/backup/

三、恢复 

    etcd集群数据恢复需要在每个etcd的节点执行数据备份的恢复,执行恢复前需要先停止etcd服务和k8s组件服务apiserver、controller-manager、scheduler即manifests目录下的所有由yaml启动的服务

ls /etc/kubernetes/manifests/

 因为是通过pod的方式直接部署,将该目录更改名称所有服务就会停止

mv /etc/kubernetes/manifests  /etc/kubernetes/manifests.bak

再把原来的etcd数据目录也备份,以免恢复出问题需要还原

mv /var/lib/etcd /var/lib/etcd.bck

恢复etcd备份数据

ETCDCTL_API=3 etcdctl snapshot restore /opt/etcd/backup/etcdbackup.db --data-dir=/var/lib/etcd

 以上恢复操作需要在每个etcd节点均需执行,执行完成后在恢复etcd和k8s组件服务的运行

将etcd和k8s组件服务恢复运行

mv /etc/kubernetes/manifests.bak  /etc/kubernetes/manifests 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2659216.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

sheng的学习笔记-卷积神经网络

源自吴恩达的深度学习课程,仅用于笔记,便于自行复习 导论 1)什么是卷积神经网络 卷积神经网络,也就是convolutional neural networks (简称CNN),使用卷积算法的神经网络,常用于计…

Pymol入门---安装Windows 多版本下载

Pymol的安装 Pymol需要Anaconda与pymol.....whl文件,Anaconda最好去下载清华提供的镜像,网速会很快 Anaconda 下载地址:点击打开链接 pymol 下载地址:点击打开链接 https://www.lfd.uci.edu/~gohlke/pythonlibs/ 1.1 获取…

【每日一题】【12.24】 - 【12.28】

🔥博客主页: A_SHOWY🎥系列专栏:力扣刷题总结录 数据结构 云计算 数字图像处理 力扣每日一题_ 本周总结:本周的每日一题比较针对于数学问题的一个应用,如二元一次方程组的求解或者数组求和,同…

SSL证书到期怎么办?续签教程一览

在网络安全中,SSL证书是确保数据传输安全的关键。然而,一旦SSL证书到期,就会导致网站的安全性受到威胁。为了保持网站的正常运行并维护用户信任,及时续签SSL证书是至关重要的。以下是一个简要的SSL证书到期后如何进行续签的教程&a…

浏览器Post请求出现413 Request Entity Too Large (Nginx)

环境 操作系统 window server 2016 前端项目 Vue2 Nginx-1.25.3 一、错误信息 前端是vue项目,打包后部署在Nginx上,前端post请求出现Request Entity Too Large错误信息。 ​这种问题一般是请求实体太大(包含参数,文件等&#xf…

vs c++mysql 配置

C/C访问MySQL数据库_c链接数据库陈子青-CSDN博客文章浏览阅读2.7k次,点赞14次,收藏65次。C/C访问MySQL数据库VS2019配置第一步:打开mysql的安装目录,默认安装目录如下:C:\Program Files\MySQL\MySQL Server 8.0&#x…

Flink项目实战篇 基于Flink的城市交通监控平台(下)

系列文章目录 Flink项目实战篇 基于Flink的城市交通监控平台(上) Flink项目实战篇 基于Flink的城市交通监控平台(下) 文章目录 系列文章目录4. 智能实时报警4.1 实时套牌分析4.2 实时危险驾驶分析4.3 出警分析4.4 违法车辆轨迹跟…

搜维尔科技:经脉腧穴虚拟针灸VR虚拟教学平台AcuMap软件案例分享

北京中医药大学经脉腧穴VR虚拟教学平台案例 主要产品 HTCvive ,AcuMap; 实施内容 一、项目说明 (1)穴位取穴与体表解剖标志关系;(2)穴下层次解剖及周围解剖结构展示; &#xf…

Tuxera NTFS for Mac2024免费Mac读写软件下载教程

在日常生活中,我们使用Mac时经常会遇到外部设备不能正常使用的情况,如:U盘、硬盘、软盘等等一系列存储设备,而这些设备的格式大多为NTFS,Mac系统对NTFS格式分区存在一定的兼容性问题,不能正常读写。 那么什…

第十章:构建安全的SSH 服务体系

A_实验案例:构建安全的SSH 服务体系 实验环境 某公司的电子商务站点由专门的网站管理员进行配置和维护.并需要随时从Internet进行远程管理。考虑到易用性和灵活性,在 Web服务器上启用OpenSSH 服务,同时基于安全性考虑,需要对SSH…

Java中XML的解析

1.采用第三方开元工具dom4j完成 使用步骤 1.导包dom4j的jar包 2.add as lib.... 3.创建核心对象, 读取xml得到Document对象 SAXReader sr new SAXReader(); Document doc sr.read(String path); 4.根据Document获取根元素对象 Element root doc.getRootElement(); …

SpringBoot2.7 组件注册、属性绑定

SpringBoot2.7 组件注册 一.组件注册1.Configuration解释案例测试 2.SpringBootConfiguration解释 3. Bean解释 4. Scope解释案例 5.Component解释 6.Import解释作用 7.Controller、Service、Repository、Component解释 二.属性绑定1.ConfigurationProperties作用区别常用情况案…

Cucumber-JVM的示例和运行解析

Cucumber-JVM 是一个支持 Behavior-Driven Development (BDD) 的 Java 框架。在 BDD 中,可以编写可读的描述来表达软件功能的行为,而这些描述也可以作为自动化测试。 Cucumber-JVM 的最小化环境 Cucumber-JVM是BDD的框架, 提供了GWT语法的相…

项目接口性能优化方案

🧑‍💻作者名称:DaenCode 🎤作者简介:CSDN实力新星,后端开发两年经验,曾担任甲方技术代表。会点点Java相关技术栈、帆软报表、低代码平台快速开发。技术尚浅,闭关学习中 &#x1f60…

Qt 中使用 MySQL 数据库保姆级教程(下)

作者:billy 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 前言 上篇中我们安装好了 MySQL 数据库和 Navicat 软件,下面在 Qt 中尝试使用数据库 1. 在 Qt 中连接 MySQL 数据库&#…

MariaDB单机多实例的配置方法

1、什么是数据库的单机多实例 数据库的单机多实例是指在一台物理服务器上运行多个数据库实例。这种部署方式允许多个数据库实例共享相同的物理资源,如CPU、内存和存储,从而提高硬件利用率并降低成本。每个数据库实例可以独立运行,处理不同的…

lottie 动画在 vue 中的使用

前言 最近我所负责的项目中采用了动画效果,最早使用 gif 来实现。然而,在实践过程中,我发现 gif 格式的动画在 git 中出现了明显的锯齿感,这让我非常困扰。为了追求更完美的表现效果,我最终选择了 lottie 来实现我的动…

看完谁再说搞不定上下角标?

一、需求 开发中有一些需要用到上下角标的地方&#xff0c;比如说化学式、数学式、注释。。。除了可以使用上下角标的标签&#xff0c;还可以通过css样式和CV大法实现&#xff0c;以下是具体实现方式。 二、实现方法 &#xff08;1&#xff09;标签写法&#xff1a; <sup…

go 使用 - sync.Metux

[TOC]&#xff08;sync.metux 使用&#xff09; 简介 简述使用metux使用的方法&#xff0c; 使用的注意点&#xff0c; 以及使用情况使用方法 提供的方法 Lock() 方法用于获取锁 Unlock() 方法用于释放锁 TryLock()方法尝试获取锁 对共享资源进行加锁&#xff0c; 例 &#…

Next Station of Flink CDC

摘要&#xff1a;本文整理自阿里云智能 Flink SQL、Flink CDC 负责人伍翀&#xff08;花名&#xff1a;云邪&#xff09;&#xff0c;在 Flink Forward Asia 2023 主会场的分享。Flink CDC 是一款基于 Flink 打造一系列数据库的连接器。本次分享主要介绍 Flink CDC 开源社区在过…