AWS Black Belt Online Seminar Amazon Virtual Private Cloud(VPC) アマゾンウェブサービスジャパン株式会社ソリューションアーキテクトネットワークスペシャリスト菊池之裕 2018.04.18
AWS Black(White) Belt Online Seminar とは AWSJのTechメンバがAWSに関する様々な事を紹介するオンラインセミナーです 火曜 12:00~13:00 主にAWSのソリューションや業界カットでの使いどころなどを紹介 ( 例 :IoT, 金融業界向け etc.) 水曜 18:00~19:00 主にAWSサービスの紹介やアップデートの解説 ( 例 :EC2, RDS, Lambda etc.) 開催曜日と時間帯は変更となる場合がございます 最新の情報は下記をご確認下さい オンラインセミナーのスケジュール & 申し込みサイト https://aws.amazon.com/jp/about-aws/events/webinars/ 2
内容についての注意点 本資料では 2018 年 04 月 18 日時点のサービス内容および価格についてご説明しています 最新の情報は AWS 公式ウェブサイト (http://aws.amazon.com) にてご確認ください 資料作成には十分注意しておりますが 資料内の価格と AWS 公式ウェブサイト記載の価格に相違が あった場合 AWS 公式ウェブサイトの価格を優先とさせていただきます 価格は税抜表記となっています 日本居住者のお客様が東京リージョンを使用する場合 別途消費税 をご請求させていただきます AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided. 3
自己紹介 名前 : 菊池之裕 ( きくちゆきひろ ) 所属 : アマゾンウェブサービスジャパン株式会社ソリューションアーキテクトネットワークスペシャリスト ロール :Network 系サービスについてのご支援 経歴 :ISP,IXP,VPN 運用 開発を経てネットワーク機器 仮想ルータ販売会社のプリセールス プロダクト SE から AWS へ 好きな AWS サービス : ELB,Direct Connect,VPC,Market Place 4
このセミナーのゴール VPC のコンセプトに慣れる 基本的な VPC のセットアップが出来るようになる 自社の要件にあった仮想ネットワークの作り方を理解する 5
Agenda Amazon VPCとは? VPCのコンポーネントオンプレミスとのハイブリッド構成 VPCの設計 VPCの実装 VPCの運用まとめ 6
Agenda Amazon VPCとは? VPCのコンポーネントオンプレミスとのハイブリッド構成 VPCの設計 VPCの実装 VPCの運用まとめ 7
データセンターをデザインしようとするには 何が必要? 8
オンプレミス環境でのネットワークのイメージ 土地 電源 UPS ラック 空調 ラック ファイバー パッチパネル SFP 等 IF モジュール スイッチ ルータ ストレージ サーバ ロードバランサー ファイアーウォール WAF 遠隔操作用ターミナルサーバ 9
Before 従来の IT インフラ サービス開発グループ調達グループ現地作業グループ運用グループ 要件定義 納品待ち 検品 商用運用開始 データセンター 机上検討 発注 ラッキング 商用導入作業 ラック 構築するには 機器選定 調達決裁 ケーブリング メンテナンス時間調整 検証機手配 検証 設定投入 動作確認 ネットワーク機器 時間 (= コスト ) がかかる早くても数ヶ月 長いと半年 10
After クラウドで仮想ネットワークを構築 組み合わせてすぐ利用開始! データセンター バーチャルプライベートゲートウェイ インターネットゲートウェイ ラック ネットワーク機器 必要な機能を抽象化サービスとして予め用意されている (Network Function Virtualization) Elastic IP Elastic ネットワークインタフェース ルートテーブル + or 仮想ルータ API NAT ゲートウェイ WEB マネージメントコンソール 11
クラウドに対する悩み 不安 インターネット接続部分のスケールアウトは大丈夫? 社内業務アプリケーションはミッションクリティカルだから冗長とか大丈夫? クラウドを使いたいが社内ルール ( セキュリティ / ネットワーク ) に合わなそう 社内と専用線で接続したいけど どうやればいいの? 12
VPC(Virtual Private Cloud) で解決可能 AWS 上にプライベートネットワーク空間を構築 任意の IP アドレスレンジが利用可能 論理的なネットワーク分離が可能 必要に応じてネットワーク同士を接続することも可能 ネットワーク環境のコントロールが可能 ルートテーブルや各種ゲートウェイ 各種コンポーネント 複数のコネクティビティオプションが選択可能 インターネット経由 VPN/ 専用線 (Direct Connect) 13
Agenda Amazon VPCとは? VPCのコンポーネントオンプレミスとのハイブリッド構成 VPCの設計 VPCの実装 VPCの運用まとめ 14
様々なコンポーネントを用意 インターネットゲートウェイ サブネット 仮想ルータ ルートテーブル VPC Peering NAT ゲートウェイ VPC エンドポイント Elastic IP バーチャルプライベートゲートウェイ VPN コネクション カスタマゲートウェイ Elastic ネットワークインタフェース Elastic ネットワークアダプタ PrivateLink 15
まずは全体のネットワーク空間を VPC として定義 10.0.0.0 /16 16
利用するサブネットを定義 10.0.0.0 /16 10.0.1.0/24 EC2 Internet パブリックサブネット 17
インターネットへの接続を設定 10.0.0.0 /16 10.0.1.0/24 EC2 Internet パブリックサブネット 18
プライベートサブネットを追加 10.0.0.0 /16 10.0.2.0/24 10.0.1.0/24 EC2 Internet プライベートサブネット NAT ゲートウェイ EC2 パブリックサブネット 19
インターネットに接続しないネットワークも作成可能 10.0.2.0/24 EC2 プライベートサブネット 20
オンプレミスとの接続 10.0.2.0/24 EC2 オフィスデータセンター VPN or 専用線 プライベートサブネット 21
ネットワーク要件に応じて自由に設定可能 10.0.0.0 /16 10.0.2.0/24 10.0.1.0/24 EC2 EC2 Internet オフィスデータセンター VPN or 専用線 プライベートサブネット パブリックサブネット 22
VPC ウィザードで数画面で作成可能 2 希望のパターンを選択 ➀VPC ウィザードの開始をクリック 3 選択をクリック 4VPC の作成をクリック 23
ウォークスルー : インターネット接続 VPC セットアップ 24
インターネットへの接続を設定する VPC を作成 172.31.0.0/16 Internet ap-northeast-1a ap-northeast-1c 172.31.0.0/24 172.31.1.0/24 パブリックサブネット パブリックサブネット VPC subnet Availability Zone VPC subnet Availability Zone 25
インターネット接続 VPC のステップ ➀ 2 3 4 アドレスレンジを Availability Zone インターネットへの VPC への IN/OUT 選択 における Subnet を選択 経路を設定 トラフィックを許可 26
インターネット接続 VPC のステップ ➀ 2 3 4 アドレスレンジを Availability Zones インターネットへの VPC への IN/OUT 選択 における Subnet を選択 経路を設定 トラフィックを許可 27
CIDR 表記の再確認 ( Classless Inter-Domain Routing ) 以前のアドレス体系はクラスフルだった (IPv4 の 32 ビットアドレス空間を 8 ビットで区切る ) クラス A 16,777,214 個 (2 24-2) クラス B 65,534 個 (2 16-2) クラス C 254 個 (2 8-2) クラス B だと多過ぎ クラス C だと少な過ぎる場合など実際の組織のホスト数に柔軟合わせたい CIDR レンジのサンプル : 172.31.0.0/16 10101100 00011111 11000000 00000000 8/16/24 のいずれかではなく 可変長のビットマスクで必要に応じたアドレッシングが可能になった ネットワークアドレス部 ホストアドレス部 RFC(1518/1519を経て4632) にて定義 28
VPC に使うアドレスレンジの選択 172.31.0.0/16 推奨 : RFC1918 レンジ 推奨 :/16 (65,534 アドレス ) 最初に作成したアドレスブロックは作成後変更はできないので注意が必要 2 個目以降は追加 削除ができる 29
VPC の作成 IPv4 CIDR block にアドレスレンジを入力して作成 30
インターネット接続 VPC のステップ ➀ 2 3 4 アドレスレンジを Availability Zone インターネットへの VPC への IN/OUT 選択 における Subnet を選択 経路を設定 トラフィックを許可 31
VPC CIDR とサブネット数 CIDR に /16 を設定した場合の各サブネット数と使える IP アドレス数 サブネットマスク サブネット数 サブネットあたりの IP アドレス数 /18 4 16379 /20 16 4091 /22 64 1019 /24 256 251 /26 1024 59 /28 16384 11 VPC あたりのサブネット作成上限数はデフォルト 200 個 32
アベイラビリティゾーン AZは1つ以上のデータセンターで構成される 1リージョン内にAZが複数存在 ( 大阪ローカルリージョンを除く ) AZ はお互いに地理的 電源的 ネットワーク的に分離 2 つの AZ を利用した冗長構成を容易に構築 リージョン内の AZ 間は高速専用線で接続 ( リージョン間も可能な限り高速専用線で接続 ) Asia Pacific (Tokyo) Availability Zone A Availability Zone B Availability Zone D Availability Zone C 33
サブネットに対して AZ とアドレスを選択 172.31.0.0/16 推奨 : 各 AZ に Subnet を設定 ap-northeast-1a ap-northeast-1c 172.31.0.0/24 172.31.1.0/24 推奨 : Subnet に /24 設定 (251 個 ) VPC subnet Availability Zone VPC subnet Availability Zone 34
サブネットを作成 ネームタグ VPC アベイラビリティゾーン IPv4 CIDR block を指定して作成 35
サブネットで利用できない IP アドレス (/24 の例 ) ホストアドレス 用途.0 ネットワークアドレス.1 VPC ルータ.2 Amazon が提供する DNS サービス.3 AWS で予約.255 ブロードキャストアドレス (VPC ではブロードキャストはサポートされていない ) 36
インターネット接続 VPC のステップ ➀ 2 3 4 アドレスレンジを Availability Zone インターネットへの VPC への IN/OUT 選択 における Subnet を選択 経路を設定 トラフィックを許可 37
VPC 内におけるルーティング ルートテーブルはパケットがどこに向かえば良いかを示すもの VPC 作成時にデフォルトで 1 つルートテーブルが作成される VPC 内は作成時に指定した CIDR アドレスでルーティングされる 38
ルートテーブルの確認 送信先が同一のセグメントであれば同一セグメントに送信 (VPC 作成時にデフォルトで作成 ) 39
インターネットゲートウェイを作成 VPC にアタッチ VPC からインターネットへの接続がアタッチされた 40
仮想ルータとルートテーブルの関係 ( ルート Look up) EC2 インスタンス データ 送信元 172.31.1.10 送信先 172.31.1.20 仮想ルータ データ 送信元 172.31.1.10 送信先 172.31.1.20 EC2 ➀ パケット送信 データ 送信元 172.31.1.10 送信先 1.1.1.1 2 パケット到着 4 ターゲットへパケット転送 Local 3 テーブル Look Up インターネットゲートウェイ igw-29454e4c 送信先 172.31.1.20 はこっち行けば良い 送信先 1.1.1.1 はこっち行けば良い 41
パブリックサブネットとプライベートサブネット EC2 の OS で確認できるのはプライベート IP のみ パブリックサブネットの IP が IGW 経由でインターネットまたは AWS クラウドと通信するときにパブリック IP を利用 プライベートIP: プライベートIP: 172.31.0.100 172.31.1.100 プライベートIPで通信 パブリック IP: 54.0.0.100 パブリック IP で通信 EC2 EC2 Internet 172.31.0.0/24 172.31.1.0/24 プライベートサブネット パブリックサブネット VPC CIDR: 172.31.0.0/16 42
インターネット接続 VPC のステップ ➀ 2 3 4 アドレスレンジを Availability Zone インターネットへの VPC への IN/OUT 選択 における Subnet を選択 経路を設定 トラフィックを許可 43
セキュリティグループ = ステートフル Firewall デフォルトで許可されているのは同じセキュリティグループ内通信のみ ( 外からの通信は禁止 ) その為 必要な通信例えば WEB 公開する場合はインターネット (0.0.0.0/0) から 80 ポートを許可 44
Network ACLs = ステートレス Firewall サブネット単位で適用される デフォルトでは全ての送信元 IP を許可 45
VPC セキュリティコントロール VPC 172.31.0.0/16 EC2 Instance 1 10.1.1.6 EC2 Instance 2 10.1.1.7 EC2 Instance 3 10.1.10.20 Route Table インターネットゲートウェイ Virtual Router Route Table バーチャルプライベートゲートウェイ 46
ネットワーク ACL vs セキュリティグループ ネットワーク ACL サブネットレベルで効果 Allow/Deny を IN OUT で指定可能 ( ブラックリスト型 ) ステートレスなので 戻りのトラフィックも明示的に許可設定する 番号の順序通りに適用 サブネット内のすべてのインスタンスが ACL の管理下に入る セキュリティグループ サーバレベルで効果 Allow のみを IN OUT で指定可能 ( ホワイトリスト型 ) ステートフルなので 戻りのトラフィックを考慮しなくてよい 全てのルールを適用 インスタンス管理者がセキュリティグループを適用すればその管理下になる 47
VPC セットアップの補足 48
サブネット内の DHCP ENI (eth0) DHCP 機能 MAC アドレスプライベート IP の割当て サブネット内のENI(Elasticネットワークインタフェース ) にIPを自動割当て プライベートIPを固定にした場合は DHCP 経由で該当のIPが割当てられる (EC2インスタンスのOS 上のNIC 設定はDHCP 設定とする ) サブネット 49
Amazon DNS サーバー データセンター Amazon が提供する DNS サービス Amazon Provided DNS 10.0.0.2 or 169.254.169.253 以下の 2 つのアドレスが利用可能 1VPC のネットワーク範囲 (CIDR) の アドレスに +2 をプラスした IP (10.0.0.0/16 の場合は 10.0.0.2) 2169.254.169.253 10.0.1.0/24 10.0.10.0/24 サブネット サブネット アベイラビリティゾーン A アベイラビリティゾーン B VPC CIDR: 10.0.0.0 /16 VPC 内の EC2 インスタンスからのみ参照可能 (VPN や専用線経由では参照できない ) EC2 インスタンスや Simple AD などで DNS Proxy にて対応する http://docs.aws.amazon.com/ja_jp/amazonvpc/latest/userguide/vpc_dhcp_options.html#amazondns 50
DNS 機能の有効化とホストへの DNS 名割当て Enable DNS resolution 基本は yes とする No にすると VPC の DNS 機能が無効となる Enable DNS hostname True にすると DNS 名が割り当てられる Enable DNS resolution を true にしないと有効にならない 51
Amazon Time Sync Service VPC 内で稼働する全てのインスタンスから NTP で利用できる高精度な時刻同期サービス EC2 インスタンス内で NTP サーバの IP アドレスとしてとして 169.254.169.123 を設定するだけで利用できる このアドレスはリンクローカルアドレスなので 外部インターネットへのアクセスは不要 プライベートサブネット内でも利用できる Leap Smearing による うるう秒 への対策が実装済み 無料で全リージョンで利用可能 52
IPv6 の対応 S3 CloudFront WAF Route53 に続き VPC ALB が IPv6 対応 10.0.0.0 /16 2001:db8:1234:1a00::/56 オフィスデータセンター Direct Connect 10.0.2.0/24 2001:db8:1234:1a01::/64 EC2 Basion プライベートサブネット 10.0.1.0/24 2001:db8:1234:1a00::/64 EC2 EC2 EC2 WEB パブリックサブネット Application Load Balancer AWS WAF Amazon CloudFront Amazon Route 53 Internet gateway Egress-only Internet Gateway Amazon S3 Internet 上記のような構成を IPv4/IPv6 デュアルスタックで構築可能 Egress-only Gateway(EGW) を利用して IPv6 においてもプライベート利用が可能 https://aws.amazon.com/jp/blogs/news/new-ipv6-support-for-ec2-instances-in-virtual-private-clouds/ 53
VPC における IPv4 と IPv6 の特徴と制限 IPv4 IPv6 アドレス体系 32bit 128bit VPC での利用 CIDR ブロックサイズ サブネットブロックサイズ パブリック IP/ プライベート IP インスタンスタイプ デフォルトで適用 16 28bit で選択自分で任意のアドレスを設定可能 オプトイン ( 自動適用ではなく任意 ) 56bit 固定かつ自動で 56bit CIDR がアサインされる ( 選べない ) 16 28bit で選択 64bit 固定 それぞれ存在 (NAT を介してパブリック IP をプライマリプライベート IP に MAP) 全てのインスタンスタイプ パブリックのみ ( プライベートにするには Egress-only Internet Gateway を利用 ) M3 G2 を除く全ての現行世代のインスタンスタイプでサポート アマゾン提供 DNS プライベート IP Elastic IP に対するそれぞれの DNS ホスト名を受信 提供される DNS ホスト名はなし 閉域接続 VPN DirectConnect DirectConnect のみ http://docs.aws.amazon.com/ja_jp/amazonvpc/latest/userguide/vpc-ip-addressing.html 54
Agenda Amazon VPCとは? VPCのコンポーネント VPCのセキュリティオンプレミスとのハイブリッド構成 VPCの設計 VPCの実装 VPCの運用まとめ 55
VPC とのプライベートネットワーク接続 VPN 接続 バーチャルプライベートゲートウェイを利用したサイト間 VPN 専用線接続 AWS Direct Connect を利用し 一貫性のあるネットワーク接続を実現本番サービス向け 56
VPN 接続構成 トンネル #1 トンネル #2 カスタマゲートウェイ 1つのVPN 接続は2つのIPsec トンネルで冗長化 ルーティングは静的 ( スタティック ) 動的 ( ダイナミック :BGP) が選択可能 バーチャルプライベートゲートウェイ VPN 接続 57
専用線 (Direct Connect) 接続構成 バーチャルプライベートゲートウェイ 相互接続ポイント (Equinix TY2 or OS1 or @Tokyo CC1 or Chief Telecom LY) カスタマゲートウェイ AWS とお客様設備を専用線でネットワーク接続 相互接続ポイントへ専用線を敷設 し AWS のルータと相互接続 東京リージョンの相互接続ポイントは 東京 (Equinix TY2,@Tokyo CC1) 大阪 (Equinix OS1) 台北 (Chief Telecom LY) ルーティングは BGP のみ 接続先は以下の 2 つ VPC( プライベート接続 ) AWS クラウド ( パブリック接続 ) VPN よりも一貫性がある 帯域のパフォーマンスも向上 ネットワークコストも削減 58
VPC からオンプレミスへのルート設定 10.1.0.0/16 VPC からオンプレミスへの通信を するためには各サブネットの ルートテーブルの設定が必要 伝達 宛先 : オンプレミスの IP ターゲット :VGW の ID 10.1.0.0/24 Route Table Destination Target 10.1.0.0/16 local 192.168.10.0/24 vgw 192.168.10.0/24 ルートテーブルで ルート伝達 ( プロパゲート ) を有効にすると VGWで受信したルート情報をルートテーブルに自動的に伝達 ( 頻繁にオンプレのルートが更新される場合はこちらを利用 ) 59
Direct Connect Gateway Direct Connect Gateway が Hub になり 同一アカウントに所属する複数のリージョンの複数のロケーションから複数リージョンの複数の VPC に接続できる機能 Direct Connect から世界の全リージョン ( 中国除く ) の VPC に接続することができる 1 つの Direct Connect の仮想インターフェイスから複数の VPC に接続することができる 複数の Direct Connect の仮想インターフェイスを Direct Connect Gateway に接続することができる 1つ以上のDirect Connect ロケーションに繋げば全世界の全リージョン ( 中国除く ) に閉域網接続でき同一リージョンまたは世界の複数リージョンをまたいで複数のVPCに接続できる機能 60 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ユースケース 1. 仮想インターフェイスから同一リージョン上の複数 VPCのアタッチ 2. 接続点の冗長化 ( 東京 大阪 ) 3. 東京リージョンから全世界のリージョンへの接続 ( 東京 CC1) ap-northeast-1 ( 東京 ) ap-northeast-3 ( 大阪ローカル ) ( 大阪 OS1) us-east-1 ( バージニア北部 ) ap-southeast-1 ( シンガポール ) 61
Direct Connect Gateway の接続例 Direct Connect Connection VGW 東京リージョン オフィスデータセンター VIF VIF DXGW シンガポールリージョン オフィスデータセンター 62
インターネット VPN vs 専用線 コスト インターネット VPN 安価なベストエフォート回線も利用可能 専用線 キャリアの専用線サービスの契約が必要 リードタイム即時 ~ 数週間 ~ 帯域 品質 障害時の切り分け 暗号化のオーバーヘッドにより制限あり インターネットベースのため経路上のネットワーク状態の影響を受ける インターネットベースのため自社で保持している範囲以外での切り分けが難しい ポート当たり 1G/10Gbps /LAG 可能 キャリアにより高い品質が保証されている エンドツーエンドでどの経路を利用しているか把握できているため比較的容易 63
VPN と Direct Connect の冗長化 10.0.0.0/16 優先 Direct Connect 192.168.10.0/24 VPN と Direct Connect を同じ VGW に接続することが可能 Direct Connect = アクティブ VPN = スタンバイ この場合 VPC から見た Outbound は必ず Direct Connect が優先 される (VPN を優先したい場合は VPN ルータから Direct Connect より長い Prefix を広告 ) 10.0.0.0/24 VPN VPN へのフェールオーバー時は レイテンシなど回線品質に注意 64
Transit VPC 日本本社 海外拠点 CloudFormation テンプレートとして提供 VPC をグローバルネットワーク転送センターとして機能 2 つ以上の AWS リージョンに渡るプライベートネットワークを構築可能 すべての AWS リージョンを定期にスキャンし VPN 接続がないスポーク VPC で適切にタグされた仮想プライベートゲートウェイを探す 発見すると各 VPC と TransitVPC(Cisco CSR on EC2) 間にて自動で VPN 作成および BGP 接続を行う 通常のインスタンスとネットワークの料金に加え Cisco CSR のライセンス料金が課金される (BYOL も可能 ) https://aws.amazon.com/jp/blogs/news/aws-solution-transit-vpc/ 65
Agenda Amazon VPCとは? VPCのコンポーネント VPCのセキュリティオンプレミスとのハイブリッド構成 VPCの設計 VPCの実装 VPCの運用まとめ 66
VPC 設計のポイント CIDR(IP アドレス ) は既存の VPC 社内の DC やオフィスと被らないアドレス帯をアサイン プライベートアドレスで無い場合は 100.64.0.0/10 CGNAT を使うのも手 複数のアベイラビリティゾーンを利用し 可用性の高いシステムを構築 パブリック / プライベートサブネットへのリソースの配置を慎重に検討 適切なセキュリティ対策を適用する システムの境界を明らかにし VPC をどのように分割するか将来を見据えてしっかりと検討する 67
AWS クラウドと VPC AWS クラウド SQS SNS DynamoDB IoT Kinesis パブリックサブネット Elasti Cache RDS Lambda パブリック / プライベートサブネット NAT ゲートウェイ EC2 Elastic SearchService Lambda ELB Redshift EMR パブリックサブネット アベイラビリティゾーン 1 アベイラビリティゾーン 2 S3 VPC エンドポイント ECS パブリック / プライベートサブネット VPC 内と外のどちらにリソースやエンドポイントが存在するかサービスに よって異なる VPC から AWS クラウドへのリソースは IGW 経由の通信となるプライベートサブネットからは NAT ゲートウェイ S3 であれば VPC エンドポイントの利用も可能パブリックサブネットからは 自動割当てまたは EIP のパブリック IP から直接アクセス S3,DynamoDB へのアクセスは VPC エンドポイント (Gateway 型 ) が利用可能 : 表示しているサービスは一部のみです データセンター 本社オフィス 68
VPC Endpoint 概要 VPC Endpoint S3 VPC Endpoint は グローバル IP をもつ AWS のサービスに対して VPC 内部から直接アクセスするための出口です Dynamo DB 69
動作比較 Gateway 型の動作 サブネットに特殊なルーティングを設定し VPC 内部から直接サービスと通信する 1S3 の IP は? Amazon Provided DNS 2 52.219.68.108 だよ 3 52.219.68.108 へ通信 S3 通信先の IP アドレスはグローバル IP アドレス ルートテーブル S3 へは vpce-1a2bc3 を通れ VPC Endpoint (vpce-1a2b3c) S3 向けの IP アドレスは pl-xxxxx という論理名で表され 実際の Destination は AWS が管理している Dynamo DB 70
動作比較 PrivateLink (Interface 型 ) の動作 サブネットにエンドポイント用のプライベート IP アドレスが生成される VPC 内部の DNS がエンドポイント向けの名前解決に対してしてプライベート IP アドレスで回答する 1EC2 の API の IP は? Amazon Provided DNS 2 10.0.0.100 or 10.0.1.100 だよ 3 10.0.0.100 へ通信 4 AWS 内部で EC2 API に転送 EC2 用 VPC エンドポイント例 )10.0.0.100 API EC2 API エンドポイント用プライベート IP アドレス向け通信が内部的にサービスに届けられる エンドポイント用プライベート IP サービスごとに設定が必要で IP アドレスは自動で採番される (ELB や RDS などと似ている ) API EC2 用 VPC エンドポイント例 )10.0.1.100 Kinesis Streams API 71
機能比較 Gateway 型 PrivateLink(Interface 型 ) アクセス制御エンドポイントポリシーセキュリティグループ IAM Policy と同じ構文でアクセス先のリソースを制限可能 セキュリティグループでアクセス元 IP ポートを制御可能 対象のサービスの特定のリソースへのアクセス制御は不可 利用料金無料有料 サービスごとに 1 プライベート IP 毎に下記の料金 0.014 USD/ 時間 ( 東京 )+ 0.01 USD/ GB https://aws.amazon.com/jp/vpc/pricing/ 冗長性ユーザー側で意識する必要なしマルチ AZ 設計 マルチ AZ で配置するように設定する 72
PrivateLink for Customers and Partners NLB Client VPC Provider VPC PrivateLink はユーザが自分で作ることもできる 73
NAT ゲートウェイ パブリックサブネット 1 0/0 NAT-A パブリックサブネット 2 0/0 NAT-B AWSによるマネージドNATサービス プライベートサブネットのリソースがインターネットまたはAWSクラウドへ通信するために必要 EIPの割当て可能 高パフォーマンス( 最大 10Gbpsバースト ) 高可用性( ビルトインで冗長化 ) アベイラビリティゾーン毎に設置するのがベストプラクティス プライベートサブネット1 プライベートサブネット2 アベイラビリティゾーン 1 アベイラビリティゾーン 2 VPC Route Table Destination Target 10.0.0.0/16 local 0.0.0.0/0 NATゲートウェイ 74
VPC を分割するケース ( 例 ) アプリケーションによる分割監査のスコープによる分割リスクレベルによる分割本番 / 検証 / 開発フェーズによる分割部署による分割共通サービスの切り出し AWSアカウントとVPC 分割パターンはお客様のITオペレーションモデルに沿ったものである必要がある 75
フェーズによる VPC 分割 シングルアカウント シングル VPC IAM による権限分離 タグによるコスト管理 DEV LAN STG LAN PROD LAN DEV サブネット STG サブネット PROD サブネット データセンター 76
組織ごとの VPC 分割 マルチアカウント マルチ VPC モニタリングや認証などのコアサービスは共通 VPC と VPC ピアリングで接続 DEV DEV STG STG LOB1 DEV VPC LOB1 STG VPC LOB1 PROD VPC LOB1 DEV VPC LOB1 STG VPC LOB1 PROD VPC PROD PROD LOB 1 LAN LOB 2 LAN IT LAN 共通 VPC データセンター 77
(Inter-region) VPC Peering (VPC ピア接続 ) VPC CIDR: 10.1.0.0 /16 VPC CIDR: 10.2.0.0 /16 pcx-xxxxxx 10.1.1.0/24 10.2.1.0/24 アベイラビリティゾーン A アベイラビリティゾーン B 2 つの VPC 間でトラフィックの ルーティングが可能 同一の AWS アカウントはもちろん 異なる AWS アカウント間 ( クロス アカウント ) の VPC 間をピア接続 することも可能 単一障害点や帯域幅のボトルネック は存在しない リージョンを跨いで構築可能 (New) Route Table Destination Target 10.0.0.0/16 local 0.0.0.0/0 pcx-xxxxxx Route Table VPC CIDR: 10.1.0.0 Destination /16 Target 10.2.0.0/16 local 0.0.0.0/0 pcx-xxxxxx 以下の点に注意 MTU (VPC Peering 1,500byte) 直接 Peering している VPC とのみ 通信可能 (2HOP は不可 ) http://docs.aws.amazon.com/ja_jp/amazonvpc/latest/userguide/vpc-peering.html 78
Agenda Amazon VPCとは? VPCのコンポーネント VPCのセキュリティオンプレミスとのハイブリッド構成 VPCの設計 VPCの実装 VPCの運用まとめ 79
VPC の実装方法 マネージメントコンソール AWS CLI AWS SDK サードパーティツール AWS CloudFormation aws ec2 create-vpc --cidr-block 10.0.0.0/16 from vpc.boto import VPCConnection c = VPCConnecction() vpc = c.create_vpc('10.0.0.0/16') resource "aws_vpc" "main" { cidr_block = "10.0.0.0/16" tags { Name = "main" } } { "AWSTemplateFormatVersion" : "2010-09-09", "Resources" : { "myvpc" : { "Type" : "AWS::EC2::VPC", "Properties" : { "CidrBlock" : "10.0.0.0/16", "EnableDnsSupport" : "false", "EnableDnsHostnames" : "false", "InstanceTenancy" : "dedicated", "Tags" : [ { "Key" : "foo", "Value" : "bar } ] } } } } 80
CLI - VPC 作成 aws ec2 create-vpc --cidr 10.10.0.0/16 aws ec2 create-subnet --vpc vpc-c15180a4 --cidr 10.10.1.0/24 --a us-west-2a aws ec2 create-subnet --vpc vpc-c15180a4 --cidr 10.10.2.0/24 --a us-west-2b 81
AWS CloudFormation JSON/YAML テンプレートを元に AWS 環境を構築 { "AWSTemplateFormatVersion" : "2010-09-09", "Resources" : { "myvpc" : { "Type" : "AWS::EC2::VPC", "Properties" : { "CidrBlock" : "10.0.0.0/16", "EnableDnsSupport" : "false", "EnableDnsHostnames" : "false", "InstanceTenancy" : "dedicated", "Tags" : [ { "Key" : "foo", "Value" : "bar } ] } } } } テンプレート (JSON 形式 ) CloudFormation AWS 環境 ( スタック ) が完成 テンプレートサンプル : http://docs.aws.amazon.com/ja_jp/awscloudformation/latest/userguide/chap_templatequickref.html 82
AWS CloudFormation デザイナー GUI でテンプレートの作成が可能 83
Agenda Amazon VPCとは? VPCのコンポーネント VPCのセキュリティオンプレミスとのハイブリッド構成 VPCの設計 VPCの実装 VPCの運用まとめ 84
VPC Flow Logs とは ネットワークトラフィックをキャプチャし CloudWatch Logs へ Publish する機能 ネットワークインタフェースを送信元 / 送信先とするトラフィックが対象 セキュリティグループとネットワーク ACL のルールで accepted/reject されたトラフィックログを取得 キャプチャウインドウと言われる時間枠 ( 約 10 分間 ) で収集 プロセッシング 保存 RDS, Redshift ElasticCache WorkSpaces のネットワークインタフェーストラフィックも取得可能 追加料金はなし (CloudWatch Logs の標準料金は課金 ) 85
利用例 :Elasticsearch Service + kibana による可視化 Elasticsearch へ PUT VPC CloudWatch Logs Elasticsearch Service kibana https://blogs.aws.amazon.com/security/post/tx246goznfiw79n/how-to-optimize-and- Visualize-Your-Security-Groups 86
VPC のリミット関連 代表的な VPC のリミット リソース数リージョン当たりの VPC の数 5 デフォルトの上限値が増加したものもあり http://docs.aws.amazon.com/amazonvpc/late st/userguide/vpc_appendix_limits.html VPC 当たりのサブネットの数 200 AWS アカウント当たり 1 リージョン内の Elastic IP 数 5 ルートテーブル当たりのルートの数 100 VPCあたりのセキュリティグループの数 500 セキュリティグループあたりのルール数 (In/Out) 50 ネットワークインタフェースあたりのセキュリティグループ 5 VPC 当たりのアクティブなVPCピア接続 125 VPCあたり ( 仮想プライベートゲートウェイ ) のVPN 接続数 10 Web サイトから制限解除申請可能 http://aws.amazon.com/jp/contact-us/vpcrequest/ 不明点は AWS サポートや担当営業までお問い合わせください 87
まとめ VPC により さまざまな要件に合わせたネットワークを簡単に作成可能 設計時には将来の拡張も見据えたアドレッシングや他ネットワークとの接続性も考慮する VPC 構成は自社の IT オペレーションモデルに合わせる VPC 単体ではなく VPC 全体の関係性も視野に入れる 実装や運用を補助するツールも有効利用 88
オンラインセミナー資料の配置場所 AWS クラウドサービス活用資料集 https://aws.amazon.com/jp/aws-jp-introduction/ AWS Solutions Architect ブログ 最新の情報 セミナー中の Q&A 等が掲載されています https://aws.amazon.com/jp/blogs/news/ 89
公式 Twitter/Facebook AWS の最新情報をお届けします @awscloud_jp 検索 もしくは http://on.fb.me/1vr8ywm 最新技術情報 イベント情報 お役立ち情報 お得なキャンペーン情報などを日々更新しています! 90
お問い合わせ先 AWS 導入に関しての問い合わせ http://aws.amazon.com/jp/contact-us/aws-sales ( ご利用者様向け ) 課金 請求内容 アカウントに関するお問い合わせ https://aws.amazon.com/jp/contact-us/ AWS 技術サポート https://aws.amazon.com/jp/premiumsupport/ 91
92