기존 리소스 가져오기 개요

기존 리소스 가져오기 개요 (Import Existing Resources Overview)

Terraform으로 관리하고 싶은 기존 인프라스트럭처 리소스를 가져올 수 있는 명령을 소개해요. terraform import 명령으로 상태에 가져오거나, import 블록으로 여러 리소스를 한 번에 가져올 수 있어요. 리소스 가져오기 가능성(resource importability)도 다루어요.

출처: 문서

본문

이 주제는 기존 인프라스트럭처 리소스를 가져와 Terraform으로 관리할 수 있게 해주는 Terraform 명령에 대한 개요를 제공해요.

직접 해보기: Import Terraform Configuration 튜토리얼을 시도해보세요.

워크플로우

Terraform CLI에서 기존 리소스를 상태로 가져올 수 있어요. HCP Terraform을 사용해 가져오기 작업을 수행할 수도 있어요. 여러 리소스를 가져오려면 import 블록을 사용하세요.

상태로 가져오기

terraform import를 실행하기 전에 리소스에 대한 resource 구성 블록을 수동으로 작성해야 해요. 리소스 블록은 Terraform이 가져온 객체를 어디에 매핑해야 하는지 설명해요.

terraform import CLI 명령은 리소스를 상태로만 가져올 수 있어요. CLI를 통한 가져오기는 구성을 생성하지 않아요. 가져온 리소스에 대한 구성도 생성하고 싶다면 대신 import 블록을 사용하세요.

Terraform은 각 원격 객체가 단일 리소스 주소에 바인딩될 것으로 기대해요. 각 원격 객체를 하나의 Terraform 리소스 주소로 가져와야 해요. 동일한 객체를 여러 번 가져오면 원치 않는 동작이 발생할 수 있어요. 자세한 내용은 상태 (State)를 참조하세요.

HCP Terraform

커맨드라인에서 Terraform을 HCP Terraform과 함께 사용하면 apply 같은 명령은 HCP Terraform 환경 안에서 실행돼요. 그러나 import 명령은 로컬로 실행되므로 HCP Terraform의 정보에 접근할 수 없어요. 가져오기를 성공적으로 수행하려면 HCP Terraform의 원격 워크스페이스 변수와 동일한 로컬 변수를 설정해야 할 수 있어요.

여러 리소스 가져오기

import 블록에 여러 리소스를 지정해 한 번에 둘 이상의 리소스를 가져올 수 있어요. 또한 일반적인 plan 및 apply 워크플로우의 일부로 가져오기를 검토할 수 있어요. 추가 정보는 Terraform 구성 언어 문서의 import 블록 참조를 참조하세요.

리소스 가져오기 가능성

Terraform의 각 리소스는 가져올 수 있게 되려면 몇 가지 기본 로직을 구현해야 해요. 그 결과 모든 Terraform 리소스를 가져올 수 있는 것은 아니에요.

가져올 수 있는 리소스는 Terraform Registry의 각 리소스 문서 페이지 하단에 문서화되어 있어요. 리소스 가져오기에 문제가 있으면 관련 프로바이더 저장소에 이슈를 보고하세요.

리소스를 가져올 수 있게 만들려면 Extending Terraform: Resources — Import을 참조하세요.

더 알아보기 (Learn more)