etcd备份与恢复

目录bash

备份

一般而言,etcd都是集群部署,其实并不须要额外备份,但实在是架不住猪队友误操做。rest

写一个简单的etcd备份脚本以下:code

#!/bin/bash
set -e
exec >> /var/log/backup_etcd.log

Date=`date +%Y-%m-%d-%H-%M`
EtcdEndpoints="localhost:2379"
EtcdCmd="/usr/bin/etcdctl"
BackupDir="/home/www/server/backup/etcd"
BackupFile="snapshot.db.$Date"

echo "`date` backup etcd..."

export ETCDCTL_API=3
$EtcdCmd --endpoints $EtcdEndpoints snapshot save  $BackupDir/$BackupFile

echo  "`date` backup done!"

恢复

etcdctl snapshot restore snapshot.db.2019-05-21-10-02 -data-dir /home/www/server/etcd

参数说明:server

  • restore: 指定用于恢复的快照文件
  • -data-dir:恢复到哪一个目录
相关文章
相关标签/搜索