概要
題名の通りです。
やろうとしたこと
userdata = """#!/bin/sh
# ECS_CLUSTER
echo ECS_CLUSTER={0} >> /etc/ecs/ecs.config
""".format(CLUSTER)
instance = ec2.create_instances(
InstanceType=InstanceType, 'm5a.4xlarge',
UserData=userdata,
NetworkInterfaces=[
{
'AssociatePublicIpAddress': True,
"DeviceIndex": 0,
}],
TagSpecifications=[
{
'ResourceType': 'instance',
'Tags': [
{
'Key': 'Name',
'Value': 'test instance'
},
]
},
],
MaxCount=1, MinCount=1,
CpuOptions={
'CoreCount': CoreCount,
'ThreadsPerCore': ThreadsPerCore
},
LaunchTemplate={
'LaunchTemplateId': templateid, # 'lt-xxxx',
'Version': f'{template_version}'
},
)
雑ですがこんな感じで起動テンプレートでEC2を作り、
それをクラスターにUserDataを使って紐つけようとしていましたが、クラスターに入らず、
ハマりました。
チェックすべきこと
起動テンプレートの高度な詳細で、
IAM インスタンスプロフィール
で
ecsInstanceRole
がアサインされていることを確認してください。
私の場合はこれを忘れていたようです。
以上。