Civo Kubernetes 클러스터 생성

새로운 Civo 계정은 시작할 때 사용할 250달러의 크레딧을 받게 됩니다. Civo Kubernetes와의 GitLab 통합을 시작하기 위해 시장 앱을 사용하여 Civo Kubernetes 클러스터에 GitLab을 설치할 수 있습니다.

인프라스트럭처 코드(IaC)를 통한 Civo Kubernetes에서 새 클러스터를 생성하는 방법을 배워보세요. 이 프로세스는 Civo 및 Kubernetes Terraform 프로바이더를 사용하여 Civo Kubernetes 클러스터를 생성합니다. 그리고 GitLab 에이전트를 사용하여 클러스터를 GitLab에 연결합니다.

필수 조건:

단계:

  1. 예제 프로젝트 가져오기.
  2. Kubernetes 에이전트 등록.
  3. 프로젝트 구성.
  4. 클러스터 프로비저닝.

예제 프로젝트 가져오기

GitLab을 사용하여 인프라스트럭처 코드를 통해 클러스터를 만들려면 클러스터를 관리할 프로젝트를 만들어야 합니다. 이 자습서에서는 샘플 프로젝트를 사용하여 시작하고 필요에 맞게 수정합니다.

먼저 URL로 예제 프로젝트 가져오기를 시작하세요.

프로젝트를 가져오려면:

  1. GitLab에서 왼쪽 사이드바에서 검색 또는 이동을 선택합니다.
  2. 내 모든 프로젝트 보기를 선택합니다.
  3. 페이지 오른쪽에서 새 프로젝트를 선택합니다.
  4. 프로젝트 가져오기를 선택합니다.
  5. 리포지터리 URL로를 선택합니다.
  6. Git 리포지터리 URLhttps://gitlab.com/civocloud/gitlab-terraform-civo.git를 입력합니다.
  7. 필드를 완료한 후 프로젝트 생성을 선택합니다.

이 프로젝트는 다음을 제공합니다:

에이전트 등록

GitLab 에이전트 for Kubernetes를 생성하려면:

  1. 왼쪽 사이드바에서 운영 > 쿠버네티스 클러스터를 선택합니다.
  2. 클러스터 연결(에이전트)를 선택합니다.
  3. 에이전트 선택 드롭다운 디렉터리에서 civo-agent를 선택하고 에이전트 등록을 선택합니다.
  4. GitLab은 에이전트를 위한 등록 토큰을 생성합니다. 이 비밀 토큰을 안전하게 보관해야 하며 나중에 필요합니다.
  5. GitLab은 또한 에이전트 서버(KAS)의 주소를 제공하는데, 이 역시 나중에 필요합니다.

프로젝트 구성

프로젝트를 구성하기 위해 CI/CD 환경 변수를 사용하세요.

필수 구성:

  1. 왼쪽 사이드바에서 설정 > CI/CD를 선택합니다.
  2. 변수를 확장합니다.
  3. 변수 BASE64_CIVO_TOKEN을 Civo 계정에서 받은 토큰으로 설정합니다.
  4. 변수 TF_VAR_agent_token을 이전 작업에서 받은 에이전트 토큰으로 설정합니다.
  5. 변수 TF_VAR_kas_address를 이전 작업에서 받은 에이전트 서버 주소로 설정합니다.

img/variables_civo.png

선택적 구성:

variables.tf 파일에는 다음과 같은 다른 변수들이 포함되어 있으며 필요에 따라 재정의할 수 있습니다:

  • TF_VAR_civo_region: 클러스터의 지역을 설정합니다.
  • TF_VAR_cluster_name: 클러스터의 이름을 설정합니다.
  • TF_VAR_cluster_description: 클러스터에 대한 설명을 설정합니다. Civo 대시보드에서 GitLab 프로젝트에 대한 참조를 만들려면 이 값을 $CI_PROJECT_URL로 설정합니다. 이 값은 Civo 대시보드에서 볼 수 있는 클러스터 프로비저닝을 담당한 프로젝트를 확인하는 데 도움이 됩니다.
  • TF_VAR_target_nodes_size: 클러스터에 사용할 노드의 크기를 설정합니다.
  • TF_VAR_num_target_nodes: Kubernetes 노드 수를 설정합니다.
  • TF_VAR_agent_version: GitLab 에이전트의 버전을 설정합니다.
  • TF_VAR_agent_namespace: GitLab 에이전트의 Kubernetes 네임스페이스를 설정합니다.

추가 리소스 옵션에 대한 자세한 내용은Civo Terraform 프로바이더Kubernetes Terraform 프로바이더 문서를 참조하세요.

클러스터 프로비저닝

프로젝트를 구성한 후, 클러스터의 프로비저닝을 수동으로 트리거합니다. GitLab에서:

  1. 왼쪽 사이드바에서 빌드 > 파이프라인으로 이동합니다.
  2. 재생 옆에 있는 드롭다운 디렉터리 아이콘()을 선택합니다.
  3. 배포 작업을 수동으로 트리거하려면 배포를 선택합니다.

파이프라인이 성공적으로 완료되면 새 클러스터를 확인할 수 있습니다:

  • Civo 대시보드: Kubernetes 탭에서.
  • GitLab: 프로젝트의 사이드바에서 운영 > 쿠버네티스 클러스터를 선택하면 확인할 수 있습니다.

클러스터 사용

클러스터를 프로비저닝한 후에는 GitLab에 연결되어 배포할 준비가 된 상태입니다. 연결을 확인하려면:

  1. 왼쪽 사이드바에서 운영 > 쿠버네티스 클러스터를 선택합니다.
  2. 디렉터리에서 연결 상태 열을 확인합니다.

연결의 가능성에 대한 자세한 내용은 GitLab Kubernetes 에이전트 문서를 참조하세요.

클러스터 삭제

기본적으로 파이프라인에 정리 작업이 포함되어 있지 않습니다. 생성된 모든 리소스를 제거하려면 정리 작업을 실행하기 전에 GitLab CI/CD 템플릿을 수정해야 합니다.

모든 리소스를 제거하려면:

  1. .gitlab-ci.yml 파일에 다음을 추가합니다:

    stages:
      - init
      - validate
      - build
      - deploy
      - cleanup
       
    destroy:
      extends: .destroy
      needs: []
    
  2. 왼쪽 사이드바에서 빌드 > 파이프라인을 선택하고 가장 최근 파이프라인을 선택합니다.
  3. destroy 작업에서 재생을 선택합니다.

Civo 지원

Civo 통합은 Civo에서 지원됩니다. 지원 요청은 Civo 지원으로 보내 주세요.