Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 在集群创建期间,在EC2上运行脚本会自动启动_Amazon Web Services_Amazon Ec2_Amazon Cloudformation_Amazon Ecs - Fatal编程技术网

Amazon web services 在集群创建期间,在EC2上运行脚本会自动启动

Amazon web services 在集群创建期间,在EC2上运行脚本会自动启动,amazon-web-services,amazon-ec2,amazon-cloudformation,amazon-ecs,Amazon Web Services,Amazon Ec2,Amazon Cloudformation,Amazon Ecs,我正在使用ECS cli创建ECS群集(EC2启动类型)。创建EC2实例后,我想运行一个脚本来修改/etc/sysctl.conf中的vm.max\u map\u count设置。目前,我正在通过ssh’ing到实例中并以sudo的方式运行脚本来手动完成 是否可以在创建集群时创建的EC2实例上运行自动化脚本?任何参考/文档都会非常有用 谢谢因为您已经用amazon cloudformation标记了您的问题,我假设您正在使用CFN定义您的ECS容器实例 如果是这样,您可以在启动实例时在AWS::

我正在使用ECS cli创建ECS群集(EC2启动类型)。创建EC2实例后,我想运行一个脚本来修改/etc/sysctl.conf中的vm.max\u map\u count设置。目前,我正在通过ssh’ing到实例中并以sudo的方式运行脚本来手动完成

是否可以在创建集群时创建的EC2实例上运行自动化脚本?任何参考/文档都会非常有用


谢谢

因为您已经用
amazon cloudformation
标记了您的问题,我假设您正在使用CFN定义您的ECS容器实例

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

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

echo ECS_CLUSTER=${ClusterName} >> /etc/ecs/ecs.config
echo ECS_BACKEND_HOST= >> /etc/ecs/ecs.config  
您可以使用额外的命令扩展
UserData
,这些命令将修改
/etc/sysctl.conf


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

最好的地方是用户数据,我猜您已经知道了?在集群创建时这样做很早,你希望在EC2创建时这样做。我是AWS的新手。云形成当然是一种选择。但是假设我们不走这条路,那么一旦EC2实例启动,是否可以调用Userdata呢automatedly@Chubsdad
UserData
仅在启动时执行。您可以查看实例启动后运行命令的步骤。那就和他们亲热好了。您还可以使用和午餐配置来指定UserData。顺便说一句,如果您不使用CFN,为什么要使用cloudformation标记呢?ecs cli up的--extra user data参数会是一个选项吗?从我所读到的,它似乎是内联我需要的。我补充了CFN,因为这当然是一个我可以考虑的选项。works@Chubsdad是的,
——额外的用户数据
与我写的完全一样,但我是用cfn写的。标志:“为容器实例指定其他用户数据。”:-)我在当前文件夹中保存了一个“userdata”文件,并将其作为--extra user data的参数,例如--extra user data./userdata。然而,这并没有像预期的那样起作用(elasticsearch docker容器未能开始引用low vm.max_map)。我的userdata文件类似于“sudo sysctl-w vm.max\u map\u count=524288”。我错过了什么?