创建群集期间,EC2上的运行脚本会自动启动

发布时间:2020-07-07 04:52

我正在使用ecs-cli创建ECS集群(EC2启动类型)。创建EC2实例后,我想运行脚本来修改/etc/sysctl.conf中的vm.max_map_count设置。目前,我正在手动执行此操作,方法是进入实例并以sudo身份运行脚本。

是否可以在作为集群创建的一部分而创建的EC2实例上运行自动化脚本?任何参考/文档将非常有帮助。

谢谢

回答1

由于您用amazon-cloudformation标记了问题,因此我假设您正在使用CFN定义ECS容器实例。

如果是这样,您可以在实例启动时使用AWS::EC2::Instance中的UserData来执行命令:

您可能已经使用它为实例上运行的ECS代理指定群集名称。因此,您的UserData中可能已经有类似的东西了

echo ECS_CLUSTER=${ClusterName} >> /etc/ecs/ecs.config
echo ECS_BACKEND_HOST= >> /etc/ecs/ecs.config  

您可以使用其他命令来扩展UserData,这些命令会修改/etc/sysctl.conf

还有其他可能性,例如在实例启动时使用SSM状态管理器执行操作。