ハイブリッド環境へのOracle API Gatewayサービスのデプロイ
アーキテクチャ
このアーキテクチャは、パブリック・インターネット・アクセス環境を提供するためにAPI Gatewayサーバーを使用するコンパートメントと2つの可用性ドメインを持つオンプレミスの顧客データ・センターおよびOracle Cloud Infrastructure (OCI)リージョンを示しています。
オンプレミスの顧客データ・センターは、APIゲートウェイを利用して、安全でスケーラブルな環境でAPIを計画、作成、プロトタイプ作成、デプロイおよび管理します。オンプレミス環境は、プライベートAPI環境でも、パブリック・インターネットでAPIを共有できるパブリックAPI環境の一部でもかまいません。
APIゲートウェイは、APIデザイナ・ポータルおよび開発者ポータルとして機能します。APIデザイナでは、API設計者がAPIを作成、テスト、デプロイおよび管理します。開発者ポータルでは、APIコンシューマがAPIのドキュメントを表示し、APIを試すことができます。
次の図は、このリファレンス・アーキテクチャを示しています。
図api-gateway-hybrid.pngの説明
このアーキテクチャには次のコンポーネントがあります。
- リージョン
Oracle Cloud Infrastructureリージョンは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含む、ローカライズされた地理的領域です。リージョンは他のリージョンから独立し、広大な距離(国または大陸間)を分離できます。
- 可用性ドメイン
可用性ドメインは、リージョン内のスタンドアロンの独立したデータ・センターです。各可用性ドメインの物理リソースは、フォルト・トレランスを提供する他の可用性ドメインのリソースから分離されます。可用性ドメインでは、電源や冷却、内部の可用性ドメイン・ネットワークなどのインフラストラクチャは共有されません。そのため、ある可用性ドメインでの障害が、リージョン内の他の可用性ドメインに影響することはほとんどありません。
- フォルト・ドメイン
フォルト・ドメインは、アベイラビリティ・ドメイン内のハードウェアおよびインフラストラクチャのグループ。各可用性ドメインには、独立した電源とハードウェアを備えた3つのフォルト・ドメインがあります。複数のフォルト・ドメインにリソースを分散すると、アプリケーションは物理サーバーの障害、システム・メンテナンスおよびフォルト・ドメイン内の電源障害を許容できます。
- 仮想クラウド・ネットワーク(VCN)とサブネット
VCNは、Oracle Cloud Infrastructureリージョンで設定する、カスタマイズ可能なソフトウェア定義のネットワークです。VCNは、従来のデータ・センター・ネットワークと同様に、ネットワーク環境を完全に制御できます。VCNには複数の重複しないCIDRブロックを含めることができ、VCNの作成後に変更できます。VCNをサブネットに分割できます。サブネットは、リージョンまたは可用性ドメインにスコープ指定できます。各サブネットは、VCN内の他のサブネットと重複しない連続したアドレスの範囲で構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックまたはプライベートにできます。
- FastConnect
Oracle Cloud Infrastructure FastConnectは、データ・センターとOracle Cloud Infrastructure間の専用のプライベート接続を簡単に作成する方法を提供します。FastConnectは、高帯域幅オプションを提供し、インターネットベースの接続と比較してより信頼性の高いネットワーク・エクスペリエンスを提供します。
- Oracle Cloud Infrastructure Web Application Firewall (WAF)
Oracle Cloud Infrastructure Web Application Firewallは、Oracle Cloud Infrastructure Web Application Firewall (PCI)に準拠するクラウドベースのPayment Card Industry (PCI)準拠のグローバル・セキュリティ・サービスです。これは、悪意のある好ましくないインターネット・トラフィックからアプリケーションを保護します。WAFは、インターネット接続エンドポイントを保護することにより、顧客のアプリケーションに対する一貫性のあるルール適用を実現できます。
- インターネット・ゲートウェイ
インターネット・ゲートウェイを使用すると、VCN内のパブリック・サブネットとパブリック・インターネット間のトラフィックが許可されます。
- ロード・バランサ
Oracle Cloud Infrastructure Load Balancingサービスは、バックエンド内の単一エントリ・ポイントから複数のサーバーへの自動トラフィック分散を提供します。
- 動的ルーティング・ゲートウェイ(DRG)
DRGは、VCNとリージョン外のネットワーク間のプライベート・ネットワーク・トラフィックのパス(別のOracle Cloud Infrastructureリージョン内のVCN、オンプレミス・ネットワーク、または別のクラウド・プロバイダのネットワークなど)を提供する仮想ルーターです。
- ローカル・ピアリング・ゲートウェイ(LPG)
LPGを使用すると、1つのVCNを同じリージョン内の別のVCNとピア接続できます。ピアリングとは、トラフィックがインターネットをトラバースしたり、オンプレミス・ネットワークを介してルーティングすることなく、VCNがプライベートIPアドレスを使用して通信することを意味します。
- APIゲートウェイ
APIゲートウェイ・サービスでは、ネットワーク内からアクセス可能なプライベート・エンドポイントとともに、必要に応じてパブリック・インターネットに公開できるAPIを公開できます。エンドポイントは、API検証、リクエストとレスポンスの変換、CORS、認証と認可およびリクエスト制限をサポートします。
推奨
- VCN
VCNを作成する際、VCNのサブネットにアタッチする予定のリソース数に基づいて、必要なCIDRブロックの数および各ブロックのサイズを決定します。標準プライベートIPアドレス領域内にあるCIDRブロックを使用します。
プライベート接続を設定する予定のその他のネットワーク(Oracle Cloud Infrastructure、オンプレミス・データ・センターまたは別のクラウド・プロバイダ)と重複しないCIDRブロックを選択します。
VCNを作成した後、そのCIDRブロックを変更、追加および削除できます。
サブネットを設計する際は、トラフィック・フローおよびセキュリティ要件を考慮してください。セキュリティ境界として機能する、特定の層またはロール内のすべてのリソースを同じサブネットにアタッチします。
リージョナル・サブネットを使用します。
- セキュリティ
Oracle Cloud Guardを使用して、Oracle Cloud Infrastructureでのリソースのセキュリティをプロアクティブに監視および保守します。Cloud Guardは、セキュリティ上の弱点についてリソースを調査し、オペレータやユーザーにリスクのあるアクティビティを監視するために定義できるディテクタ・レシピを使用します。構成ミスや安全でないアクティビティが検出された場合、クラウド・ガードは是正措置を推奨し、定義できるレスポンダ・レシピに基づいてこれらのアクションの実行を支援します。
最大限のセキュリティが必要なリソースの場合、Oracleではセキュリティ・ゾーンを使用することをお薦めします。セキュリティ・ゾーンは、ベスト・プラクティスに基づくOracle定義のセキュリティ・ポリシーのレシピに関連付けられたコンパートメントです。たとえば、セキュリティ・ゾーン内のリソースにパブリック・インターネットからアクセスできず、顧客管理キーを使用して暗号化する必要があります。セキュリティ・ゾーンでリソースを作成および更新すると、Oracle Cloud Infrastructureでは、セキュリティ・ゾーン・レシピのポリシーに対する操作が検証され、ポリシーに違反する操作が拒否されます。
注意事項
Oracle API Gatewayをデプロイする際には、次の点を考慮します。
- パフォーマンス
様々な構成オプションを使用してAPIゲートウェイのパフォーマンスを最適化できます。たとえば、一般的なパフォーマンス・チューニング・オプションには、トレース、監視およびロギングが含まれます。より高度なパフォーマンス・チューニング・オプションには、データベース・プーリング、HTTPキープ・アライブ、チャンク・エンコーディング、クライアント・スレッドおよびJavaメモリーがあります。
- セキュリティ
Oracle Cloud Infrastructure Identity and Access Managementポリシーを使用して、クラウド・リソースにアクセスできるユーザーや実行できる操作を制御します。
パスワードまたはその他のシークレットを保護するには、Oracle Cloud Infrastructure Vaultサービスの使用を検討してください。
- 可用性
デプロイメント要件とリージョンに基づいて高可用性オプションを使用することを検討します。オプションには、リージョン内の複数の可用性ドメインにリソースを分散し、可用性ドメイン内のフォルト・ドメインにリソースを分散することが含まれます。
フォルト・ドメインでは、単一の可用性ドメイン内にデプロイされたワークロードの最適な回復力が提供されます。アプリケーション層の高可用性を実現するには、異なるフォルト・ドメインにアプリケーション・サーバーをデプロイし、ロード・バランサを使用してクライアント・トラフィックをアプリケーション・サーバーに分散します。