はじめに
こんにちは、技術部の今野です。
OCI(Oracle Cloud Infrastructure)でインフラを構築するうえで、まず理解しておきたいのが「VCN(Virtual Cloud Network)」です。これは、オンプレミス環境で言えばルーターやスイッチ、ファイアウォールなどを組み合わせて構成していた社内ネットワークに相当し、OCI上に“自社専用のネットワーク空間”を構築できる仕組みです。柔軟なネットワーク設計と、クラウドならではのスケーラビリティやセキュリティ制御を両立できる点が特徴です。
本記事では、VCNの基本的な役割や設計の考え方に加え、構築・運用で押さえておきたいポイントまで解説します。
VCNの基本的な特徴と役割
① テナンシ(アカウント)ごとに作成できる独立ネットワーク
VCNはOCIアカウント(テナンシ)単位で作成され、他のアカウントとは完全に分離された状態で動作します。内部にはサーバー(Compute)、データベース、ロードバランサーなどのあらゆるリソースを配置できます。
② 単一リージョン内で高可用構成も可能
VCNは単一リージョン内で動作しますが、リージョンに存在する複数の可用性ドメイン(AD: Availability Domain)にまたがって利用できます。これにより、障害に強い構成(冗長化)も実現可能です。
③ IPアドレス設計はCIDRで管理
作成時にCIDRブロック(例:10.0.0.0/16)を指定し、ネットワーク内のIPアドレス空間を管理します。これは、オンプレでのIP設計と似た感覚で、範囲内で自由にサブネットを切ることができます。
④用途やセキュリティに応じたサブネット分割
VCN内には1つ以上のサブネット(Subnet)を作成します。サブネットはパブリック/プライベートに分類可能で、以下のような使い分けが一般的です。
- 🔓 パブリックサブネット:Webサーバーなど、インターネットからアクセスさせたいリソース用
- 🔒 プライベートサブネット:DBや内部APIなど、社内システム限定で利用するリソース用
VCN構成に必要なコンポーネント
VCNはただのネットワーク空間ではなく、複数のネットワーク機能を組み合わせて構築されます。
コンポーネント名 | 役割 |
---|---|
インターネットゲートウェイ (IGW) | VCNとインターネット間の通信を可能にする。パブリックサブネットで利用 |
ルートテーブル | 各サブネットからの通信経路を定義。通信先をIGWやDRGなどにルーティング |
セキュリティリスト (Security List) | サブネット単位でのアクセス制御。IPとポートベースでルールを定義 |
ネットワークセキュリティグループ (NSG) | 個々のインスタンスごとの通信制御。柔軟でリソース単位の管理が可能 |
必要に応じて、以下のような追加コンポーネントを組み合わせることで、オンプレミスや他VCNとの接続も可能になります。
- DRG(Dynamic Routing Gateway):オンプレや他VCNとの接続に使用
- VCNピアリング:別VCNとの安全な通信経路を確保する
設計の流れと考え方
VCNを使ったOCIネットワーク設計は、以下のステップで進めるとスムーズです。
-ステップ1:VCNを作成
CIDRブロック(例:10.0.0.0/16)を指定して仮想ネットワーク空間を作成します。
-ステップ2:サブネットの設計
用途別にパブリック/プライベートサブネットを分けて作成。ADをまたいで冗長化する場合は複数のADにまたがって配置。
-ステップ3:ルート設定
各サブネットにルートテーブルを関連付け、通信経路(例:インターネットはIGW経由、社内はDRG経由など)を明確にします。
-ステップ4:アクセス制御
セキュリティリストやNSGを活用して、外部からのアクセスや内部通信を必要最小限に制限します。
イメージ図:VCNの基本構成
( https://oracle-japan.github.io/ocitutorials/beginners/creating-vcn/ ) より引用
実際の構築・運用において意識しておきたいポイント
VCNはOCIにおけるネットワークの中核ですが、設計段階でのちょっとした判断ミスが、後々の運用コストやセキュリティリスクに直結することがあります。以下に、構築・運用時に特に注意したいポイントを紹介します。
-
CIDR設計は将来の拡張を見据えて
最初にCIDRブロックを狭く取りすぎると、後からサブネットを増やしたくなったときにIPアドレスが足りず、VCNを作り直さなければならなくなる可能性があります。新しいサーバーを追加したり、サブネットを追加したくなった場合でも対応できるように、広めのIPアドレス範囲を確保しておくことが重要です。 -
パブリック・プライベートの分類は明確に
アクセス制御の甘さや構成の混乱を防ぐためにも、インターネットと通信する必要のあるリソースはパブリックサブネット、それ以外はプライベートに徹底する設計が重要です。NAT Gatewayなどを併用することで、外部アクセスの最小化も図れます。 -
セキュリティリストとNSGの使い分け
セキュリティリストはサブネット単位、NSGはインスタンス単位での制御です。動的な管理やリソース単位での柔軟な制御が必要な場合はNSGを活用し、細かく安全なポリシーを設定できます。Oracle公式でもNSGの利用が推奨されています -
ルートテーブルの誤設定に注意
ルートの設定ミスにより、意図しない経路でトラフィックが流れてしまうことがあります。特に、複数のサブネットで異なるルートテーブルを使う場合は、設定の整合性を丁寧に確認することが重要です。
まとめ:VCNはOCIネットワークの“核”
VCNはOCI上でリソースを展開・運用する際の基盤ネットワークです。 オンプレミスと同様のネットワーク設計思想をクラウド上で実現でき、かつ自動化や柔軟な拡張も可能です。これからOCIを使い始める方にとって、VCNの仕組みと構築手順をしっかり理解しておくことは、セキュリティと可用性を両立したシステムを構築するための第一歩となるでしょう。
参考リンク