이 이미지는 OCI에서 CI/CD 파이프라인을 사용으로 설정하기 위해 GitLab를 배치하기 위한 분산 구조를 보여줍니다. OCI 지역 내의 단일 가용성 도메인을 보여줍니다. 이 가용성 도메인 내에는 두 개의 공용 서브넷과 단일 전용 서브넷이 있습니다. 세 서브넷은 모두 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인 전용 서브넷은 다음을 포함합니다.
  • 두 개의 GitLab 서버,
  • Gitaly x2 서버,
  • Prometheus + Grafana 서버,
  • Postgres 데이터베이스,
  • 세 개의 GitLab 실행기
  • Redis 서버입니다.
Gitlab 서버 하나는 공용 서브넷의 배스천 서버에 접속하며 둘 다 로드 밸런서에 접속합니다. Gitaly 서버는 NAT 게이트웨이를 통해 클라우드에 액세스하는 반면 Prometheus + Grafana 서버는 서비스 게이트웨이를 사용하여 VCN 외부에 있는 객체 스토리지에 액세스합니다. 이 객체 스토리지는 백업, 아티팩트, 외부 차이, LFS 업로드, 패키지, 종속성 프록시 및 Terraform 상태 페이지와 같은 데이터를 보유합니다.