AWSで、2つのVPC間をピアリング接続して通信できるようにしてみました。
目次
作業の概要
VPC間で通信できるようにするため、以下のような流れで作業をします。
事前準備
VPCを作成する
ピアリング接続を試すために、VPCを2つ作成します。
今回はピアリング接続を試すだけなので、プライベートサブネット1つ・AZ1つで作成します。

各VPCにEC2インスタンスを作成する
通信するWebサーバ(EC2インスタンス)を各VPC上に作成する。

VPCのピアリング接続を作成する
VPCのメニューの[仮想プライベートクラウド]>[ピアリング接続]から、「ピアリング接続を作成」をクリックしてピアリング接続を作成します。
リクエスタ、アクセプタに事前準備で作成したVPCを設定し、「ピアリング接続を作成」をクリックします。

ピアリング接続を作成すると「承諾の保留中」となるため、[アクション]>[リクエストの承諾]をクリックして、ポップアップの[リクエストを承諾]をクリックして承諾します。
以上で、2つのVPC間にピアリング接続が作成されました。
ルートテーブルを編集する
ピアリング接続を作成しただけではVPC間の通信がルーティングされないため、ルートテーブルを編集します。
各VPCのサブネットが関連付けられているルートテーブルに、もう一方のVPCへのルートを追加します。
まず、VPC1のサブネットに関連付けられているルートテーブルを編集します。

ルートテーブルにチェックを入れて詳細を表示して、[ルート]>[ルートを編集]からルートを追加します。

送信先がVPC2のCIDRブロック、ターゲットが作成済みのピアリング接続のルートを追加します。[変更を保存]をクリックして、ルートテーブルを更新します。

VPC2のサブネットに関連付けられているルートテーブルも、同様に編集します。

以上で、2つのVPC間のルートがルートテーブルに追加されました。
セキュリティグループを編集する
ルーティングまでは実施されるようになりましたが、このままだとファイアウォール(セキュリティグループ)で通信が拒否されてしまうため、セキュリティグループを編集します。
今回は、VPC1のEC2→VPC2のEC2 のpingが通るように設定してみます。
VPC2にあるEC2に設定されているセキュリティグループを編集します。

[インバウンドルール]>[インバウンドのルールを編集]からインバウンドルールを追加します。

VPC1からの「すべてのICMP - IPv4」を許可するルールを追加します。[ルールを保存]をクリックして、セキュリティグループを更新します。

以上で、VPC1のEC2→VPC2のEC2 のpingが許可されるようになりました。
動作確認
VPC1のEC2に接続して、実際にVPC2のEC2にpingをしてみます。
EC2 Instance Connectで接続しました。

pingが通りました!
参考文献
VPC ピア機能とは - Amazon Virtual Private Cloud
https://docs.aws.amazon.com/ja_jp/vpc/latest/peering/what-is-vpc-peering.html
AWSのVPCをVPCピアリング接続で相互に通信できるようにする
https://zenn.dev/rescuenow/articles/8e21a751c828c6
【神アプデ】え!? プライベートなEC2にもAWSマネコンから簡単SSHできるように?? #ハンズオン - Qiita
https://qiita.com/minorun365/items/696ba8bf683a403550d0