AWS 솔루션

이 문서는 Amazon Web Services (AWS)에서 GitLab을 활용하는 솔루션에 관련된 내용을 다룹니다.

클라우드 플랫폼 웰 아키텍처 준수

테스트를 기반으로 한 아키텍처적 자격은 클라우드 솔루션 구현의 근간 개념입니다:

  • 클라우드 솔루션 구현은 GitLab 참조 아키텍처 준수를 유지하고 GitLab 성능 도구 (GPT) 보고서를 제공하여 준수 여부를 증명합니다.
  • 클라우드 솔루션 구현은 기술 공급 업체에 의해 자격이 부여되거나 기여될 수 있습니다. 예를 들어, AWS를 위한 구현 패턴은 AWS에서 공식적으로 검토될 수 있습니다.
  • 클라우드 솔루션 구현은 GitLab에 적합한 클라우드 플랫폼 PaaS 서비스를 지정하고 테스트할 수 있습니다. 이러한 테스트는 이러한 기술을 참조 아키텍처에 적합하도록 하는 데 도움이 될 수 있습니다. PostgreSQL 및 Redis와 같은 최상위 PaaS의 런타임 버전과의 호환성 및 가용성을 메트릭함으로써 플랫폼 PaaS 서비스의 적합성을 확인할 수 있습니다.
  • 클라우드 솔루션 구현은 플랫폼 제한 사항에 대한 자격 부여 테스트를 제공할 수 있습니다. 예를 들어, 특정 클라우드 플랫폼 가용 영역 지연 및 처리량 특성에서 Gitaly 클러스터가 올바르게 작동하는지 또는 플랫폼 파트너 지역 디스크 성능의 어느 수준이 Gitaly 서버가 무결성을 유지하면서 작동할 수 있는지 확인할 수 있습니다.

AWS 알려진 문제 디렉터리

알려진 문제는 GitLab 내부 및 고객이 신고한 문제에서 수집됩니다. 고객은 GitLab이 명시적으로 설계되지 않았거나 지속적인 테스트가 이루어지지 않은 다양한 “서비스” 컴포넌트를 성공적으로 구현합니다. GitLab은 파트너 기술을 매우 중요하게 생각하지만 여기서 알려진 문제를 강조하는 것은 구현자들을 위한 편의를 제공하는 것으로, GitLab이 해당 문제가 발생하는 파트너 기술과의 호환성을 목표로 삼거나 해당 기술에서 실행의 어떤 유형의 보장도 내포하지 않는 것을 시사하지는 않습니다. 개별 문제를 확인하여 GitLab의 입장 및 해당 알려진 문제에 대한 계획을 이해하세요.

GitLab AWS 알려진 문제 디렉터리를 확인하여 전체 디렉터리을 참조하세요.

AWS와 GitLab을 함께 사용하는 데 사용되는 작동 코드 예제의 패턴

AWS용 Guided Explorations 하위 그룹에는 다양한 작동 예제 프로젝트가 포함되어 있습니다.

플랫폼 파트너의 특수성

클라우드 솔루션 구현은 플랫폼별 용어, 최상의 아키텍처 및 플랫폼별 빌드 매니페스트를 활성화시킵니다:

  • 클라우드 솔루션 구현은 더 많이 특정 공급 업체를 대상으로 합니다. 예를 들어, vCPUs와 같은 특정 컴퓨팅 인스턴스/VM/노드를 권장합니다.
  • 클라우드 솔루션 구현은 해당 구현 패턴을 대상으로 하는 인프라 구축에 익숙한 청중을 위해 작성됩니다.
  • 클라우드 솔루션 구현은 특정 PaaS 서비스의 버전이 GitLab과 호환되는지 테스트하고 자격을 부여할 수 있습니다 (예: PostgreSQL, Redis 등).

AWS 플랫폼 서비스 (PaaS) 사양 및 사용법

서비스로 플랫폼 옵션은 운영 복잡성을 단순화하고 고급 및 고가용성 기술 서비스를 운영하는 데 필요한 SRE 및 보안 기술의 최소화를 가능하도록 하는 Cloud 플랫폼의 엄청난 부분입니다. 클라우드 솔루션 구현은 파트너 PaaS 옵션에 대해 사전 자격을 부여할 수 있습니다.

  • 클라우드 솔루션 구현은 구현자가 어떤 PaaS 옵션이 잘 작동하며 동일한 GitLab 역할을 위한 여러 PaaS 옵션 중에서 어떻게 선택해야 하는지 이해하도록 돕습니다.
  • 예를 들어, 참조 아키텍처에서 GitLab의 아웃바운드 이메일 서비스에 대한 특정 권장이 없거나 사이징이 어떻게 되어야 하는지에 대해 명시되어 있지 않은 경우, 참조 구현은 클라우드 제공업체의 이메일 서비스 (PaaS)를 사용하고 아마도 특정 설정을 사용할 것을 권장할 수 있습니다.

GitLab 인프라를 배포하는 데 사용할 수 있는 AWS 서비스에서 자세히 읽을 수 있습니다.

비용 최적화 엔지니어링

비용 엔지니어링은 클라우드 아키텍처의 중요한 측면이며, 플랫폼에서 가능한 절약 기능은 대규모 컴퓨팅을 구축하는 방법에 강력한 영향을 미칩니다.

  • 클라우드 솔루션 구현은 플랫폼 제공 업체에서 가능한 절약 모델에 맞게 특별히 엔지니어링할 수 있습니다. AWS의 경우, 특정 인스턴스 유형의 발생을 최대화하는 것이 해당 예입니다.
  • 클라우드 솔루션 구현은 적절하고 적절한 고객 가이드라인을 준비하여 실제로 효과가 있는 경우에만 일시적인 컴퓨트를 활용할 수 있습니다. 예를 들어, GitLab Runner 태그를 사용하여 일시적 컴퓨트에 대한 쿠버네티스 노드 그룹을 활용할 수 있습니다.
  • 클라우드 솔루션 구현에는 플랫폼 별 비용 계산기가 포함될 수 있습니다.

실행 가능성 및 자동화 지향

클라우드 솔루션 구현은 빌드 지침 및 자동화 코드의 소스로 사용될 수 있는 구체적인 내용에 더 가까워집니다:

  • 클라우드 솔루션 구현은 빌더가 지정된 참조 아키텍처에 대한 구현에 필요한 특정 리소스 디렉터리을 생성할 수 있습니다.
  • 클라우드 솔루션 구현은 빌더가 참조 구현을 구축하기 위해 매뉴얼 지침을 사용하거나 자동화를 생성할 수 있도록 합니다.

목표로 하는 관객 및 기여자

이 정보의 주요 관객 및 기여자는 적어도 다음과 같은 GitLab 구현 생태계로 구성됩니다:

GitLab 구현 커뮤니티:

  • 고객
  • GitLab 채널 파트너 (인티그레이터)
  • 플랫폼 파트너

GitLab 내부 구현 팀:

  • 품질/유통/셀프매니지드
  • 제휴
  • 교육
  • 지원
  • 전문 서비스
  • 공공 부문