기존 오퍼링에서 배치 가능한 아키텍처 작성

IBM®큐레이트된 사용자 정의 번들을 활용하여 IBM Cloud® 배치 가능한 아키텍처손쉬운 배포, 확장성 및 모듈성을 위해 설계된 하나 이상의 클라우드 리소스를 결합하는 공통 아키텍처 패턴을 배포하기 위한 클라우드 자동화입니다.를 확장하고 사용자 정의할 수 있습니다. 배치 가능한 각 아키텍처는 자체 사용자 정의 번들을 제공합니다. 번들을 사용하여 로컬 컴퓨터에서 배치 가능한 아키텍처를 편집하고, 자체 파이프라인을 사용하여 테스트하고, 엔터프라이즈의 요구에 맞게 자체 제품을 확장할 수 있습니다. 아키텍처를 사용자 정의하려면 Terraform에 익숙해야 합니다.

사용자 정의 번들에는 온보딩 및 유효성 검증에서 IBM Cloud의 개인용 카탈로그에 공개하기까지 사용자 정의된 배치 가능한 아키텍처의 라이프사이클을 관리하는 데 도움이 되는 스타터 스크립트가 포함된 automation 디렉토리도 포함되어 있습니다. 현재 GitHub 조치 또는 IBM Cloud의 도구 체인의 두 파이프라인 메소드가 이 디렉토리에 포함되어 있습니다.

다음 지침은 사용자 정의 번들의 개요 및 수행할 수 있는 사용자 정의의 일부 예를 제공합니다. 모두 포괄적이지는 않으며 필요한 변경사항을 작성할 수 있습니다. 아키텍처를 수정한 후에는 이를 개인용 카탈로그에 추가하고 IBM의 도구를 사용하여 취약성을 확인하고 보안 및 준수를 확인하고 엔터프라이즈와 아키텍처를 공유할 수 있습니다. 자세한 설명은 IBM Cloud 배치 가능한 아키텍처를 사용하여 배치 가능한 아키텍처 빌드 를 참조하십시오.

변경사항에 따라 IBM Cloud 에서 배치 가능한 아키텍처를 지원하지 않을 수 있습니다. 번들에서 제공되는 아키텍처의 컴포넌트는 IBM Cloud에서 지원되지만 확장에 사용되는 수정된 코드는 지원되지 않습니다.

시작하기 전에

  1. 사용자 정의된 배치 가능 아키텍처 (예: GitHub 저장소) 를 저장할 저장소를 작성하십시오. 자세한 정보는 새 저장소 작성을 참조하십시오.
  2. 배치 가능한 아키텍처를 수정하기 위해 선택한 편집기 (예: Visual Studio Code) 가 있는지 확인하십시오. 자세한 정보는 Visual Studio Code를 참조하십시오.
  3. 배치 가능한 아키텍처를 테스트하고 작동하는지 확인하기 위해 선택한 도구가 있는지 확인하십시오. 예를 들어, Terraform 명령행을 제공하는 Terraform 런타임을 사용할 수 있습니다.

배치 가능한 아키텍처 찾기

IBM Cloud 은 있는 그대로 사용하거나 사용자 정의할 수 있는 여러 배치 가능한 아키텍처를 제공합니다. 아키텍처를 찾으려면 다음 단계를 완료하십시오.

  1. IBM Cloud 카탈로그에서 배치 가능한 아키텍처를 선택하십시오.
  2. 배치 옵션 검토 > 코드에 대한 작업 > 번들 다운로드를 선택하여 사용자 정의 번들을 다운로드하십시오.

배치 가능한 아키텍처 사용자 정의

번들을 다운로드하면 사용자 정의를 시작하는 데 도움이 되도록 설계된 파일 세트가 수신됩니다.

ibm_catalog.json

ibm_catalog.json 파일은 버전 정보를 개인용 카탈로그로 자동으로 가져오는 데 사용되는 Manifest JSON 파일입니다. 카탈로그 Manifest 파일을 사용하면 콘솔을 통해 수동으로 버전 메타데이터를 입력하지 않아도 됩니다. ibm_catalog.json 파일 및 포함할 수 있는 값을 설정하는 방법을 보려면 카탈로그 Manifest 로컬 편집 을 참조하십시오.

main.tf

main.tf 파일은 사용하려는 배치 가능한 각 아키텍처에 대한 구성 정보가 저장되는 위치입니다. 배치 가능한 아키텍처에 따라 이 파일을 사용하여 특정 지역, API키 및 소스 코드 위치를 지정할 수 있습니다. 이 파일을 사용하여 다른 모듈을 추가하고 아키텍처의 Terraform 매개변수를 업데이트할 수도 있습니다.

스펙이 있는 main.tf 의 예

다음 예제는 특정 지역, us-south 를 사용하는 규제 산업에 대한 VPC의 보안 인프라를 표시합니다.

module "landing-zone" {
  source           = "https://cm.globalcatalog.cloud.ibm.com/api/v1-beta/offering/source//examples/power-sap?archive=tgz&catalogID=7df1e4ca-d54c-4fd0-82ce-3d13247308cd&flavor=power&kind=terraform&name=slz-vpc-with-vsis&version=0.0.22"
  ibmcloud_api_key = var.ibmcloud_api_key
  ssh_public_key   = var.ssh_public_key
  region           = "us-south"
  prefix           = "slz"
}

outputs.tf

