Terraform을 사용하여 인프라 구성요소 개발 정보

Terraform을 사용하여 클라우드에서 리소스를 효율적으로 배포, 변경 및 제거할 수 있습니다.

Terraform을 사용하여 인프라 구성요소 생성

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

시작하기 전에 로컬 시스템에 인터넷에 액세스할 수 있는지 확인하십시오. 로컬 시스템이 방화벽으로 보호되는 경우 적절한 프록시를 사용하여 Terraform이 인터넷에 연결할 수 있도록 합니다.
  1. terraform.tfvars 파일이 포함된 디렉토리로 이동합니다.
  2. Terraform 초기화:
    terraform init
    이 명령은 플러그인을 다운로드하고 Terraform에서 사용할 디렉토리를 설정합니다.
  3. 구성 구문에 오류가 없는지 확인합니다.
    terraform validate
  4. 구문 오류가 있으면 오류를 수정하고 이전 단계를 반복합니다.

    문제를 디버그하려면 로깅을 사용으로 설정합니다.

    • TF_LOG 환경 변수를 TRACE, DEBUG, INFO, WARN 또는 ERROR로 설정하여 로그 레벨을 구성합니다. TRACE 레벨은 가장 상세합니다.
    • TF_LOG_PATH 환경 변수를 사용하여 로그 파일 경로를 설정합니다.
  5. 구성에 정의된 리소스를 검토합니다.
    terraform plan
    이 구성을 적용할 때 수행되는 모든 작업의 세부 정보가 출력에 표시됩니다.
  6. 변경하려면 구성을 편집하고 검증한 후 수정된 계획을 검토합니다.
  7. 리소스를 만듭니다.
    terraform apply
  8. Do you want to perform these actions? 프롬프트에서 yes를 입력합니다.
    Terraform은 각 리소스를 생성하면 작업의 상태가 표시됩니다.

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

    ssh_to_bastion 출력에는 배스천 호스트에 연결하는 데 사용할 수 있는 ssh 명령이 표시됩니다.

    terraform output 명령을 실행하여 언제든지 Terraform 출력을 볼 수 있습니다.

  9. ssh_to_bastion 출력 값을 기록해 둡니다. 이것은 SSH를 사용하여 배스천 호스트에 연결하는 명령입니다.
이 환경을 확장하려면 전용 서브넷에 연결된 컴퓨트 인스턴스 및 데이터베이스와 같은 다른 Oracle Cloud Infrastructure 리소스를 생성합니다.

토폴로지 수정

토폴로지를 수정하려면 적절한 Terraform 구성에서 리소스 정의를 업데이트한 다음 수정된 구성을 적용해야 합니다. 수정해야 할 리소스 정의를 파악하려면 예제 코드, 특히 각 디렉토리에서 참조된 Terraform 모듈 및 모듈 간 종속성을 철저히 이해해야 합니다.

위상을 수정하는 지침은 이 솔루션의 범위를 벗어납니다.

모든 리소스 제거

  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? 프롬프트에서 yes를 입력합니다.
    Terraform은 각 리소스를 제거하면 작업의 상태가 표시됩니다.
    다음 예와 같이 모든 리소스가 제거된 후 Destroy complete 메시지가 삭제된 리소스 수와 함께 표시됩니다.
    Destroy complete! Resources: 12 destroyed.