如何通过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)
打赏 微信扫一扫 微信扫一扫
云大使的头像云大使
上一篇 2018年11月24日 下午10:33
下一篇 2018年11月24日 下午10:33

相关推荐

  • (centos)linux如何查看和修改系统时间

    在linux中一般会使用date命令来查看当前系统时间,使用date -s命令来修改系统时间。 如何查看当前系统时间? date命令是用来显示系统时间的,可以按照指定格式来显示日期,如果只键入date则以默认格式显示当前系统时间。【视频教程推荐:linux教程】 例: [root@localhost ~]# date Fri Mar 1 10:36:45 P…

    2019年3月13日
    6.9K00
  • 学派吧-Linux/centos中SSH客户端断开后保持进程继续运行配置方法的具体教程

    在云服务器 ECS Linux 系统中,通常我们在执行一些运行时间比较长的任务时,必须等待执行完毕才能断开 SSH 连接或关闭客户端软件,否则可能会导致执行中断。本文介绍几种保障程序在用户退出登录后持续运行的方法。 使用管理终端执行 通过 管理终端 会登录服务器的本地会话(console)口,在该终端执行的程序不会受到 SSH 登录用户退出的影响。具体操作方…

    服务器运维 2018年12月12日
    3.8K00
  • 腾讯云Windows Server 2016 2019 在桌面上显示“我的电脑”

    如果是在Windows Server 2016 2019本地控制台下, 直接按Win(键盘上的微软徽标键)+R, 输入: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0 回车后,勾选所需要的桌面图标的名称,确定        

    2022年6月14日
    8.7K30
  • 购买阿里云ECS服务器后如何确认该服务器的IP信息和地理位置-linux运维

    本篇文章给大家带来的内容是关于购买阿里云ECS服务器后如何确认该服务器的IP信息和地理位置,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 IP地址查询定位 购买阿里云ECS服务器后,如果想确认该服务器的IP信息和地理位置,或需要查询本地公网IP信息,可以使用淘宝IP地址库进行查询。 1. 访问 ip.taobao.com 后,在页面左下侧,…

    服务器运维 2018年11月21日
    2.7K00
  • 如何在Lighttpd Server中配置SSL的教程分享

    所有使用SSL运行的站点都在默认端口443上使用了https协议。SSL通过加密服务器和客户端之间的数据来提供安全的数据通信。 在我们之前的文章中,我们已经介绍了如何在CentOS/RHEL系统中安装LightTPD和创建虚拟主机。本文将继续介绍在LightTPD服务器中配置SSL。对于本篇文章中的示例,我们使用的是自签名证书。 如果要在apache/htt…

    服务器运维 2019年5月7日
    4.0K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

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

添加微信
添加微信
分享本页
返回顶部
---------官方优惠叠加渠道折扣:通过我们购买腾讯云/阿里云,价格更低,服务更优。更有专业配置指导与服务。微信同步:18838889666----