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的备份与恢复有三种标准的模式,大致分为两 大类,备份恢复(物理上的)以及导入导出(逻 ...
随机推荐
- 使用jackson解析json串得到树模型,然后遍历树模型获得需要的数据
Problem:从网址 http://quotes.money.163.com/hs/service/marketradar_ajax.php?host=http%3A%2F%2Fquotes.mon ...
- jenkins iOS自动打包
1.Jenkins配置 采用命令行下载配置Jenkins,防止产生权限问题 1)先安装brew,打开命令行,输入:/usr/bin/ruby -e "$(curl -fsSL https:/ ...
- python django 简单接口测试页面
项目创建订单只能是接口创建的,之前都是用jar包放到jmeter里调用下单,给产品或者运维用不太方便,就想用django写一个带前端界面的下单web程序 项目结构 代码,比较渣 # coding=ut ...
- oracle之DML和DDL语句的其他用法
DML和DDL语句的其他用法 17.1 DML语句-MERGE 作用:把数据从一个表复制到另一个表,插入新数据或替换掉老数据. Oracle 10g中MERGE有如下一些改进: 1.UPDATE或IN ...
- python守护线程t.setDaemon(True)
守护线程是守护主线程 t.setDaemon(True),调用函数里面存在等待时间时,只要设置了守护线程,函数中等待时间下面的代码都不会再执行
- Sql Server中使用特定字符分割字符串
在T-SQL中我们经常批量操作时都会对字符串进行拆分,可是SQL Server中却没有自带Split函数,所以要自己来实现了.这里将字符串分割以table形式输出 语法如下: SET ANSI_NUL ...
- PJzhang:vulnhub靶机sunset系列SUNSET:TWILIGHT
猫宁~~~ 地址:https://www.vulnhub.com/entry/sunset-twilight,512/ 关注工具和思路. nmap 192.168.43.0/24靶机IP192.168 ...
- php Zookeeper使用踩坑
用的是Zookeeper扩展,Php版本为7.2.17,下载地址: https://pecl.php.net/package/zookeeper 用的是0.6.4版本 创建节点官方给的示例如下: &l ...
- 使用Jasmine和karma对传统js进行单元测试
当你拿到十五年前的一堆javascript的代码,你如何对这堆javascript代码写单元测试呢?于是就有了这篇文章. 注意:不需要装任何现代化js框架,包括angular,react,vue之类的 ...
- 7.kafka HA