Cloud Assembly 템플릿에 Terraform 구성을 추가하기 전에 버전 제어 저장소를 설정하고 통합합니다.

  1. Terraform 런타임 환경 정보
  2. 버전 제어 저장소에 Terraform 구성 파일 저장
  3. 클라우드 영역 매핑 사용
  4. 저장소를 Cloud Assembly와 통합

Terraform 런타임 환경 정보

Terraform 구성이 포함된 설계에는 Terraform 런타임 환경에 대한 액세스가 필요합니다. 런타임 환경은 Terraform CLI 명령을 실행하여 요청된 작업을 수행하는 Kubernetes 클러스터로 구성됩니다. 또한 런타임은 로그를 수집하고 Terraform CLI 명령의 결과를 반환합니다.

vRealize Automation Cloud 호스팅된 서비스는 사용자가 수정할 수 없는 미리 구성된 자체 Kubernetes 클러스터를 사용합니다.

버전 제어 저장소에 Terraform 구성 파일 저장

Cloud Assembly는 Terraform 구성에 대해 다음과 같은 버전 제어 저장소를 지원합니다.

  • GitHub 클라우드
  • GitLab 클라우드

버전 제어 저장소에서 한 계층의 하위 디렉토리가 있고 각 하위 디렉토리에 Terraform 구성 파일을 포함하는 기본 디렉토리를 생성합니다. Terraform 구성당 하나의 하위 디렉토리를 생성합니다.

  1. 기본 디렉토리
  2. 단일 하위 디렉토리 계층
  3. 배포 준비된 Terraform 구성 파일

    구성 파일이 포함된 Terraform 상태 파일을 포함하지 마십시오. terraform.tfstate가 있으면 배포 중에 오류가 발생합니다.

저장소 디렉토리 구조

클라우드 영역 매핑 사용

클라우드 계정에 배포하려는 경우, Terraform 런타임 엔진에 이러한 클라우드 영역 자격 증명이 필요합니다.

프로젝트 프로비저닝 탭에서 Terraform 클라우드 영역 매핑 허용을 사용하도록 설정합니다.

Terraform 클라우드 영역 매핑 사용

자격 증명이 안전하게 전송되더라도 추가적인 보안을 위해 프로젝트 사용자가 클라우드 계정에 배포할 필요가 없으면 이 옵션을 비활성화된 상태로 두어야 합니다.

저장소를 Cloud Assembly와 통합

Cloud Assembly에서 인프라 > 연결 > 통합으로 이동합니다.

Terraform 구성인 GitHub 또는 GitLab을 저장한 저장소 오퍼링 유형에 통합을 추가합니다.

통합에 프로젝트를 추가하는 경우 Terraform 구성 유형을 선택하고 저장소 및 분기를 식별합니다.

폴더는 이전 구조의 기본 디렉토리입니다.

Terraform 저장소 통합