리소스 프로비전 및 관리

Oracle Resource Manager 또는 Terraform를 사용하여 클라우드의 리소스를 효율적으로 배치, 제거 또는 변경할 수 있습니다.

Terraform 상태 파일 정보

Terraform는 관리 기반 구조 리소스를 추적하고, 배치된 리소스를 구성에 매핑하고, 메타 데이터를 추적하고, 대형 기반 구조 배치의 성능을 향상시키기 위한 상태 정보를 저장합니다.

기본적으로 terraform.tfstate 파일은 로컬 호스트에 저장됩니다. 이 기본 동작은 여러 사용자가 제공된 구성에 정의된 리소스를 만들고 삭제해야 하는 IT 환경에서 최적화되지 않습니다. 다중 사용자 환경에서 리소스 배치 및 관리를 제어하려면 Terraform 상태 파일을 Oracle Cloud Infrastructure Object Storage에 저장하고 모든 사용자 간에 상태 파일과 잠금 파일을 공유합니다.

Using the Object Store for Terraform State Files을 참조하십시오.

리소스 생성

terraform.tfvars 파일에서 변수를 설정한 후 Terraform CLI를 사용하여 Terraform 구성에 정의된 리소스를 배치합니다.

시작하기 전에 로컬 시스템에 인터넷 액세스 권한이 있는지 확인하십시오. 로컬 시스템이 방화벽으로 보호되는 경우 적합한 프록시를 사용하여 Terraform가 인터넷에 연결할 수 있습니다.
  1. Terraform를 설치한 컴퓨터에서 terraform.tfvars 파일이 포함된 디렉토리로 이동합니다.
  2. 다음 명령을 실행하여 Terraform를 초기화합니다.
    terraform init
    이 명령은 oci 제공자 플러그인을 다운로드하고 Terraform에서 사용할 디렉토리를 설정합니다.
  3. 구성 구문에 오류가 없는지 확인합니다.
    terraform validate
  4. 구문 오류가 있으면 오류를 수정하고 이전 단계를 반복합니다.
    문제를 디버그하려면 로깅을 구성할 수 있습니다.
    • TF_LOG 환경 변수를 사용하여 로그 레벨을 설정합니다. 지원되는 로그 레벨은 TRACE, DEBUG, INFO, WARN 또는 ERROR 입니다. TRACE 레벨은 가장 상세 정보입니다.
    • TF_LOG_PATH 환경 변수를 사용하여 로그 파일 경로를 설정합니다.
  5. 구성에 정의된 리소스를 검토합니다.
    terraform plan
    출력에는 이 구성을 적용할 때 수행되는 모든 작업의 세부 정보 및 다음 예에 표시된 것과 같은 요약이 표시됩니다.
    Plan: 8 to add, 0 to change, 0 to destroy.

    주:

    메시지의 숫자 8은 예입니다. 실제 번호는 Terraform 구성에서 정의한 설정에 따라 다릅니다.
  6. 변경하려는 경우 구성을 편집하고 검증한 다음 개정된 계획을 검토합니다.
  7. 리소스를 만듭니다.
    terraform apply
  8. Do you want to perform these actions? 프롬프트에서 를 입력합니다.
    Terraform가 각 리소스를 생성하면 작업 상태가 표시됩니다.

    다음 예와 같이 모든 리소스가 생성되면 추가된 리소스 수, 변경 및 삭제된 리소스 수와 함께 Apply complete 메시지가 표시됩니다.

다음은 terraform apply 명령이 성공적으로 실행된 후 표시되는 출력의 예입니다.
Apply complete! Resources: 35 added, 0 changed, 0 destroyed.

Outputs:

BastionPublicIPs = [
    203.0.113.51
]
epmEssbaseServerDetails = []
epmFoundationServerPrivateIPs = [
    172.16.3.4:epmfndpho11:opc:   password    
]
epmHFMServerPrivateIPs = [
    172.16.3.5:epmhfmpho11:opc:   password    
]
epmPlanningServerPrivateIPs = []
epmProfitabilityServerDetails = []
epmStrategicFinanceServerDetails = []
epmWebServerPrivateIPs = [
    172.16.2.2:epmwebpho11:opc:   password    
] 

Terraform 출력에는 다음 정보가 포함됩니다.

  • 기본 호스트의 공용 IP 주소입니다.
  • 토폴로지의 각 전용 Microsoft Windows Server 컴퓨트 인스턴스에 대한 전용 IP 주소, 호스트 이름, 사용자 이름 및 초기 암호(privateIPaddress:hostName:opc: initialPassword 형식)

이러한 세부 정보를 기록해 둡니다. 컴퓨트 인스턴스에 액세스하려면 컴퓨트 인스턴스가 필요합니다.

주:

다음 명령을 실행하여 언제든지 이 출력을 볼 수 있습니다.
terraform output
Oracle Enterprise Performance Management 용 클라우드 인프라가 준비되었습니다. 이제 애플리케이션을 배치할 수 있습니다.

모든 리소스 제거

  1. Terraform를 설치한 컴퓨터에서 terraform.tfvars 파일이 포함된 디렉토리로 이동합니다.
  2. 다음 명령을 입력합니다.
    terraform destroy
    Terraform는 다음 예와 같이 삭제될 리소스의 세부 정보를 표시합니다.
    Plan: 0 to add, 0 to change, 12 to destroy.
  3. Do you really want to destroy all resources? 프롬프트에서 를 입력합니다.
    Terraform에서 각 리소스를 제거하면 작업 상태가 표시됩니다.
    다음 예에 표시된 것과 같이, 모든 리소스가 제거된 후 삭제된 리소스 수와 함께 Destroy complete 메시지가 표시됩니다.
    Destroy complete! Resources: 12 destroyed.