在platform.sh上自动创建快照,并且必须使用SSH

时间:2017-07-17 19:20:25

标签: ssh cron

我正在尝试在platform.sh上自动获取快照(还原点)。我首先尝试使用他们的yaml文件来安排一个cron作业,但是告诉它不行。所以现在尝试创建一个从另一台服务器运行的cron作业来完成任务。困难在于我必须使用SSH。在我进行身份验证后,我可以使用

手动运行作业
platform snapshot:create --project=6sglloa4axaxax --environment=dev

不确定在何处/如何自动运行该命令。

感谢您的任何见解!

-Matt

1 个答案:

答案 0 :(得分:0)

让我们调用您的主服务器serv1和“其他服务器”serv2

方法1。创建到serv2的SSH的cronjob并运行命令。

  1. 使用ssh-keygen
  2. 生成SSH密钥对
  3. 将生成的公钥添加到user@serv2:~/.ssh/authorized_keys
  4. serv1中,使用命令crontab -e
  5. 添加cronjob(ssh user@serv2 platform snapshot:create --project=6sglloa4axaxax --environment=dev

    方法2。您也可以从serv1(不是拼写错误)SSH到serv1。这是一种众所周知的技术,在受影响的命令需要完整的shell环境时使用。 cron的环境有限。

    1. 使用ssh-keygen
    2. 生成SSH密钥对
    3. 将生成的公钥添加到~/.ssh/authorized_keys
    4. serv1中,使用命令crontab -e
    5. 添加cronjob(ssh user@serv1 platform snapshot:create --project=6sglloa4axaxax --environment=dev

      在执行上述任何操作之前,请尝试将其作为cronjob使用。我相信正确的环境变量设置,它将正确。根据我的经验,很少有命令不能作为cronjob运行。