宝塔面板使用腾讯云COS备份

s5s5 2017-12-08 20:20

腾讯云每月大约提供免费对象存储 COS有 50 GB,用他来做网站数据的定时备份(特别是主机放在腾讯云上)再好不过了,但宝塔面板还没有提供一键工具来备份。没关系,自已动手丰衣足食,在学习COS 文档后,发现在后台定时执行COSCMD 工具即可。

首先在COS控制台建立一个和自己主机同地域的 Bucket ,同地域才能发挥机房内网高速上传的优势

相同地域内腾讯云产品访问,将会自动使用内网连接,不产生流量费用。因此选购腾讯云不同产品时,建议尽量选择相同地域,减少您的费用。

以腾讯 CVM 访问 COS 为例,判断是否使用内网访问 COS 的方法: 在 CVM 上 ping COS 域名,若返回内网 IP,则表明 CVM 和 COS 之间是内网访问,否则为外网访问。 内网 IP 地址一般形如 10...、100...等。

记得勾选:私有读写

然后,pip 安装 COSCMD

pip install coscmd

升级一下

pip install coscmd -U

配置参数

COSCMD 工具在使用前需要进行参数配置。用户可以直接编辑~/.cos.conf文件,也可以通过如下命令来配置:

coscmd config -a <access_id> -s <secret_key> -u <appid> -b <bucketname> -r <region> [-m <max_thread>] [-p <parts_size>]

上述示例中使用”<>”的字段为必选参数,使用”[]”的字段为可选参数。其中:

名称 描述 有效值
secret_id 必选参数,APPID 对应的密钥 ID,可从控制台获取,参考基本概念 字符串
secret_key 必选参数,APPID 对应的密钥 Key,可从控制台获取,参考基本概念 字符串
appid 必选参数,需要进行操作的 APPID,可从控制台获取,参考基本概念 数字
bucketname 必选参数,指定的存储桶名称, 需要提前在控制台建立,参考创建存储桶 字符串
region 必选参数,存储桶所在地域。参考可用地域 字符串
max_thread 可选参数,多线程上传时的最大线程数(默认为 5),有效值:1~10 数字
parts_size 可选参数,分块上传的单块大小(单位为 M,默认为 1M),有效值:1~10 数字

配置完成之后的.cos.conf文件内容示例如下所示:

secret_id = AChT4ThiXAbpBDEFGhT4ThiXAbpHIJK
secret_key = WE54wreefvds3462refgwewerewr
appid = 1234567890
bucket = ABC
region = cn-south
max_thread = 5
part_size = 1

然后在宝塔面板的计划任务中先竟添加两个定时任务(比如每周一早三点)

  • 备份数据库
  • 备份网站

这两个任务执行后会生成两个大压缩包,我们上传到 COS 即可,所在再添加Shell脚本 任务,使用 COSCMD 命令输入

coscmd upload -r /www/backup/ /

这个命令会把/www/backup/目录(宝塔默认备份目录),上传到 COS 的/根目录(可按自己情况调整)

然后执行一下,试试,然后去 COS 控制台一看,挖,网站备份好啦~~~

要说明一下的是,这个命令,上传 COS 时同名文件会覆盖。

特别注意:本方法只能在腾讯云 CVM 和 COS 同地域情况下用,不同地域太慢,上传不了所有文件。

扫码关注米随随

[返回] [原文链接]