Skip to Content

Terraform Import란?

Terraform 가져오기는 Terraform 툴킷에서 중요한 명령입니다. 이를 통해 사용자는 Terraform 관리 하에 기존 인프라를 가져올 수 있으며, 이는 처음부터 인프라를 재구축할 필요 없이 기존 환경에 Terraform을 통합하는 데 필수적입니다.

이 문서에서는 Terraform 가져오기의 중요성과 이를 효과적으로 사용하여 인프라 관리의 일관성을 자동화하고 개선하는 방법에 대해 자세히 살펴보겠습니다.

Terraform 가져오기 이해하기

Terraform 가져오기를 사용하면 Terraform 외부에서 생성된 리소스를 관리 하에 가져올 수 있습니다. 이 프로세스에는 기존 인프라 리소스를 해당 Terraform 구성에 매핑하는 작업이 포함됩니다. 이를 통해 Terraform은 속성 및 관계를 포함한 이러한 리소스의 상태를 추적하고 Terraform 코드에 명시적으로 정의된 리소스와 함께 관리할 수 있습니다.

이 프로세스는 다음과 같은 다양한 이점을 제공합니다.

  • 원활한 통합: Terraform 가져오기를 사용하면 모든 것을 처음부터 다시 구축할 필요 없이 기존 인프라를 Terraform 워크플로우에 통합할 수 있습니다. 이는 기존 환경을 관리하거나 워크로드를 새로운 플랫폼으로 마이그레이션할 때 특히 유용합니다. 리소스를 점진적으로 가져와 지속적인 운영 중단을 최소화할 수 있습니다.
  • 통합 관리: 가져온 모든 인프라 리소스는 Terraform의 구성 파일을 통해 관리할 수 있습니다. 이를 통해 인프라의 다양한 부분을 관리하기 위해 별도의 툴이나 수동 프로세스 간에 전환할 필요가 없습니다.
  • 일관성: Terraform은 인프라 관리에 대한 선언적 접근 방식을 적용합니다. 기존 리소스를 가져오면 Terraform 구성을 통해 일관된 방식으로 리소스를 정의하고 관리할 수 있습니다. 이를 통해 유지보수를 개선하고 오류를 줄이며 인프라 변경을 간소화할 수 있습니다. 예를 들어, Terraform으로 생성된 가상머신(VM)과 수동으로 프로비저닝된 가상머신을 함께 관리한다고 상상해 보십시오. 기존 VM을 가져오면 모든 VM이 일관되게 정의되어 모든 VM에 대한 버전 관리 및 자동화된 프로비저닝과 같은 Terraform 기능을 활용할 수 있습니다.

Terraform Import 시작하기

Terraform 가져오기를 사용하면 리소스를 다시 생성할 필요 없이 기존 인프라를 Terraform 관리로 가져올 수 있습니다. 이 짧은 튜토리얼은 Terraform 가져오기를 사용하여 기존 AWS EC2 인스턴스를 관리하는 프로세스를 안내합니다. 가이드를 마치면 Terraform으로 리소스를 가져와 효과적으로 관리하는 방법을 이해할 수 있습니다.

선결 요소

시작하기 전에 다음 사항을 확인하십시오.

  1. 설치된 Terraform : 공식 Terraform 웹사이트 에서 Terraform을 다운로드하여 설치합니다.
  2. AWS CLI 설치: 적절한 자격 증명으로 AWS CLI를 설치 및 구성합니다.
  3. 기존 AWS EC2 인스턴스: Terraform 관리로 가져오려는 기존 EC2 인스턴스가 있어야 합니다.
  4.  

1단계: Terraform 구성 설정

먼저, Terraform 프로젝트를 위한 디렉토리를 만들고 탐색합니다. 그런 다음 main.tf 새 파일을 생성합니다.

$ mkdir terraform-import-tutorial
 $ cd terraform-import-tutorial
 $ touch main.tf

2단계: Terraform 구성 쓰기

main.tf 파일에서 가져올 공급자와 리소스를 정의합니다. 이 튜토리얼에서는 AWS EC2 인스턴스를 사용합니다.

provider "aws" {
 region = "us-west-2"
 }
 resource "aws_instance" "example" {
 # The configuration will be filled in after importing the instance.
 }

