在多个 EC2 实例上 运行 计划命令的最有效方法是什么?
What is the most efficient way to run scheduled commands on multiple EC2 instances?
目前正在处理一项环境要求,我们将按预定的时间间隔将同一文件推送到多个 EC2 实例 运行 Windows。就目前而言,我看到了几个选项并尝试了每个选项:
Windows Task Manager: run a basic task on a set schedule invoking the S3 Sync CLI tool
我在这里看到的缺点包括:在每个 EC2 实例(有很多)上设置任务。
Lambda: scheduled lambda job that utilizes SSM to run commands on each server in a resource group
缺点:引入执行此任务所需的另一层。
Run Command: using an AWS-RunRemoteScript document, run the script (stored in S3) bucket on target instances.
缺点:我不认为您可以按计划自动执行这些命令,而无需添加另一层。
最具扩展性的前进道路是什么?预先感谢您的帮助。
使用 AWS Systems Manager 的 运行 命令功能以及 AWS Systems Manager 的维护 Window 功能或使用 CloudWatch Events 来安排 运行 命令的执行应该是在这里有用。
如果您还适当地标记了实例,则可以使用 运行 命令的标记定位功能来确保所有实例 运行 该命令(包括将来启动的新实例,只要它们已标记)。
/垫子
目前正在处理一项环境要求,我们将按预定的时间间隔将同一文件推送到多个 EC2 实例 运行 Windows。就目前而言,我看到了几个选项并尝试了每个选项:
Windows Task Manager: run a basic task on a set schedule invoking the S3 Sync CLI tool
我在这里看到的缺点包括:在每个 EC2 实例(有很多)上设置任务。
Lambda: scheduled lambda job that utilizes SSM to run commands on each server in a resource group
缺点:引入执行此任务所需的另一层。
Run Command: using an AWS-RunRemoteScript document, run the script (stored in S3) bucket on target instances.
缺点:我不认为您可以按计划自动执行这些命令,而无需添加另一层。
最具扩展性的前进道路是什么?预先感谢您的帮助。
使用 AWS Systems Manager 的 运行 命令功能以及 AWS Systems Manager 的维护 Window 功能或使用 CloudWatch Events 来安排 运行 命令的执行应该是在这里有用。
如果您还适当地标记了实例,则可以使用 运行 命令的标记定位功能来确保所有实例 运行 该命令(包括将来启动的新实例,只要它们已标记)。
/垫子