码迷,mamicode.com
首页 > 其他好文 > 详细

备份consul key value 保存到S3

时间:2019-03-29 20:49:28      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:source   pre   col   并且   远程   hostname   bin   echo   backup   

最终实现aws SSM 自动化 备份consul ,然后传输到S3

1、所有的consul 服务节点安装 SSM agent

2、各区创建备份用到的S3存储桶

3、在各区的SSM控制台创建自动化,远程执行备份脚本

#!/bin/bash

ts=$(date +%Y%m%d)
source_folder="/data/backup"
find /data/backup/ -maxdepth 1 -type f -mtime +1  -iname "consul_kv_bk*" -exec rm -rfv {} \;

if [ ! -d "$source_folder" ];then mkdir -p $source_folder RETVAL=$? if [ $RETVAL -eq 0 ];then echo "create folder: "$source_folder else echo "create folder fial,exit." exit 1 fi fi consul snapshot save ${source_folder}/consul_kv_bk_$ts.snap SNA_REVAL=$? if [ $SNA_REVAL -ne 0 ];then echo "consul key val backup fail........" exit 1 fi aws s3 ls S3-bucket-consulbak/${HOSTNAME%%-*}/${HOSTNAME}/consul_kv_bk_$ts.snap --region cn-northwest-1 REVAL=$? if [ $REVAL -ne 0 ];then aws s3 cp ${source_folder}/consul_kv_bk_$ts.snap s3://S3-bucket-consulbak/${HOSTNAME%%-*}/${HOSTNAME}/ --region cn-northwest-1 SYNC_REVAL=$? if [ $SYNC_REVAL -ne 0 ];then echo "sync snap file to s3 fail........" exit 1 else echo " sync snap file to S3 success!!!" exit 0 fi else echo "file already exists!!!" exit 0 fi

 

备注:由于consul 是多节点集群,本想着每个集群只需一个备份即可,但考虑到备份文件不大,并且多备份文件更加保险。干脆所有节点都做一个备份。

备份consul key value 保存到S3

标签:source   pre   col   并且   远程   hostname   bin   echo   backup   

原文地址:https://www.cnblogs.com/husbandmen/p/10623577.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!