当前位置:首页 > 教程 > 正文

宝塔定时创建腾讯云轻量快照服务

宝塔安装 Node.js 版本管理器,命令行选择你安装的版本

宝塔定时创建腾讯云轻量快照服务  第1张

mkdir xxx
cd xxx
npm init
npm i tencentcloud-sdk-nodejs

然后把以下代码复制保存为 js 文件,并替换腾讯密钥

// Depends on tencentcloud-sdk-nodejs version 4.0.3 or higher
const tencentcloud = require("tencentcloud-sdk-nodejs");

const LighthouseClient = tencentcloud.lighthouse.v20200324.Client;

const clientConfig = {
  credential: {
    secretId: "更改为账号secretId",
    secretKey: "更改为账号secretKey",
  },
  region: "ap-guangzhou", //服务器当前地域
  profile: {
    httpProfile: {
      endpoint: "lighthouse.tencentcloudapi.com",
    },
  },
};

const client = new LighthouseClient(clientConfig);

const chakan = {
  "Filters": [
    {
      "Name": "instance-id",
      "Values": [
        "更改为实例id"
      ]
    }
  ]
};

client.DescribeSnapshots(chakan).then(

  (data) => {

    shanchu_id = data.SnapshotSet[1].SnapshotId //数组的第二个

    const shanchu = {
      "SnapshotIds": [
        shanchu_id
      ]
    };

    client.DeleteSnapshots(shanchu).then(
      (data) => {

        console.log('删除一个旧快照成功');
        console.log(data);

        // 创建快照

        const chuangjian = {
          "InstanceId": "更改为实例id"
        };
        client.CreateInstanceSnapshot(chuangjian).then(
          (data) => {
            console.log('创建一个新快照成功');
            console.log(data);
          },
          (err) => {
            console.error("error", err);
          }
        );

      },
      (err) => {

        console.log('删除一个旧快照失败~~~~必须已有两个快照,才能删除第二个快照并创建新快照');
        console.error("error", err);
      }
    );

  },
  (err) => {

    console.log('查询旧快照失败');
    console.error("error", err);
  }
);

执行 js 文件看是否出错,没出错就去腾讯云后台看看有没有自动创建快照,然后再创建一个定时计划即可。

cd /xxx
node xxx.js >> /xxx.log 2>&1

宝塔定时创建腾讯云轻量快照服务  第2张

宝塔定时创建腾讯云轻量快照服务  第3张

测试成功,结束。

注:

xxx 为任意名字,也可在任意目录建立。

此服务可在任意机器上运行,只要机器联网能安装 nodejs,因为它是通过 api 来实现快照服务的。

0
您需要 登录账户 后才能发表评论

发表评论