Соленое облако запускает серверы EC2 в неправильную подсеть
Это действительно странно. Я запускаю некоторые серверы Windows 2012 в EC2, используя salt-cloud. И хотя я использую этот профиль:
ec2_private_win_app1:
provider: company-nonpod-us-east-1
image: ami-xxxxxx
size: c4.large
network_interfaces:
- DeviceIndex: 0
PrivateIpAddresses:
- Primary: True
#auto assign public ip (not EIP)
AssociatePublicIpAddress: False
SubnetId: subnet-A
SecurityGroupId: sg-xxxxxx
#block_device_mappings:
# - DeviceName: /dev/sda1
# Ebs.VolumeSize: 120
# Ebs.VolumeType: gp2
# - DeviceName: /dev/sdf
# Ebs.VolumeSize: 100
# Ebs.VolumeType: gp2
tag: {'Engagement': '2112254190125', 'Owner': 'Tim', 'Name': 'production'}
И давая эту команду:
salt-cloud -p ec2_private_win_app1 USAB00005
Получившийся сервер попадает в эту подсеть в AWS:
Subnet ID: subnet-B
Я использую версию соленого облака: salt-cloud 2016.9.0-410-gdedfd82
На сервере работает: CentOS Linux release 7.2.1511
Что, черт возьми, происходит?
1 ответ
Это была проблема форматирования yaml. Я запустил yaml через онлайн-анализатор yaml и смог исправить проблему:
ec2_private_win_app1:
provider: company-nonpod-us-east-1
image: ami-xxxxx
size: c4.large
ssh_username: root
network_interfaces:
- DeviceIndex: 0
SubnetId: subnet-xxxxxx
PrivateIpAddresses:
- Primary: True
#auto assign public ip (not EIP)
AssociatePublicIpAddress: False
SecurityGroupId:
- sg-xxxxxx
По сути, мне пришлось сгруппировать идентификатор подсети в разделе network_interfaces, чтобы серверы отображались в правильной подсети.