mateothegreat.aws_vpc_create
AWS VPCの作成
機能:
- (オプションの)ピアリング接続を作成します。
- すべてのリソースにタグ付けをサポートします。
この役割は新しいAWS VPCを作成します。内容は以下の通りです:
- ピアリング接続
- インターネットゲートウェイ
- NATゲートウェイ
- ルートテーブル
- サブネット
要件
pip install ansible boto3 boto
変数
aws_vpc_create:
profile: "default" # AWS認証ファイルのプロファイル名。
name: "test-1" # 作成したいVPCの名前。
region: "eu-central-1" # AWSリージョン。
cidr: "201.0.0.0/16" # VPC全体のCIDR。
internet_gateway: "true" # インターネットゲートウェイを作成します。
nat_gateway: "true" # Elastic IPのNATゲートウェイを作成します。
allow_duplicate_name: "false" # 同名のVPCが存在してもエラーになりません。
allow_duplicate_cidr: "false" # 同じCIDRのVPCが存在してもエラーになりません。
purge_cidrs: "true" # 既存のVPCを使う場合、すべてのCIDRを削除します。
peering:
- name: "test-1-peer"
vpc_id: "vpc-0504d01b93f46e610"
region: "eu-central-1"
cidr: "22.16.0.0/16"
update_accepter_route_table: "true" # アクセプターのルートテーブルにこのVPCへのルートを追加します。
dns:
enable_support: "true" # このVPCのDNSサポートを有効にします。
enable_hostnames: "true" # このVPCのホスト名解決を有効にします。
subnets:
- name: "public-1"
type: "public"
az: "eu-central-1a"
cidr: "201.0.1.0/24"
- name: "public-2"
type: "public"
cidr: "201.0.2.0/24"
az: "eu-central-1b"
- name: "private-1"
type: "private"
cidr: "201.0.3.0/24"
az: "eu-central-1a"
- name: "private-2"
type: "private"
cidr: "201.0.4.0/24"
az: "eu-central-1b"
tags:
created_by: "Matthew Davis"
使用例
次の内容をplaybook.yaml
というファイルに追加します:
- hosts: monitoring
roles:
- role: "mateothegreat.aws_vpc_create"
vars:
aws_vpc_create:
profile: "default" # AWS認証ファイルのプロファイル名。
name: "test-1" # 作成したいVPCの名前。
region: "eu-central-1" # AWSリージョン。
cidr: "201.0.0.0/16" # VPC全体のCIDR。
internet_gateway: "true" # インターネットゲートウェイを作成します。
nat_gateway: "true" # Elastic IPのNATゲートウェイを作成します。
allow_duplicate_name: "false" # 同名のVPCが存在してもエラーになりません。
allow_duplicate_cidr: "false" # 同じCIDRのVPCが存在してもエラーになりません。
purge_cidrs: "true" # 既存のVPCを使う場合、すべてのCIDRを削除します。
peering:
- name: "test-1-peer"
vpc_id: "vpc-0504d01b93f46e610"
region: "eu-central-1"
cidr: "22.16.0.0/16"
update_accepter_route_table: "true" # アクセプターのルートテーブルにこのVPCへのルートを追加します。
dns:
enable_support: "true" # このVPCのDNSサポートを有効にします。
enable_hostnames: "true" # このVPCのホスト名解決を有効にします。
subnets:
- name: "public-1"
type: "public"
az: "eu-central-1a"
cidr: "201.0.1.0/24"
- name: "public-2"
type: "public"
cidr: "201.0.2.0/24"
az: "eu-central-1b"
- name: "private-1"
type: "private"
cidr: "201.0.3.0/24"
az: "eu-central-1a"
- name: "private-2"
type: "private"
cidr: "201.0.4.0/24"
az: "eu-central-1b"
tags:
created_by: "Matthew Davis"
次のコマンドで実行します:ansible-playbook -i <あなたのインベントリファイル> playbook.yaml
。
お問い合わせ
お問い合わせは https://matthewdavis.io までどうぞ。