InfoGrab DocsInfoGrab Docs

Amazon Web Services(AWS)에 GitLab POC 설치

공식 Linux 패키지를 사용하여 AWS에서 GitLab POC를 구성하는 방법을 안내합니다. VPC, 서브넷, RDS, ElastiCache, Auto Scaling Group 구성을 포함합니다.

이 페이지는 공식 Linux 패키지를 사용해 AWS에 GitLab을 구성하는 일반적인 방법을 단계별로 안내합니다. 환경에 맞게 조정해 사용합니다. 프로덕션 등급 GitLab 시작하기 # Note 이 문서는 개념 증명(Proof of Concept) 단계의 안내서입니다. 이 문서만으로는 고가용성 구성이 완성되지 않습니다. 이 가이드를 그대로 따르면 HA가 아닌 환경이 만들어집니다. AWS의 프로덕션 GitLab 환경에서는 참조 아키텍처 를 시작 구성으로 사용합니다. 배포 규모 산정 가이드 로 예상 워크로드를 평가하고 구성을 조정합니다. 개요 # 이 구성에서는 대부분 Linux 패키지를 사용하지만 AWS의 네이티브 서비스도 함께 활용합니다. Linux 패키지에 번들된 PostgreSQL과 Redis 대신 Amazon RDS와 ElastiCache를 사용합니다. 이 가이드에서는 다중 노드 구성을 다룹니다. 먼저 Virtual Private Cloud와 서브넷을 구성한 다음, 데이터베이스 서버용 RDS와 Redis 클러스터용 ElastiCache 같은 서비스를 통합하고, 마지막으로 사용자 지정 스케일링 정책을 적용한 오토 스케일링 그룹에서 이들을 관리합니다. 요구 사항 # AWS 와 Amazon EC2 에 대한 기본적인 이해와 함께 다음이 필요합니다. AWS 계정 SSH로 인스턴스에 접속하기 위한 SSH 키 생성 또는 업로드 GitLab 인스턴스용 도메인 이름 도메인을 보호할 SSL/TLS 인증서. 보유한 인증서가 없다면 AWS Certificate Manager (ACM)에서 무료 퍼블릭 SSL/TLS 인증서를 발급받아 이후에 생성하는 Elastic Load Balancer 에 사용할 수 있습니다. Note ACM에서 발급하는 인증서는 검증에 몇 시간이 걸릴 수 있습니다. 이후 단계에서 지연되지 않도록 인증서를 가능한 한 빨리 요청합니다. 아키텍처 # 권장 아키텍처는 다음 다이어그램과 같습니다. AWS 비용 # GitLab은 다음 AWS 서비스를 사용하며, 각 서비스의 요금 정보 링크는 다음과 같습니다. EC2 : GitLab은 공유 하드웨어에 배포되며 온디맨드 요금제 가 적용됩니다. 전용 인스턴스나 예약 인스턴스에서 GitLab을 실행하려면 EC2 요금 페이지 에서 비용 정보를 확인합니다. S3 : GitLab은 백업, 아티팩트, LFS 객체를 저장하는 데 S3( 요금 페이지 )를 사용합니다. NLB : GitLab 인스턴스로 요청을 라우팅하는 데 사용하는 Network Load Balancer( 요금 페이지 )입니다. RDS : PostgreSQL을 사용하는 Amazon Relational Database Service ( 요금 페이지 )입니다. ElastiCache : Redis 구성을 제공하는 데 사용하는 인메모리 캐시 환경 ( 요금 페이지 )입니다. IAM EC2 인스턴스 역할 및 프로필 생성 # Amazon S3 오브젝트 스토리지 를 사용하므로 EC2 인스턴스에는 S3 버킷에 대한 읽기, 쓰기, 목록 조회 권한이 있어야 합니다. G