Key Protect에 대한 Terraform 설정

IBM Cloud® 의 Terraform을 사용하면 예측 가능하고 일관된 IBM Cloud 서비스를 생성할 수 있으므로 코드형 인프라( IaC ) 원칙에 따라 복잡한 멀티티어 클라우드 환경을 빠르게 구축할 수 있습니다. IBM Cloud CLI 또는 API 및 SDK를 사용하는 것과 유사하게 HashiCorp 구성 언어(HCL)를 사용하여 Key Protect 인스턴스의 생성, 업데이트 및 삭제를 자동화할 수 있습니다.

관리되는 Terraform on IBM Cloud® 솔루션을 찾고 있습니까? IBM Cloud® Schematics을 사용해 보십시오. Schematics을(를) 사용하면 익숙한 Terraform 스크립트 언어를 사용할 수 있지만 Terraform 명령행 및 IBM Cloud® 제공자 플러그인을 설정하고 유지보수하는 것에 대해서는 걱정할 필요가 없습니다. Schematics은(는) IBM Cloud® 카탈로그에서 쉽게 설치할 수 있는 사전 정의된 Terraform 템플리트도 제공합니다.

Terraform 설치 및 Key Protect에 대한 리소스 구성

새로운 Key Protect 전용 인스턴스 프로비저닝은 IBM Cloud® 콘솔 UI 및 IBM Cloud CLI를 통해 가능합니다. Terraform으로 Key Protect 전용 인스턴스를 새로 만드는 것은 지원되지 않습니다. 그러나 Terraform을 사용하여 키와 같은 리소스를 프로비저닝할 수는 있습니다. 이렇게 하려면 환경 변수 IBMCLOUD_KP_API_ENDPOINT 를 특정 Key Protect 전용 인스턴스의 퍼블릭 또는 프라이빗 API 엔드포인트로 설정해야 합니다.

Terraform을 사용하여 인증을 만들려면 먼저 다음 사항을 완료해야 합니다:

  • Key Protect 리소스를 만들고 작업하는 데 필요한 액세스 권한이 있는지 확인하세요.
  • Terraform CLI를 설치하고 IBM Cloud 제공자 플러그인을 구성합니다. 자세한 내용은 테라폼 시작하기 IBM Cloud® 튜토리얼을 참조하세요. 플러그인은 이 태스크를 완료하는 데 사용되는 IBM Cloud API를 요약합니다.
  • 이름이 main.tf인 Terraform 구성 파일을 작성하십시오. 이 파일에서는 HashiCorp 구성 언어를 사용하여 리소스를 정의합니다. 자세한 내용은 테라폼 문서를 참조하세요.
  1. main.tf 파일에 ibm_resource_instance 리소스 인수를 사용하여 Key Protect 인스턴스를 생성합니다.

    다음 예의 Key Protect 인스턴스 이름은 my_kp 이며 us-south 지역의 계층형 요금제로 생성됩니다. user@ibm.com 에는 IAM 액세스 정책에서 관리자 역할이 할당됩니다. 기타 지원되는 지역에 대해서는 지역 및 엔드포인트를 참조하세요.

    resource "ibm_resource_instance" "kms_instance" {
      name     = "my_kp"
      service  = "kms"
      plan     = "tiered-pricing"
      location = "us-south"
    }
    
    resource "ibm_iam_user_policy" "policy" {
      ibm_id = "user@ibm.com"
      roles  = ["Manager"]
    
      resources {
        service              = "kms"
        resource_instance_id = element(split(":", ibm_resource_instance.kms_instance.id), 7)
      }
    }
    
  2. 구성 파일 빌드를 완료한 후 Terraform CLI를 초기화합니다. 자세한 내용은 작업 디렉터리 초기화를 참조하세요.

    terraform init
    
  3. main.tf 파일에서 리소스를 프로비저닝합니다. 자세한 내용은 Terraform으로 인프라 프로비저닝을 참조하세요.

    1. terraform plan 을 실행하여 테라폼 실행 계획을 생성하여 제안된 작업을 미리 볼 수 있습니다.

      terraform plan
      
    2. terraform apply 을 실행하여 플랜에 정의된 리소스를 만듭니다.

      terraform apply
      
  4. IBM Cloud 리소스 목록에서 생성한 Key Protect 인스턴스를 선택하고 인스턴스 ID를 기록합니다.

  5. 액세스 정책이 정상적으로 지정되었는지 확인하십시오. 자세한 정보는 콘솔에서 지정된 액세스 권한 검토를 참조하십시오.

다음에 수행할 작업

이제 IBM Cloud 에서 Terraform으로 첫 번째 Key Protect 서비스 인스턴스를 성공적으로 만들었으므로 다음 작업 중에서 선택할 수 있습니다: