![](/img/trans.png)
[英]AWS ECS Fargate: What is the role of ECS Container Instance
[英]AWS ECS container instance
我嘗試使用Ansible EC2模塊啟動ECS容器實例。
我的劇本如下。
- name: Launch ECS Container Instance
ec2:
key_name: "{{ ec2_keyname }}"
instance_type: t2.micro
image: ami-ca01d8ca
wait: yes
group: "{{ ec2_security_group }}"
region: ap-northeast-1
exact_count: 1
vpc_subnet_id: "{{ ec2_subnet_id }}"
count_tag:
docker-registry: 1
instance_profile_name: ecsInstanceRole
instance_tags:
Name: ECS_docker-registry
docker-registry: 1
assign_public_ip: yes
結果,啟動了兩個實例。 其中一個已按我的意願配置,但另一個具有我不想設置的以下標記。
此外,我可以在ECS儀表板上找到這兩個實例。
但是它僅對群集“默認”可見,而對其他群集不可見。
我真正想做的是
如果可以使用aws-cli進行上述處理,則更好,但是首先,我應該了解容器實例的奇怪行為,然后手動進行。
要在ECS群集中注冊EC2容器實例,您可以使用以下幾種方法:
使用特殊的經過 Amazon ECS 優化的 AMI通過awscli
或AWS控制台手動啟動具有自定義用戶數據的EC2實例(了解有關啟動Amazon ECS容器實例的更多信息):
\n #!/ bin / bash \n 回聲ECS_CLUSTER =您的集群名稱>> /etc/ecs/ecs.config\n
由於AWS OpsWorks支持管理Amazon ECS容器實例,因此請使用AWS OpsWorks並創建ECS群集層 。 在這種情況下,OpsWoks將使層中的任何EC2實例與特定的ECS群集一起使用。
有一些限制:
您還可以手動將EC2實例添加到ECS集群中:
使用以下行在/etc/ecs/ecs.config中創建一個文件:
ECS_CLUSTER={{ name }}
其中{{name}}是您想要的群集名稱。
如果該實例尚不存在,它將創建該群集。
您可以嘗試使用ec2模塊的user_data
字段。
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html
在ecs代理啟動之前,您需要在ecs.config
具有以下內容。
#!/ bin / bash
回聲ECS_CLUSTER =您的集群名稱>> /etc/ecs/ecs.config
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.