一、说明
etcd有两种类型的版本,一种是api版本,一种是etcd数据库版本。对于api版本,有v2和v3版本。对于etcd数据库:版本也是有v2和v3版本。在etcd数据库2.3以后的版本,etcd即可以用api的2版本,也可以用api的v3版本来操作etcd数据库。v2 与 v3 API 使用了不同的存储引擎,所以客户端命令也完全不同。而使用这两种api版本生成的数据不能混合存放。官方对v2和v3的备份有说明。support backup of v2 and v3 stores
可以通过客户端工具etcdctl查看版本信息
这里默认使用的api版本是v2,但是我们可以通过暴露环境变量的方式指定,使用api的版本,比如:
export ETCDCTL_API=3
二、备份
可以写成脚本,方便后面的定时备份,由于我们主要是使用的v3版本,所以我这里就以v3来说明。
cat /root/cronScript/etcd_backup_v3.sh
#!/bin/bash
source /etc/profile
date_time=`date "+%Y%m%d_%H%M%S"`
export ETCDCTL_API=3
# 替换成自己环境的etcd集群的endpoints
ETCD_ENDPOINTS="https://x