3단계: Terraform 초기화

Terraform을 사용하기 전에 필요한 플러그인으로 작업 디렉토리를 초기화합니다.

$ terraform init

4단계: 가져올 EC2 인스턴스 식별

가져올 EC2 인스턴스 ID를 찾습니다. AWS 관리 콘솔 또는 AWS AWS CLI를 통해 확인할 수 있습니다. 예를 들어, 인스턴스 ID가 i-1234567890abcdef0이라고 가정해 봅시다.

5단계: EC2 인스턴스 가져오기

terraform import 명령을 사용하여 기존 EC2 인스턴스를 Terraform으로 가져옵니다. 터미널에서 다음 명령을 실행합니다.

$ terraform import aws_instance.example i-1234567890abcdef0

이 명령은 Terraform에게 구성의 resource aws_instance.example을 기존 EC2 인스턴스 i-1234567890abcdef0과 연결하도록 지시합니다.

6단계: 가져오기 확인

가져오기 후 Terraform은 가져온 리소스에 대한 정보로 상태 파일을 업데이트합니다. 그러나 main.tf 파일은 여전히 불완전합니다. 구성을 입력하려면 terraform show 명령을 사용하여 가져온 리소스를 검사하고 main.tf 업데이트합니다.

$ terraform show

가져온 리소스의 상세정보가 표시됩니다. 리소스의 실제 구성과 일치하도록 main.tf 업데이트합니다. 다음과 같은 예시가 있습니다.

provider "aws" {
 region = "us-west-2"
 }
 resource "aws_instance" "example" {
 ami           = "ami-0c55b159cbfafe1f0"  # Replace with your instance's AMI ID
 instance_type = "t2.micro"                # Replace with your instance type
 key_name      = "my-key-pair"             # Replace with your key pair name
 # Additional attributes as per the `terraform show` output
 }

7단계: 구성 변경 사항 적용

이제 구성 파일이 가져온 리소스를 정확하게 반영하므로 Terraform으로 관리할 수 있습니다. 테라폼 계획을 실행하여 계획된 조치를 확인하세요.

$ terraform plan

모든 것이 좋으면 변경 사항을 적용하세요.

$ terraform apply

8단계: 인프라 관리

이제 Terraform을 사용하여 가져온 리소스를 관리할 수 있습니다. 예를 들어, main.tf 인스턴스 유형 또는 기타 속성을 업데이트하고, 테라폼 적용 으로 변경 사항을 적용할 수 있습니다.

가져온 리소스 작업 시 고려 사항

Terraform 가져오기는 기존 인프라를 관리하는 강력한 방법을 제공하지만, 몇 가지 주요 고려 사항이 있습니다.

  • 구성 일치: Terraform은 리소스를 관리하기 위해 구성에 의존합니다. 리소스를 가져올 때 Terraform 구성이 기존 리소스의 속성을 정확하게 반영하는지 확인합니다. 구성과 실제 리소스가 일치하지 않으면 가져오기 또는 후속 관리 중에 예기치 않은 동작이나 오류가 발생할 수 있습니다.
  • 국가 관리: Terraform은 가져온 리소스를 포함한 인프라의 상태를 상태 파일에 저장합니다. 이 파일은 Terraform이 리소스를 추적하고 수명주기를 관리하는 데 필수적입니다. 적절한 상태 관리를 보장하는 방법은 다음과 같습니다.
    • 상태 파일 보안: 상태 파일에는 인프라 리소스에 대한 민감한 정보가 포함되어 있습니다. 무단 액세스로부터 보호하기 위해 적절한 보안 조치를 구현합니다. 상태 파일을 Terraform Cloud 또는 Terraform Enterprise와 같은 전용 백엔드와 같은 안전한 위치에 저장하는 것을 고려하십시오.
    • 정기 백업: 우발적인 삭제 또는 손상 시 데이터 손실을 방지하기 위해 주 파일을 정기적으로 백업하십시오. 백업을 사용하면 필요한 경우 상태를 복원할 수 있습니다.

가져온 리소스 관리를 위한 모범 사례

