2016-11-12 54 views
1

这真的很奇怪。我正在使用salt-cloud将一些windows 2012服务器启动到EC2中。和寿我使用这个配置文件:盐云将EC2服务器启动到错误的子网

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

究竟是在发生什么?

回答

0

这是一个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部分子网ID,以便服务器出现在正确的子网。