2016-10-12 9 views
0

boto.vpcを使用してアマゾンVPCの内容を確認しようとしています。しかし、サブネットの内容を確認する代わりに、それを作成しようとしています。私はinit.slsファイル内の既存のサブネットの詳細を与えた:ソルトスタックboto.vpc別のサブネットとのサブネット競合の作成に失敗しました

Ensure VPC exists: 
    boto_vpc.present: 
     - name: dlab 
     - cidr_block: 10.xx.xx.0/24 
     - dns_hostnames: True 
     - region: us-east-1 
     - keyid: keyid 
     - key: key 

Ensure subnet exists: 
    boto_vpc.subnet_present: 
     - name: dlab 
     - vpc_id: vpc-xxxxxxx 
     - cidr_block: 10.xx.xx.0/24 
     - region: us-east-1 
     - keyid: keyid 
     - key: key 

そして、私は、コマンドを実行すると、これは私が得る結果である:

[[email protected] get_vpc]# salt '*' state.apply 
salt.localdomain: 
---------- 
      ID: Ensure VPC exists 
    Function: boto_vpc.present 
     Name: dlab 
     Result: True 
    Comment: VPC present. 
    Started: 14:36:19.166569 
    Duration: 312.981 ms 
    Changes: 
---------- 
      ID: Ensure subnet exists 
    Function: boto_vpc.subnet_present 
     Name: dlab 
     Result: False 
    Comment: Failed to create subnet: Bad Request: The CIDR '10.60.58.0/24' conflicts with another subnet 
    Started: 14:36:19.479896 
    Duration: 355.565 ms 
    Changes: 

Summary for salt.localdomain 
------------ 
Succeeded: 1 
Failed: 1 
------------ 
Total states run:  2 
Total run time: 668.546 ms 
ERROR: Minions returned with non-zero exit code 

VPCが確認されました。しかし、塩はすでにそこにあるものについて私に伝えるのではなく、新しいサブネットを作りようとしています。サブネットが存在することを確認するの下のトップファイルに指定されているサブネットの名前が正しいです!

どうしてですか?サブネットの作成を試みるのではなく、どのようにしてサブネットの検証を行うことができますか?私はこのソリューションを提案

答えて

0

は、私はそれをテストしていませんが、あなたがsubnet_idを持っている場合、あなたはそれを使用

Ensure subnet exists: 
    module.run: 
     - name: boto_vpc.subnet_exists 
     - subnet_id: subnet-foo-id 

サブネットが存在する場合、このモジュールはチェックされますすることができるかもしれません。サブネットが存在する場合はTrueを返し、存在しない場合はFalseを返します。 docs

関連する問題