This page contains information related to upcoming products, features, and functionality. It is important to note that the information presented is for informational purposes only. Please do not rely on this information for purchasing or planning purposes. The development, release, and timing of any products, features, or functionality may be subject to change or delay and remain at the sole discretion of GitLab Inc.
Status Authors Coach DRIs Owning Stage Created
implemented @mkaeppler @ayufan @rogerwoo @pjphillips devops data stores 2023-09-28

클라우드 커넥터 아키텍처 진화

요약

이 설계 문서는 클라우드 커넥터의 기술적 기반에 대한 구조적인 결정과 제안된 변경 사항을 다룹니다. 현재 상태에 대한 정확한 설명은 공식 아키텍처 문서를 참조하세요.

동기

우리의 “큰 문제 해결”은 SaaS 및 Self-Managed형 오퍼링에 기능 동등성을 제공하는 것입니다. 지금까지 SaaS 및 Self-Managed형 (SM) GitLab 인스턴스는 AI 게이트웨이에서만 기능을 사용했으며 해당 게이트웨이는 주어진 요청이 해당 AI 기능 엔드포인트에 액세스할 수 있는지 확인하는 Access Layer도 구현합니다.

이 접근 방식은 우리를 잘 섬겼습니다. 왜냐하면:

  • 저희에게 아키텍처적으로 SM 사용자가 저희가 호스팅하는 AI 기능을 사용할 수 있도록 허용하기 위한 최소한의 변경만 필요했습니다.
  • GitLab.com의 지속적인 개발과 최소한의 충돌을 일으키지 않았습니다.
  • 출시까지 걸리는 시간을 줄였습니다.

하지만 AI 게이트웨이만으로는 다양한 기능에 대한 충분한 추상화를 제공하지 못합니다. 정의상으로만 봐도 해당 게이트웨이는 오직 AI 기능에만 집중하도록 설계되었기 때문입니다.

목표

이 청사진을 사용하여 클라우드 커넥터의 기술적 프레임워크에 점진적인 변화를 주어 현재 AI 게이트웨이가 하는 것과 같은 방식으로 다른 백엔드 서비스가 Self-Managed형/Self-Managed GitLab Dedicated 고객에 서비스할 수 있도록 합니다. 이는 모든 GitLab 고객에게 기능 동등성을 제공하는 우리의 미션을 직접 지원할 것입니다.

우리가 주로 집중하고 있는 주요 영역은 다음과 같습니다:

  • 고객을 위한 단일 액세스 포인트 제공 고객들은 계속해서 커지는 GitLab 호스팅 서비스 디렉터리에 대한 아웃바운드 트래픽을 허용하기 위해 웹 프록시 및 방화벽을 구성하는 것에 호의적이지 않다는 것을 알아냈습니다. 그래서 우리는 cloud.gitlab.com에 글로벌하게 로드 밸런스가 적용된 입구점을 설치하기로 결정했습니다. 이 입구점은 요청된 경로를 기반으로 간단한 라우팅 결정을 내릴 수 있어 우리가 Cloud Connector로 covered되는 기능 범위를 넓힐 때 다른 백엔드 서비스를 대상으로 할 수 있게 합니다.
    • 상태: 완료. 해당 결정은 ADR001로 문서화되었습니다.
  • 인스턴스 관리자에게 제품 사용 데이터에 대한 제어권 부여 클라우드 커넥터 서비스에 대한 텔레메트리는 편집기 확장이나 AI 게이트웨이 내에서 설치됩니다. 우리의 AI 텔레메트리 접근 방식은 현재 통합 내부 이벤트 추적의 장기적 비전과 독립적입니다. Cloud Connector가 AI 이상의 사용 사례를 추가로 구현함에 따라 AI 관련 텔레메트리를 기존 기술 선택과 일치시키고자 합니다.
    • 상태: 발견 중.
  • 속도 제한 기능 트래픽 증가 기간에 Cloud Connector와 통합된 AI 게이트웨이 또는 TanuKey와 같은 백엔드는 리소스 제약을 경험할 수 있습니다. GitLab은 다른 인스턴스보다 어떤 인스턴스가 우선되어야 하는지 결정할 때 일관된 전략을 적용해야 합니다. 이 전략은 모든 Cloud Connector 서비스 전반에 걸쳐 균일해야 합니다.
    • 상태: 계획됨.

결정 사항