本文目录
具体思路详细步骤开启API获取服务器ID设置crontab定时任务一行命令vultr服务器定时备份是需要另付费的,价格为服务器费用的20%。今天就教大家利用vultr的API来实现免费的定时备份功能。
由于目前VULTR快照(Snapshot)创建是限时免费的,而且功能也很强,几乎是100%还原(连密码都会备份还原)。
具体思路利用VULTR的API功能,用Centos7的crontab定时任务功能,定时请求来达到定时创建快照(Snapshot)的目的。
目前还没写脚本,大家动手能力强的可以照着做。(后期会开发shell脚本和py脚本)
开启VULTR的API功能,并将服务器IP添加到白名单。复制API key 和 服务器ID连接到服务器,将任务添加到crontab定时执行即可详细步骤开启API打开API开启地址:https://my.vultr.com/settings/#settingsapi,点击Enable API开启API。
点击Enable IPV6,允许IPV6地址的调用。
将API Key保存好即可。
获取服务器ID其实这个很简单,点击需要备份的服务器,查看网址,?SUBID后面的一串字符就是服务器ID。
例如:https://my.vultr.com/subs/?SUBID=15969664,15969664就是服务器ID。
设置crontab定时任务PS:以下内容全是在服务器进行,需要用Xshell或者其他sftp连接工具连接到服务器后,执行命令。
其实我们得到上面的API Key和SUBID之后,直接用Curl命令执行下面的语句即可备份(其中API Key和SUBID改成你自己的即可)
curl -H 'API-Key: YOURKEY' https://api.vultr.com/v1/snapshot/create --data 'SUBID=YOURSUBID'
1
curl -H 'API-Key: YOURKEY' https://api.vultr.com/v1/snapshot/create --data 'SUBID=YOURSUBID'
但是,我们的目的绝不是在服务器端用命令来创建快照(Snapshot),我们想要执行定时任务,就要用到crontab命令。(这里不多介绍crontab,只给命令,想更多了解请百度)
连接到服务器后,执行vi /etc/crontab,按一下i后开始编辑文件在文件末尾处添加命令(命令有多种选择,我放下面)后保存(:wq)退出即可每月执行一次创建快照脚本0 0 1 * * /usr/bin/curl -H 'API-Key: YOURKEY' https://api.vultr.com/v1/snapshot/create --data 'SUBID=YOURSUBID'
每周执行一次创建快照脚本0 0 * * 0 /usr/bin/curl -H 'API-Key: YOURKEY' https://api.vultr.com/v1/snapshot/create --data 'SUBID=YOURSUBID'
一行命令上面更多的是介绍其原理,其实可以直接echo命令到crontab文件即可。(里面内容自己改)
echo "0 0 1 * * /usr/bin/curl -H 'API-Key: YOURKEY' https://api.vultr.com/v1/snapshot/create --data 'SUBID=YOURSUBID'" > /etc/crontab
1
echo "0 0 1 * * /usr/bin/curl -H 'API-Key: YOURKEY' https://api.vultr.com/v1/snapshot/create --data 'SUBID=YOURSUBID'" > /etc/crontab