outputs.tf 파일에는 배치 가능한 아키텍처에 포함할 수 있는 사용 가능한 출력 값이 포함되어 있습니다. 값은 주석 처리되지만 값에서 # 기호를 제거하여 값을 포함할 수 있습니다. 또한 파일에 더 많은 출력 변수를 추가할 수 있습니다. 특정 값을 포함하려면 다음 단계를 완료하십시오.

  1. outputs.tf 파일을 여십시오.
  2. 포함하려는 출력 값에서 # 를 제거하십시오.

outputs.tf

다음 예제는 vsi_names 값을 포함하고 transit_gateway_name 값을 제외합니다.

output "vsi_names" {
  value       = var.vsi_names
  description = "A list of the vsis names provisioned within the VPCs"
}
#output "transit_gateway_name" {
#  value       = var.transit_gateway_name
#  description = "The name of the transit gateway"
#}

provider.tf

provider.tf 파일에는 사용자가 사용해야 하는 제공자, API키 및 지역에 대한 필수 정보가 포함되어 있습니다.

이 정보는 variables.tf 파일에서 가져옵니다. 변경해야 하는 경우 variables.tf 파일을 업데이트하십시오.

provider.tf 파일의 예제

다음 예제는 IBM 을 제공자로 나열합니다.

provider "ibm" {
  ibmcloud_api_key = var.ibmcloud_api_key
  region           = var.region
}

README.md

readme 파일에는 배치 가능한 아키텍처에 대한 배경 및 사용법 정보가 포함되어 있습니다. 엔터프라이즈의 구성원이 배치 가능한 아키텍처를 사용하는 데 도움이 되도록 readme 파일을 사용자 정의할 수 있습니다.

variables.tf

variables.tf 파일에는 배치 가능한 아키텍처의 필수 변수가 포함되어 있습니다. 필요한 추가 변수를 추가할 수 있습니다.

version.tf

version.tf 파일은 배치 가능한 아키텍처를 실행하는 데 필요한 Terraform 버전 및 제공자 버전에 대한 정보를 저장합니다. 배치 가능한 아키텍처를 있는 그대로 실행하는 경우에는 업데이트가 필요하지 않습니다. 구성에서 이 파일을 업데이트해야 할 수도 있습니다. 특정 Terraform 또는 제공자 버전을 지정해야 하는 경우 다음 단계를 완료하십시오.

  1. versions.tf 파일을 여십시오.
  2. required_version 를 사용자가 사용해야 하는 Terrafrom 버전으로 업데이트하십시오.
  3. version 를 사용자가 사용해야 하는 제공자 버전으로 업데이트하십시오.

배치 가능한 아키텍처 테스트

배치 가능한 아키텍처를 개인용 카탈로그에 온보딩하기 전에 사용자 정의를 테스트하고 아키텍처가 의도한 대로 실행되는지 확인하십시오. Terraform 명령행으로 아키텍처를 테스트하려면 다음 단계를 완료하십시오.

  1. 아키텍처를 사용자 정의한 후 Terraform CLI를 초기화하십시오. 자세한 정보는 작업 디렉토리 초기화를 참조하십시오.

    terraform init
    
  2. 리소스를 프로비저닝하십시오. 자세한 정보는 Terraform을 사용하여 인프라 프로비저닝을 참조하십시오.

    1. terraform plan 를 실행하여 제안된 조치를 미리보기 위한 Terraform 실행 플랜을 생성하십시오.

      terraform plan
      
    2. terraform apply 를 실행하여 계획에 정의된 자원을 작성하십시오.

      terraform apply
      

릴리스 작성

테스트에 성공하면 파일이 저장소에 있는지 확인하고 릴리스를 작성하여 개인용 카탈로그에 아키텍처를 온보딩할 준비를 할 수 있습니다. 자세한 정보는 릴리스 작성 을 참조하십시오.

자동화를 활용하여 개인용 카탈로그에 공유

사용자 정의 번들에는 스타터 파이프라인에 대한 몇 가지 옵션을 포함하는 automation 디렉토리가 있습니다. 이러한 파이프라인은 IBM Cloud에서 개인용 카탈로그를 사용하여 공유하는 사용자 정의된 제품의 라이프사이클을 자동화하는 데 사용할 수 있습니다. 여기에는 개인용 카탈로그에 배치 가능한 아키텍처 버전의 온보딩, 유효성 검증 및 공유 관리가 포함됩니다. README 파일은 이를 활용하는 방법에 대한 세부사항을 제공하는 각 파이프라인 옵션에 대해 포함됩니다. 각각에 대한 자세한 정보는 GitHub 조치도구 체인 작성을 참조하십시오.

콘솔을 사용하여 개인용 카탈로그에 온보딩

콘솔을 사용하여 배치 가능한 아키텍처를 온보딩하려면 사용자 정의된 배치 가능한 아키텍처를 사설 카탈로그에 온보딩 에서 단계별 지침을 참조하십시오.

다음 단계

사용자 정의 번들에서 제공되는 스크립트는 제품을 다른 사용자와 공유하기 위해 개인용 카탈로그에 대한 온보딩 프로세스를 자동화하는 데 도움이 됩니다. 그러나 콘솔 또는 CLI를 사용하여 배치 가능한 아키텍처를 온보딩하려는 경우 단계별 지침은 개인용 카탈로그에 사용자 정의된 배치 가능한 아키텍처 온보딩 을 참조하십시오. 개인용 카탈로그를 사용하면 엔터프라이즈의 구성원이 프로젝트 를 사용하여 배치할 수 있는 승인된 아키텍처를 사용해야 합니다.