VPC Peeringの設定

  • 39
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

VPC Peeringとは

2つのVPC間の通信を外部ネットワーク経由でなくL3ネットワーク経由で、でVPC間の相互に通信ができるサービスです。

VPC Peeringの概要や利用する際の注意点(IPアドレスの重複は避けようとか、は公式ブログが詳しいです。

やりたいこと

  • AWSアカウントAのVPC-A(10.0.0.0/16)にZabbix Serverを用意し、AWSアカウントBのVPC-B(10.45.0.0/22)にZabbix AgentをインストールしたEC2インスタンスを用意して監視する。そのためのVPC Peeringの設定方法を記載します。

概要図

こんな構成で作りたい

手順

VPC Peeringを設定する

VPC-A(10.0.0.0/16)とVPC-B(10.45.0.0/22)間で通信ができるようにVPC Peeringを設定する

VPC-A側でVPC Peering Connectionを作成する

VPC DashboardからPeering Connectionsを選択し、右側画面上部「Create VPC Peering Connection」をクリック。

VPCsetting1

VPC Peering Connectionの設定を行う

VPCsetting2

項目名 説明
NameTag VPC Peeringのネームタグ
Local VPC to peer 設定する接続元VPCの選択
Account 自分のアカウントか別のアカウントかを選択する。自分の場合は直下の一覧から接続先VPCを選択する。別のアカウントの場合はアカウントID(数字のやつ)とVPC IDを入力する。

VPC-A側にVPC Peering Connectionが作られた。

ただしstatus「Pending Acceptance by xxxxxxx」となっている。
別アカウントをまたいだVPC Peeringを作る場合は、相手側の承認が必要になる。承認期限は1週間みたいだ。(この場合はVPC-B側の承認が必要)
VPCsetting3

VPC-B側でVPC-A側で作成したVPC Peering Connectionを承認する

VPC-B側ではVPC-A側で作成したVPC Peering Connectionのリクエストが来ているので、AWSアカウントIDとVPC IDを確認した上で「Accept request」をクリック
VPCsetting4

確認ダイアログを経て、statusが「active」になっていればOK!

VPCsetting5

VPC-A,Bでルーティング設定を行う

VPC Peering connectionができただけでは実際の通信はできません。それぞれのVPCでルーティング設定を行う必要があります。

VPC DashboardからRoute Tablesを選択してルーティングの編集を行うと、先ほど作成したVPC Peering Connection(pcx-xxxxxx)がTargetとして選択できるようになっています。

  • VPC-A(10.0.0.0/16) -> VPC-B(10.45.0.0/22)へのルーティング設定 VPCsetting5  
  • VPC-B(10.45.0.0/22) -> VPC-A(10.0.0.0/16)へのルーティング設定 VPCsetting6

これでVPC-A,B同士の相互通信ができるようになりました。
なお、通信テストをする際はEC2等についているSecurity Groupも許可することを忘れないでください。