この図は、OCIでCI/CDパイプラインを有効にするためにGitLabをデプロイするための分散アーキテクチャを示しています。OCIリージョン内の単一の可用性ドメインを示します。この可用性ドメイン内には、2つのパブリック・サブネットと1つのプライベート・サブネットがあります。3つのサブネットはすべて、仮想クラウド・ネットワーク(VCN)によって保護されます。

パブリック・サブネットのアドレスは10.0.0.0/24および10.0.1.0/24です。パブリック・サブネット10.0.0.0/24には要塞サーバーが含まれ、パブリック・サブネット10.0.1.0/2にはロード・バランサが含まれます。どちらのパブリック・サブネットも、インターネット・ゲートウェイを介してVCN外部のクラウドにアクセスできます。

10.0.2.0/24に対応するプライベート・サブネットには次のものが含まれます。
  • 2台のGitLabサーバー
  • Gitaly x2サーバー
  • Prometheus + Grafanaサーバー
  • Postgresデータベース
  • GitLabの3つのランナー
  • Redisサーバー。
一方のGitlabサーバーは、パブリック・サブネット内の要塞サーバーに接続し、両方ともロード・バランサに接続します。GitalyサーバーはNATゲートウェイを介してクラウドにアクセスし、Prometheus + Grafanaサーバーはサービス・ゲートウェイを使用してVCN外部のオブジェクト・ストレージにアクセスします。このオブジェクト・ストレージには、バックアップ、アーティファクト、外部差分、LFSアップロード、パッケージ、依存性プロキシ、Terraform状態ページなどのデータが保持されます。