如何在不手动启动它们的情况下在Google Cloud项目或AWS实例上运行python脚本?

时间:2018-12-13 18:16:47

标签: python amazon-web-services google-cloud-platform cloud

我有一些需要一台好的机器的python脚本。不必确保在GCP或AWS上手动启动实例,而是确保安装了所有python库,例如可以通过python进行操作,以便仅在运行脚本所需的时间内打开实例?

3 个答案:

答案 0 :(得分:1)

如果您使用的是AWS,则可以为脚本创建Lambda函数,然后通过Lambda在计时器上设置这些函数,或使用Cloudwatch触发它们。

答案 1 :(得分:0)

您可以具有一个脚本,该脚本调用AWS CLI来启动实例,连接到该实例并通过SSH运行该脚本,然后终止该实例。请参阅此处的AWS CLI文档-https://docs.aws.amazon.com/cli/latest/userguide/cli-ec2-launch.html

GCP的云功能是@bspeagle关于AWS Lambda的建议的替代方法。

答案 2 :(得分:0)

在AWS和Google Cloud中,您都可以通过包括Python在内的编程语言执行几乎所有操作。

去年,AWS宣布了EC2暂停和恢复。此功能使您可以设置和配置EC2实例,并在完成数据处理后将实例置于睡眠状态。然后,您只需支付存储和IP地址费用。

New – Hibernate Your EC2 Instances

Google还宣布了alpha个用于暂停Compute Engine实例的功能,但是该功能今天通常不可用-您必须申请使用此功能。

AWS和Google现在都支持的另一个选项是实例模板。这使您可以使用所需的所有选项来创建模板,例如在启动时安装软件包。然后,您可以从控制台,CLI或使用您喜欢的编程语言启动新的自定义实例。完成任务后,您可以停止或终止实例。

当然也有标准方法。启动实例,根据需要进行配置,然后停止实例。需要处理能力时,请启动实例,数据处理,然后再次停止。此方法与暂停实例之间的区别在于,使用简历启动实例的总时间更快。有点像您的笔记本电脑。合上盖子,笔记本电脑进入睡眠状态。打开盖子,您几乎可以立即开机。

如果您有幸拥有一个正在运行的Kubernetes集群,则可以使用容器执行所有操作,然后通过CLI启动该容器。容器完成其任务后,容器将自动停止。