K8S-ETCD数据库备份与恢复
kubernetes使用etcd数据库实时存储集群中的数据,安全起见,一定要备份
需要指定使用etcdctl的版本
etcd数据库备份是使用数控快照的方式进行备份的,备份后的新数据不会保留,后面创建的pod也会被清除掉
kubeadm方式
kubeadm部署方备份:
首先需要安装etcdctl 命令行命令
- yum install -y etcd
备份
- ETCDCTL_API=3 etcdctl \
- snapshot save snap.db \ #注意是当前路径,可以指定路径
- --endpoints=https://127.0.0.1:2379 \
- --cacert=/etc/kubernetes/pki/etcd/ca.crt \
- --cert=/etc/kubernetes/pki/etcd/peer.crt \
- --key=/etc/kubernetes/pki/etcd/peer.key
ETCDCTL_API=3 etcdctl snapshot status snap.db #查看文件存储的信息
kubeadm 部署恢复etcd数据库
- 1、先暂停kube-apiserver和etcd容器
- mv /var/kubernetes/manifests /var/kubernetes/manifests.bak
- mv /var/lib/etcd/ /var/lib/etcd.bak
- 2、恢复
- ETCD_API=3 etcdctl \
- snapshot restore snap.db \
- --data-dir=/var/lib/etcd
- 3、启动kube-apiserver和etcd容器
- mv /etc/kubernetes/manifests.bak /etc/kubernetes/manifests
二进制方式:
kubernetes使用etcd数据库实时存储集群中的数据,安全起见,一定要备份
二进制部署方式备份:
首先需要安装etcdctl 命令行命令
- yum install -y etcd
备份
- ETCD_API=3 etcdctl \
- snapshot save snap.db \
- --endpoints=https://192.168.10.160:2379 \
- --cacert=/opt/etcd/ssl/ca.pem \
- --cert=/opt/etcd/ssl/server.pem \
- --key=/opt/etcd/ssl/server-key.pem
恢复
1、先暂停kube-apiserver和etcd
- systemctl stop kube-apiserver
- systemctl stop etcd etcd
- mv /var/lib/etcd/default.etcd /var/lib/etcd/default.etcd.bak
2、在每个节点上恢复
节点一恢复
- ETCDCTL_API=3 etcdctl snapshot restore snap.db \
- --name etcd-1 \
- --initial-cluster= "etcd-1=https://192.168.10.160:2380,etcd-2=https://192.168.10.161:2380,etcd-3=https:192.168.10.162:2380" \
- --initial-advertise-peer-url=https://192.168.10.160:2380 \
- --data-dir=/var/lib/etcd/default.etcd
节点二恢复
- ETCDCTL_API=3 etcdctl snapshot restore snap.db \
- --name etcd-2 \
- --initial-cluster= "etcd-1=https://192.168.10.160:2380,etcd-2=https://192.168.10.161:2380,etcd-3=https:192.168.10.162:2380" \
- --initial-advertise-peer-url=https://192.168.10.162:2380 \
- --data-dir=/var/lib/etcd/default.etcd
节点三恢复
- ETCDCTL_API=3 etcdctl snapshot restore snap.db \
- --name etcd-3 \
- --initial-cluster= "etcd-1=https://192.168.10.160:2380,etcd-2=https://192.168.10.161:2380,etcd-3=https:192.168.10.162:2380" \
- --initial-advertise-peer-url=https://192.168.10.162:2380 \
- --data-dir=/var/lib/etcd/default.etcd
3、启动kube-apiserver和etcd
- systemctl start kube-apiserver
K8S-ETCD数据库备份与恢复的更多相关文章
- k8s集群部署之环境介绍与etcd数据库集群部署
角色 IP 组件 配置 master-1 192.168.10.11 kube-apiserver kube-controller-manager kube-scheduler etcd 2c 2g ...
- 4.安装etcdkeeper查看etcd数据库中的数据
作者 微信:tangy8080 电子邮箱:914661180@qq.com 更新时间:2019-06-24 12:47:59 星期一 欢迎您订阅和分享我的订阅号,订阅号内会不定期分享一些我自己学习过程 ...
- PHP数据库备份与恢复
先说下关于数据库备份与恢复的原理: 1.查找所有表->2.查找所有字段->3.查找所有数据->4.生成SQL 备份注意点: 2=>需要列出所有字段名,字段类型等相关信息 3=& ...
- 一、配置etcd数据库
etcd服务作为Kubernetes集群的主数据库,在安装Kubernetes各服务之前需要首先安装和启动. 1. 安装etcd yum -y install etcd 2. 修改etcd配置文件 ...
- Oracle数据库备份与恢复的三种方法
转自blueskys567原文Oracle数据库备份与恢复的三种方法, 2006-10. 有删改 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份. 导出 ...
- C#实现SQL数据库备份与恢复
有两种方法,都是保存为.bak文件.一种是直接用Sql语句执行,另一种是通过引用SQL Server的SQLDMO组件来实现: 1.通过执行Sql语句来实现 注意,用Sql语句实现备份与还原操作时, ...
- Oracle 10g数据库备份与恢复操作手册
Oracle 10g数据库备份与恢复操作手册 目录 Oracle 10g数据库备份与恢复操作手册... 前言... 文档目的... 文档范围... 目标读者... 其他说明... 冷备份... 热备份 ...
- 小贝_mysql数据库备份与恢复
mysql数据库备份与恢复 简要: 一.数据库备份 二.数据库恢复 一.数据库备份 1.备份简单说明 : 系统执行中,增量备份与总体备份 例: 每周日总体备份一次,周一到周 ...
- SQL Server 2000数据库备份与恢复图解
SQL Server 2000数据库备份与恢复图解 四个步骤:1.安装sql server 2000 2.数据库设置: 3.建立自动备份 4.还原数据库 具体图片见附件 本文出自 "李 ...
- ORACLE数据库备份与恢复详解
ORACLE数据库备份与恢复详解 学习过程中的总结,有兴趣不妨看看,如果有不对的地方,高手不要留情!! Oracle的备份与恢复有三种标准的模式,大致分为两 大类,备份恢复(物理上的)以及导入导出(逻 ...
随机推荐
- Vue文件模板
<template> <div> </div> </template> <script> export default { } </s ...
- Native Comments
local variables referenced from a Lambda expression must be final or effectively final. Lambda表达式中引用 ...
- 感知生命周期的数据 -- LiveData
感知生命周期的数据 -- LiveData 零. 前言 上篇文章<万物基于Lifecycle> 介绍了整个Lifecycle体系的基石,今天这篇文章咱们来看看Jetpack给我们带来的活着 ...
- 读书笔记 | Kubernetes in Action
1 Kubernetes介绍 Kubernetes(以下简称K8s) 是一个部署和管理容器化应用的软件系统.它将底层基础设施抽象,简化了应用的开发.部署,以及对开发和运维团队的管理. K8s由一个主节 ...
- IT行业程序开发如何
学习程序开发怎么样,由于软件开发涉及到的知识结构比较丰富,所以学习软件开发通常需要一个系统的学习过程.如果未来要想专业从事软件开发工作,那么可以按照以下步骤学习软件开发技术: 第一:从计算机操作系统开 ...
- [LeetCode] 203. 移除链表元素(链表基本操作-删除)、876. 链表的中间结点(链表基本操作-找中间结点)
题目 203. 移除链表元素 删除链表中等于给定值 val 的所有节点. 题解 删除结点:要注意虚拟头节点. 代码 class Solution { public ListNode removeEle ...
- command三国杀开发日记20200915
一句话进展 完善了程序结构,分离.c和.h 搭建了6个阶段函数 实现了玩家摸牌 封装实现了日志打印函数 日志打印 想要区分日志等级,包括DEBUG.INFO.WARN.ERRRO.PANIC,提供统一 ...
- Axios源码深度剖析
Axios源码深度剖析 - XHR篇 axios 是一个基于 Promise 的http请求库,可以用在浏览器和node.js中,目前在github上有 42K 的star数 分析axios - 目录 ...
- 【漏洞复现篇】CVE-2020-1472-微软NetLogon权限提升-手把手教学-简单域环境搭建与Exp执行
一.漏洞简介 NetLogon 远程协议是一种在 Windows 域控上使用的 RPC 接口,被用于各种与用户和机器认证相关的任务.最常用于让用户使用 NTLM 协议登录服务器,也用于 NTP 响应认
- 2.Strom-入门案例