

# CloudFormation 프라이빗 레지스트리의 모듈 사용
<a name="modules-using"></a>

이 주제에서는 CloudFormation 템플릿에서 모듈을 사용하는 방법을 설명합니다. 모듈은 템플릿에 추가할 수 있는 미리 만들어진 리소스 번들이라고 생각하면 됩니다.

모듈을 사용하려면 다음 단계를 수행하세요.
+ **모듈 등록** - CloudFormation 레지스트리에 모듈을 비공개 확장 프로그램으로 등록할 수 있습니다. 작업 중인 AWS 계정과 리전에 모듈이 등록되어 있는지 확인하세요. 자세한 내용은 [CloudFormation 레지스트리 개념](registry-concepts.md) 섹션을 참조하세요.
+ **템플릿에 포함** - 다른 리소스와 마찬가지로 CloudFormation 템플릿의 [Resources](resources-section-structure.md) 섹션에 모듈을 추가합니다. 모듈에 필요한 속성도 제공해야 합니다.
+ **스택 생성 또는 업데이트** - 스택 작업을 시작하면 CloudFormation이 처리된 템플릿을 생성합니다. 이 템플릿은 포함된 모듈을 적절한 리소스로 해석합니다.
+ **변경 사항 미리 보기** - 변경하기 전에 변경 세트를 사용하여 추가 또는 변경될 리소스를 확인할 수 있습니다. 자세한 내용은 [변경 세트를 사용하여 CloudFormation 스택 업데이트](using-cfn-updating-stacks-changesets.md) 섹션을 참조하세요.

리소스와 모듈을 모두 포함한 템플릿을 예시로 생각해 보세요. 템플릿에는 개별 리소스(`ResourceA`)와 모듈(`ModuleParent`)이 포함되어 있습니다. 이 모듈에는 `ResourceB` 및 `ResourceC` 리소스는 물론 중첩된 모듈인 `ModuleChild`가 포함되어 있습니다. `ModuleChild`에는 단일 리소스인 `ResourceD`가 포함되어 있습니다. 이 템플릿에서 스택을 생성하면 CloudFormation이 템플릿을 처리하고 모듈을 적절한 리소스로 해석합니다. 결과로 나오는 스택에는 `ResourceA`, `ResourceB`, `ResourceC`, `ResourceD`라는 4개의 리소스가 있습니다.

![\[스택 작업 중에 CloudFormation이 스택 템플릿에 포함된 모듈 2개를 적절한 리소스 4개로 해석합니다.\]](http://docs.aws.amazon.com/ko_kr/AWSCloudFormation/latest/UserGuide/images/modules-resource-inclusion.png)


CloudFormation은 스택의 어떤 리소스가 모듈에서 생성되었는지 추적합니다. [**이벤트**], [**리소스**], [**드리프트**] 탭에서 지정된 스택에 대한 정보를 확인할 수 있으며, 이는 변경 세트 미리 보기에도 포함됩니다.

모듈은 템플릿의 리소스와 구별됩니다. 리소스는 일반적으로 세 부분으로 구성된 규칙을 준수하는 것과 달리, 모듈은 네 부분으로 구서된 이름 지정 규칙을 준수하기 때문입니다.

```
organization::service::use-case::MODULE
```