SAA学習-VPC-NATゲートウェイの作成
今回のテーマ:NATゲートウェイの作成
主要サービスの公式資料
NAT ゲートウェイ: docs.aws.amazon.com
実施概要
実施項目
- パブリックサブネットとプライベートサブネットに1個ずつインスタンスを設置
- パブリックサブネットのEC2へアクセスしプライベートサブネットのEC2へ接続後yum updateを実行
- パブリックサブネットにNATゲートウェイを配置しプライベートサブネットのルートテーブルにNATゲートウェイへのルートを設定
- パブリックサブネットのEC2からプライベートサブネットのEC2へアクセスしyum updateを実施
- パブリックサブネットとプライベートサブネットに1個ずつインスタンスを設置
実際の手順
パブリックサブネットとプライベートサブネットに1個ずつインスタンスを設置
パブリックサブネットのEC2へアクセスしプライベートサブネットのEC2へ接続後yum updateを実行
パブリックサブネットでEC2を作成した後でパブリックIPの割りあえてがなかったため、設定している項目の見直し
- VPCの設定に「DNS解決」、「DNSホスト名」が有効化かどうか
- VPCのルートテーブルでインターネットゲートウェイが設置されているかどうか
- VPCに紐づくパブリックサブネットでIPv4の自動割りあてが有効化どうか
今回見直したら「VPCに紐づくパブリックサブネットでIPv4の自動割り当て」が有効化してませんでした。
備忘のためその箇所を残しておきます。
VPC-サブネットより該当するパブリックサブネットを選択し、アクション-自動割り当てIPの設定をクリック
パブリックIPv4アドレスの自動割り当てを有効にするにチェックを入れて保存
有効化する前のEC2
有効化した後のC2
作成した後のEC2へログイン
アップデートパッチのダウンロード
コマンド:
yum update -y
※自動許可をする場合はオプションのyを入れておくとよいです。
実行内容:
実行コマンドのオプション入れ忘れたので途中の「Is this ok [y/d/N]: y」と応答し、Enterしてます。
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd amzn2-core | 3.7 kB 00:00 Resolving Dependencies --> Running transaction check ---> Package kernel.x86_64 0:4.14.219-164.354.amzn2 will be installed ---> Package kernel-tools.x86_64 0:4.14.219-161.340.amzn2 will be updated ---> Package kernel-tools.x86_64 0:4.14.219-164.354.amzn2 will be an update --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: kernel x86_64 4.14.219-164.354.amzn2 amzn2-core 21 M Updating: kernel-tools x86_64 4.14.219-164.354.amzn2 amzn2-core 139 k Transaction Summary ================================================================================ Install 1 Package Upgrade 1 Package Total download size: 21 M Is this ok [y/d/N]: y Downloading packages: Delta RPMs disabled because /usr/bin/applydeltarpm not installed. (1/2): kernel-tools-4.14.219-164.354.amzn2.x86_64.rpm | 139 kB 00:00 (2/2): kernel-4.14.219-164.354.amzn2.x86_64.rpm | 21 MB 00:00 -------------------------------------------------------------------------------- Total 53 MB/s | 21 MB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Updating : kernel-tools-4.14.219-164.354.amzn2.x86_64 1/3 Installing : kernel-4.14.219-164.354.amzn2.x86_64 2/3 Cleanup : kernel-tools-4.14.219-161.340.amzn2.x86_64 3/3 Verifying : kernel-4.14.219-164.354.amzn2.x86_64 1/3 Verifying : kernel-tools-4.14.219-164.354.amzn2.x86_64 2/3 Verifying : kernel-tools-4.14.219-161.340.amzn2.x86_64 3/3 Installed: kernel.x86_64 0:4.14.219-164.354.amzn2 Updated: kernel-tools.x86_64 0:4.14.219-164.354.amzn2 Complete!
- プライベートサブネットのEC2へのアクセスするために接続する鍵をEC2へ配置
方法はSCPツールを使用し配置することやエディタを起動して鍵を値をコピーする方法があります。
今回は後者の方にします。
- 鍵ファイルの作成
コマンド:
vi (鍵名).pem
vi の使いかたは省略しますが、ローカルのカギを表示してコピーして貼り付けして保存
- 鍵ファイルへの権限変更
コマンド:
chmod 400 (鍵名).pem
- 鍵の権限確認
コマンド:
ls -l
サンプル:
[ec2-user@ip-10-0-0-61 ~]$ ls -l total 4 -r-------- 1 ec2-user ec2-user 1679 Mar 6 01:58 home-key.pem [ec2-user@ip-10-0-0-61 ~]$
- プライベートインスタンスへ接続
コマンド:
ssh ec2-user@(プライベートIP) - i (鍵名).pem
サンプル:
[ec2-user@ip-10-0-0-61 ~]$ ssh ec2-user@10.0.1.126 -i home-key.pem __| __|_ ) _| ( / Amazon Linux 2 AMI ___|\___|___| https://aws.amazon.com/amazon-linux-2/ [ec2-user@ip-10-0-1-126 ~]$
- プライベートEC2でyum updateが失敗することを確認
パブリックサブネットにNATゲートウェイを配置しプライベートサブネットのルートテーブルにNATゲートウェイへのルートを設定
*マネージドコンソールからVPCを検索後、NATゲートウウェイ選択しNATゲートウェイを作成をクリック
- 名前は任意、サブネットを配置するパブリックサブネット、ElasticIPの割り当てしクリック後、NATゲートウェイを作成をクリック
プライベートサブネットが使用しているルートテーブルに作成したNATGWを割り当てます。
VPC-ルートテーブル-プライベートサブネットのルートテーブルを選択し、ルートタグからルートの編集をクリック
- 設定がおわったら、ルートの保存をクリック
パブリックサブネットのEC2からプライベートサブネットのEC2へアクセスしyum updateを実施
- プライベートサブネットEC2でyum updateを実施し成功することを確認
今回のテーマ以上です。
補足:
有料サービスになる項目の削除をしておくとよいです。
今回の作業時での項目は以下となります。