테라폼을 IaC 도구로 사용 AWS 클라우드 - AWS 권장 가이드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

테라폼을 IaC 도구로 사용 AWS 클라우드

HashiCorp Terraform은 클라우드 인프라를 관리하는 데 도움이 되는 코드형 인프라 (IaC) 도구입니다. Terraform을 사용하면 버전 지정, 재사용 및 공유할 수 있는 구성 파일에 클라우드 및 온프레미스 리소스를 모두 정의할 수 있습니다. 그런 다음 일관된 워크플로를 사용하여 수명 주기 전반에 걸쳐 모든 인프라를 프로비저닝하고 관리할 수 있습니다.

개발자는 Terraform 언어라는 고급 구성 언어를 사용합니다. Terraform 언어의 기본 저수준 구문은 구성 언어 (HCL) 입니다HashiCorp. Terraform 언어는 사람이 쉽게 읽고 쓸 수 있도록 설계되었습니다. Terraform 언어를 사용하여 클라우드 또는 온프레미스 인프라의 원하는 최종 상태를 설명합니다. 그런 다음 Terraform은 해당 최종 상태에 도달하기 위한 계획을 생성하고, 사용자는 계획을 실행하여 인프라를 프로비저닝합니다.

Terraform 사용의 이점:

  • 테라폼은 플랫폼에 구애받지 않습니다. 모든 클라우드 서비스 공급자와 함께 사용할 수 있습니다. 기타 여러 클라우드 제공업체 전반에서 인프라를 구성, 테스트 AWS 및 배포할 수 있습니다. 조직에서 여러 클라우드 공급자를 사용하는 경우 Terraform은 클라우드 인프라를 관리하는 일관된 단일 통합 솔루션이 될 수 있습니다. 멀티 클라우드 지원에 대한 자세한 내용은 Terraform 웹 사이트의 멀티 클라우드 프로비저닝을 참조하십시오.

  • Terraform은 에이전트가 없습니다. 관리형 인프라에는 소프트웨어를 설치할 필요가 없습니다.

  • Terraform 모듈은 코드를 재사용하고 반복하지 마세요 (DRY) 원칙을 고수할 수 있는 강력한 방법입니다. 예를 들어, Amazon Elastic Compute Cloud (Amazon EC2) 인스턴스, Amazon Elastic Block Store (Amazon EBS) 볼륨 및 논리적으로 그룹화된 기타 리소스를 포함하는 애플리케이션에 대한 특정 구성이 있을 수 있습니다. 이 구성 또는 애플리케이션의 사본을 여러 개 생성해야 하는 경우 전체 코드를 여러 번 복사하는 대신 리소스를 Terraform 모듈로 패키징하고 모듈의 여러 인스턴스를 생성할 수 있습니다. 이러한 모듈은 구성을 구성, 캡슐화 및 재사용하는 데 도움이 될 수 있습니다. 또한 일관성을 제공하고 모범 사례를 보장합니다.

  • Terraform은 인프라의 드리프트 (Terraform 블로그 게시물) 를 감지하고 관리할 수 있습니다. 예를 들어 Terraform에서 관리하는 리소스가 Terraform 외부에서 수정된 경우 Terraform CLI를 사용하여 드리프트를 감지하고 원하는 상태로 복원할 수 있습니다.

테라폼 사용의 단점: