如何自动启动我的 ec2 实例,运行命令然后将其关闭?

goo*_*lan 5 r amazon-ec2 amazon-web-services amazon-elastic-beanstalk aws-lambda

我想每周一次对 redshift postgres 数据库中的数据运行机器学习模型。

我将我的 R 脚本设置为 rest api 使用plumbr,然后我将它设置为由pm2. 我有它,所以任务在ec2实例启动时启动,然后继续运行。

要让 R 脚本运行并从机器学习模型上传新数据,我所需要做的就是运行一个简单的 curl 请求 curl http://localhost:4208/main

模型的整个过程大约需要 10 分钟。

如何自动执行启动 ec2 实例、运行 curl 请求然后关闭它的过程?这可以通过 AWS Beanstalk 完成吗?

Jac*_*tti 3

当新的 EC2 实例启动时,您可以传入启动指令(用户数据)。假设您正在运行 Linux AMI:

所以像这样:

#!/bin/bash
curl http://localhost:4208/main
Run Code Online (Sandbox Code Playgroud)

更多信息可以在这里找到: https: //docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html

这将使用正确的curl 请求启动您的EC2 实例以帮助您开始。

现在,要使用您创建的启动脚本自动启动 EC2 实例,您需要使用命令行。

您可以在此处了解更多信息:https://docs.aws.amazon.com/cli/latest/userguide/cli-services-ec2-instances.html