이러한 모범 사례를 따르면 Terraform 코드에 정의된 것과 함께 가져온 리소스를 효과적으로 관리할 수 있습니다.

  1. 가져오기 후 확인: 가져오기에 성공한 후, Terraform 상태 내의 가져온 리소스의 속성이 실제 리소스의 구성과 일치하는지 확인합니다. terraform show 명령을 사용하여 가져온 리소스를 검사하고 이를 클라우드 제공업체의 콘솔 또는 API에서 가져온 리소스 세부 정보와 비교합니다.
  2. 구성 업데이트: 가져온 후 Terraform 외부에서 리소스를 수정할 수 있습니다. Terraform 구성을 업데이트하여 리소스 속성의 변경 사항을 반영하는 것이 중요합니다. 이를 통해 Terraform은 인프라를 정확하게 표현하고 Terraform을 사용하여 리소스를 효과적으로 관리할 수 있습니다.
  3. 문서 가져오기: 가져온 리소스에 대한 명확한 문서를 유지합니다. 이 문서는 다음 사항을 상세히 기술해야 합니다.
    • 가져온 리소스 유형(예: AWS EC2 인스턴스)
    • 가져온 리소스의 식별자(예: 인스턴스 ID)
    • 가져오기 프로세스 중 취해야 할 단계
    • 수입과 관련된 모든 특정 고려사항 또는 참고 사항    

결론

Terraform의 수입은 기존 인프라와 Terraform의 관리 역량 간의 격차를 해소합니다. 이를 통해 생성 방법에 관계없이 전체 인프라 스택을 원활하게 통합할 수 있습니다. 이러한 통합 접근 방식은 복잡성을 줄이고 가시성을 향상시키며 인프라 관리를 간소화합니다.

인프라가 진화함에 따라 스토리지는 중요한 고려 사항이 되었습니다. 컨테이너화된 워크로드를 위한 Portworx®, 클라우드 구축을 위한 Pure Cloud Block Store™와 같은 퓨어스토리지 솔루션을 살펴보고, Terraform과 함께 스토리지 관리를 최적화하세요. 이러한 조합은 현대적 애플리케이션을 위한 효율적이고 확장 가능한 인프라를 보장합니다.

다음을 추천드립니다.

03/2025
Rancher Kubernetes Engine 2 on VMware with Portworx
Gain consistent experience across public cloud, on- premises, hybrid cloud, or edge architecture with Rancher Kubernetes Engine (RKE2) on VMware with Portworx.
레퍼런스 아키텍처
33 pages

주요 자료 및 이벤트를 확인하세요

THOUGHT LEADERSHIP
혁신을 향한 레이스

스토리지 혁신의 최전선에 있는 업계 리더들의 최신 인사이트 및 관점을 확인하세요.

더 알아보기
분석 보고서
사이버 복원력 있는 미래를 계획하세요

사이버 보안에 대한 투자를 최대한 활용하고 신속한 대응 및 복구를 보장하기 위한 협력 전략에 대해 알아보세요.

보고서 읽기
유용한 자료 모음
스토리지의 미래: AI 시대를 위한 새로운 원칙

성공을 위해서는 새로운 사고와 현대적인 접근 방식이 필요하며, AI 라는 새 도전과제가 데이터 스토리지 요구 사항을 어떻게 변화시키고 있는지 알아보세요.

eBook 다운로드
유용한 자료 모음
스토리지 구매를 중단하고 플랫폼을 도입하세요

엔터프라이즈 스토리지 플랫폼의 요구 사항, 구성 요소 및 선택 프로세스에 대해 알아보세요.

보고서 읽기
연락처
질문하기

퓨어스토리지 제품이나 인증 관련 질문이나 코멘트가 있으신가요?   저희가 도와드립니다.

데모 예약

라이브 데모를 예약하고 퓨어스토리지가 데이터를 어떻게 강력한 결과로 전환해주는지 직접 확인해 보세요. 

연락하기: +82 2 6001-3330

언론홍보팀:  pr@purestorage.com

 

퓨어스토리지코리아 주소

30F 아셈타워,

517 영동대로,

강남구, 서울

대한민국

korea@purestorage.com

닫기
지원하지 않는 브라우저입니다.

오래된 브라우저는 보안상 위험을 초래할 수 있습니다. 최상의 경험을 위해서는 다음과 같은 최신 브라우저로 업데이트하세요.