如何通过API配置定时自定义快照-linux教程-学派吧

本篇文章给大家带来的内容是关于如何通过API配置定时自定义快照,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

如何通过API配置定时自定义快照

SSD云盘无法开启自动快照,那么就需要自己调用API来设定计划任务完成快照自动化

1、安装配置AliyunCli环境

参考官方文档:AliyunCli配置

2、将如下内容保存为脚本/home/creare.sh

### 本脚本仅测试并执行于Linux下
#!/bin/bash
#source /etc/profile
#保留几份快照(无自定义快照情况下不能大于24)
num=3
num=$[$num - 1]
#检查AliyunCli执行路径
path=`which aliyuncli`
#检查AliyunCli和ECS SDK安装情况
check=`$path --help |wc -l`
check_sdk=`$path ecs |wc -l`
start_snapshot(){
for instance in `cat /home/instance.txt`;
do
disk=`$path ecs DescribeDisks --InstanceId $instance --output json --filter Disks.Disk[*].DiskId |awk -F "\"" '{print $2}'`
region=`$path ecs DescribeDisks --InstanceId $instance --output json --filter Disks.Disk[0].RegionId |awk -F "\"" '{print $2}'`
for disk in $disk
do
id=`$path ecs DescribeSnapshots --RegionId $region --DiskId $disk --Status accomplished --SnapshotName ScriptsCreate --output json --filter Snapshots.Snapshot[$num].SnapshotId |awk -F "\"" '{print $2}'`
if [[ "$id" != "" ]]; then
$path ecs DeleteSnapshot --SnapshotId $id
sleep 2
snapshot=ScriptsCreate
$path ecs CreateSnapshot --DiskId $disk --SnapshotName $snapshot
else
snapshot=ScriptsCreate
$path ecs CreateSnapshot --DiskId $disk --SnapshotName $snapshot
fi
sleep 1
done
sleep 1
done
}
if [[ "$check" -ge "38" ]];then
    if [[ "$check_sdk" -ge "56" ]]; then
    start_snapshot
    else
    echo "请先确保ECS SDK安装正确,再来执行该脚本!"
    fi
else
echo "请先确保AliyunCli安装正确,再来执行该脚本!"
fi

注意:上述脚本会自动删除备份个数以上的最早的脚本创建的快照

请确保脚本创建的快照额度够用,否则会导致脚本执行部分失败

例如:

设置NUM为3,有3个磁盘,那么快照剩余额度需要大于等于9个

3、将需要添加自动快照的ECS实例ID保存到/home/instance.txt文件中

4、添加crontab计划任务(每晚1点30分执行计划任务)

crontable -e插入如下内容:

30 1 * * * /bin/sh /home/create.sh

重启crond服务

service crond restart

5、快照执行完毕后我们会在控制台看到名称为ScriptsCreate的快照

微信截图_20180929155629.png

以上就是如何通过API配置定时自定义快照的详细内容,更多请关注学派吧其它相关文章!

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/2026.html

(0)
打赏 微信扫一扫 微信扫一扫
关于普通云盘和SSD云盘添加挂载信息区别和注意事项-学派吧
上一篇 2018年11月24日 下午10:33
下一篇 2018年11月24日 下午10:33

相关推荐

  • Linux下MySQL无法访问问题排查的基本步骤-linux教程

    问题说明 本文说明云服务器 ECS Linux 上 MySQL 无法访问问题的一般排查步骤。 处理办法 查看 Linux 操作系统是否已经安装了 MySQL $ rpm -qa mysql mysql-4.1.7-4.RHEL4.1 # 说明已经安装了 MySQL 检查状态 检测 MySQL 运行状态: service mysqld status 启动服务:…

    数据库运维 2019年1月1日
    2.6K00
  • 他们将生产环境从 nginx 迁移到 envoy教程

    选择代理 克服反对意见 服务提供方的好处 可扩展性 服务使用方的好处 更丰富的群集模型 多协议支持 动态服务发现 网络策略 监测 如何更快迁移 导读:随着Service Mesh在最近一年进入人们的视野,Envoy 作为其中很关键的组件,也开始被广大技术人员熟悉。本文作者所在公司已经从 nginx 迁移到 Envoy。 随着我们下一代产品发布,我们将代理软件…

    服务器运维 2018年10月16日
    4.5K00
  • 系统不支持:mysql

    错误位置FILE: F:\www\ThinkPHP\Lib\Core\Db.class.php  LINE: 83 TRACE[13-04-09 15:39:04] F:\www\ThinkPHP\Lib\Core\Db.class.php (83) DbMysql->__construct(系统不支持:mysql)[13-04-09 15:39:04] F…

    服务器运维 2018年4月3日
    3.7K00
  • Nginx、FPM配置及优化教程说明-学派吧 linux运维

    Nginx配置 main模块 events 模块 http模块 sendfile keepalive 超时 map proxy openfile client buffer Gzip fastcgi cache server模块 正则 Rewrite 文件缓存 FPM HTTPS upstream模块 默认轮询(加权) 最小连接数 IP Hash FPM配置…

    服务器运维 2018年10月11日
    3.5K00
  • 如何处理 ECS 实例对外 DDoS 攻击导致被锁定-linux运维-学派吧

    本文在介绍如何处理 ECS 实例对外 DDoS 攻击导致被锁定的基础上,重点探讨了其具体步骤,本文内容紧凑,希望大家可以有所收获。 如何处理 ECS 实例对外 DDoS 攻击导致被锁定 当您的 ECS 实例在 ECS 控制台的状态为锁定,同时收到阿里云实例关停的官方短信或邮件通知时,代表您的 ECS 实例已被安全锁定。这是因为阿里云检测到您的 ECS 实例有…

    服务器运维 2018年11月21日
    2.8K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部