OCIの勉強メモ~VCN編~
OCIの勉強会(?)第2回目はVCNです。
クラウドでサービスを構築する際の最も基本的な要素なので、しっかり要点を押さえたいところです。
- VCNの特徴
- サブネット
- VNIC
- パブリックIP
- セキュリティ・リスト(SL)
- ネットワーク・セキュリティ・グループ(NSG)
- Bastionホスト
- Gateway
- VCN Peering
- VCNからオンプレミスへの接続
- まとめ
VCNの特徴
VCN(Virtual Cloud Network)は、OCI上で仮想ネットワークを提供するリージョナルサービス
AWSで言うところのVPCに該当するサービスで、数クリックで簡単にネットワークを構成できるのが特徴
VCNのIPアドレス範囲は/16~/30までとなっている
ただし、CIDRブロックの数に関係なく、VCN内で作成できるプライベートIPの最大数は64,000となっている
デフォルト・コンポーネント
VCNを作成すると、次の3つのコンポーネントが自動で作成される
- ルート表
- セキュリティ・リスト
- DHCPオプション・セット
セキュリティ・リストとはサブネットに関連付けられている仮想ファイアフォール、AWSで言うところのネットワークACLのようなもの
後に出てくるがOCIにはもう一つネットワーク・セキュリティ・グループ(NSG)と呼ばれるものがある
これはAWSで言うところのセキュリティグループで、コンピュートインスタンスのような特定のサービスに関連付けられている仮想ファイアフォール
サブネット
VCNを作成しても、そこにコンピュートインスタンスを配置することはできない
各VCNネットワークは、さらにサブネットの単位で細分化する必要がある
コンピュートインスタンスは、サブネットに配置されそのサブネットから、内部IPアドレスとネットワーク構成を取得する
サブネットにはタイプとして、リージョナルと可用性ドメイン固有が存在するが、リージョナルが推奨されている
またサブネットの種類として、インターネットから直接到達可能なパブリックサブネットと、インターネットから直接到達不可能なプライベートサブネットが存在する
VNIC
サブネットに配置されたインスタンスには、各サブネットに属するVNIC(Virtual Network Interface Card)がアタッチされる
VNICには必ず1つのプライマリープライベートIPアドレス*1が付随し、さらに最大31個のセカンダリプライベートIPを付与することができる
1つのインスタンスに複数のVNICをアタッチすることも可能
パブリックIP
インターネットから到達可能なIPv4アドレスをパブリックIPと呼ぶ
1つのインスタンスに、複数のVNICで複数のパブリックIPを割り当てることも可能
パブリックIPには次の2種類が存在する
セキュリティ・リスト(SL)
サブネットに関連付けられたファイアウォール
そのサブネット内で起動しているインスタンスすべてに適用される*3
前述した通り、AWSではネットワークACLに該当する機能である
ただし、ネットワークACLと異なり、ルールでステートフルかステートレスを選択できる
1つのサブネットに最大で5つのSLを関連付けることができる
ネットワーク・セキュリティ・グループ(NSG)
サブネットに関連付けるセキュリティ・リストに対して、NSGはコンピュートインスタンスといったリソースに関連付けるファイアウォール*4
AWSで言うところのセキュリティグループに該当する機能である
SLと併用して利用できるが、その場合SLまたはNSGのいずれかのルールによりトラフィックが許可されている場合、そのパケットは許可される(どちらもAllowしか記述できないので、当たり前といえば当たり前)
Bastionホスト
いわゆる踏み台サーバーのこと
一般的にプライベートサーバーに接続する際は、Bastionサーバーに一度SSHで接続し、そこからさらにプライベートサーバーにSSHで接続する
そのため、Bastionホストは外部からSSH接続可能なサブネットに配置する必要がある
Gateway
Internet Gateway
VCNとインターネットの通信に必要なゲートウェイ
NAT Gateway
プライベートサブネットにあるインスタンスは、インターネットへの通信ができない
しかし、ソフトウェアの更新などインターネットへ通信を行う必要もある
そういう場合にはNATゲートウェイを作成し、NATゲートウェイを経由することでインターネットへの通信を可能とする
こうすることで、プライベートサブネットからインターネットへの一方通行の通信が可能となる
Service Gateway
VCNとOracle Service Network(OSN)間の通信を、インターネットを経由することなく安全に行うためのゲートウェイ
例えばコンピュートインスタンスからオブジェクトストレージに通信する際に、インターネットを経由せずに通信をしたい場合などに使える
(イメージとしては、AWSのVPCエンドポイントに近いのか?)
Dynamic Routing Gateway
VCNとオンプレミスネットワーク、OCI VCNなどの間のプライベート通信を行うためのゲートウェイ
VCN Peering
Local Perring Gateway(LPG)
同一リージョン内の、2つのVCN間のプライベート接続を行う*5
Remote Peering Connection(Dynamic Routing Gateway)
異なるリージョン間で、2つのVCN間のでプライベート接続を行う*6
ただし、Remote Peeringは機能拡張をして、同一リージョン間でもプライベート接続を行えるようになった
DRG(Dynamic Routing Gateway)の機能拡張
- リモートピアリング接続(RPC)
- 複数のVCNにDRGを接続して、VCN間ネットワーク接続を提供する
- Remote On Ramp/Transit Routing
- DRGを複数利用した冗長化構成
- ECMP*7のサポート
DRGは下記の3つのリソースに接続可能である
VCNからオンプレミスへの接続
VPN
構成の流れ
- VCNを作成
- DRGを作成し、VCNにアタッチ
- ルートテーブルを更新する
- オンプレミス側にCPEオブジェクトを作成
- CPEとDRGの間にIPSec接続を作成し、スタティック・ルートを提供するか、BGPルーティングを使用する
- オンプレミスのCPEルートを設定する
FastConnect
- 専用線サービス(AWSのDirect Connectのようなもの)
- FastConnectダイレクトか、FastConnectパートナーを介して接続
- DRG(Dynamic Routing Gateway)に接続
- ポート速度は1Gbps、10Gbps単位で設定可能
- 受信/送信データの転送に料金はかからない
- BGPプロトコルを使用
- SLA対象(99.9%の可用性)
まとめ
というわけで、2回目はVCNについて勉強しました。
VCNは基本中の基本となるサービスなので、他のサービスを勉強する際にも出てきそうですね。