AWS CloudFormation 스택을 통해 하나의 단위로 AWS 리소스 관리 - AWS CloudFormation

AWS CloudFormation 스택을 통해 하나의 단위로 AWS 리소스 관리

스택이란 하나의 단위로 관리할 수 있는 AWS 리소스 모음입니다. 다시 말해서 스택을 생성, 업데이트 또는 삭제하여 리소스 모음을 생성, 업데이트 또는 삭제할 수 있습니다.

스택 생성에는 리소스와 해당 구성을 지정하는 새 CloudFormation 템플릿 배포가 포함됩니다. CloudFormation에서 이를 프로비저닝하고 구성합니다.

스택 업데이트에는 템플릿 또는 파라미터에 변경 사항을 적용하는 것이 포함됩니다. CloudFormation에서는 제출하는 변경 사항을 스택의 현재 상태를 비교하여 변경된 리소스만 업데이트합니다. CloudFormation에서는 업데이트하는 속성에 따라 리소스를 중단하거나 업데이트된 리소스를 대체할 수 있습니다. 리소스 업데이트 동작에 대한 자세한 내용은 스택 리소스의 업데이트 동작 이해 단원을 참조하십시오.

CloudFormation에서는 스택을 업데이트하는 두 가지 방법을 제공합니다.

  • 변경 세트 – 변경 세트를 사용하면 CloudFormation에서 스택에 대해 변경한 사항을 미리 보고 이러한 변경 사항을 적용할지 여부를 결정할 수 있습니다. 변경 세트는 JSON 형식 문서로, CloudFormation에서 스택에 대해 변경한 사항이 요약되어 있습니다. CloudFormation에서 의도하지 않은 변경이 발생하지 않도록 하거나 여러 옵션을 고려하려는 경우 변경 세트를 사용합니다. 예를 들어, 변경 세트를 사용하여 업데이트 중에 CloudFormation에서 스택의 데이터베이스 인스턴스를 대체할 수 없는지 확인할 수 있습니다.

  • 직접 업데이트 – 스택을 직접 업데이트하는 경우 변경 사항을 제출하면 CloudFormation에서 즉시 해당 변경 사항을 배포합니다. 업데이트를 빠르게 배포하려면 직접 업데이트를 사용합니다.

스택을 삭제하면 해당 스택과 연결된 리소스가 삭제됩니다. 예를 들어 스택에는 웹 애플리케이션을 실행하는 데 필요한 모든 리소스(예: 웹 서버, 데이터베이스 및 네트워킹 규칙)가 포함될 수 있습니다. 해당 웹 애플리케이션이 더 이상 필요하지 않은 경우 간단히 스택을 삭제하면 관련 리소스가 모두 삭제됩니다.

참고

스택을 곧바로 삭제했더라도 스택 리소스가 작동된 시간 동안 스택 리소스에 대한 책임은 사용자에게 있습니다.

CloudFormation은 모든 스택 리소스가 적절히 생성 또는 삭제되도록 합니다. CloudFormation은 스택 리소스를 하나의 단위로 처리하기 때문에 스택을 생성하거나 삭제하려면 모든 리소스를 생성하거나 삭제해야 합니다. 리소스를 생성할 수 없는 경우 CloudFormation에서 해당 스택을 롤백하고 생성된 모든 리소스를 자동으로 삭제합니다. 리소스를 삭제할 수 없는 경우, 스택이 삭제될 때까지 나머지 모든 리소스가 그대로 유지됩니다.

스택 관리를 위한 인터페이스

다음과 같은 인터페이스를 사용하여 CloudFormation 스택을 관리할 수 있습니다.

  • CloudFormation 콘솔 – 스택에 액세스할 때 사용할 수 있는 웹 인터페이스를 제공합니다. AWS Management Console에 로그인하고 탐색 모음의 검색 상자를 사용하여 CloudFormation을 검색한 다음 검색 결과에서 CloudFormation을 선택하여 CloudFormation 콘솔에 액세스할 수 있습니다.

  • AWS Command Line Interface – CloudFormation을 포함한 다양한 AWS 서비스에서 사용되는 명령을 제공하며 Windows, Mac 및 Linux에서 지원됩니다. CloudFormation 명령에 대한 자세한 내용은 AWS CLI 명령 참조의 cloudformation을 참조하세요.

  • AWS Tools for PowerShell – AWS SDK for .NET에 의해 노출되는 기능을 기반으로 구축된 PowerShell 모듈 세트입니다. Tools for PowerShell을 사용하면 PowerShell 명령줄에서 AWS 리소스에 대한 작업을 스크립팅할 수 있습니다. CloudFormation용 cmdlet은 AWS Tools for PowerShell Cmdlet 참조에서 찾아볼 수 있습니다.

  • 쿼리 API - HTTPS 요청을 사용하여 호출하는 하위 수준의 API 작업을 제공합니다. 애플리케이션에서 API를 직접적으로 호출할 경우 요청에 서명할 해시 생성과 같은 하위 수준의 세부 정보를 처리하는 코드를 작성해야 합니다. CloudFormation의 API 작업에 대한 자세한 내용은 AWS CloudFormation API 참조의 작업을 참조하세요.

  • AWS SDK – 언어별 API를 제공하고, 서명 계산, 요청 재시도 처리 및 오류 처리와 같은 많은 연결 세부 정보를 관리합니다. 자세한 내용은 AWS를 기반으로 구축하기 위한 도구를 참조하세요.

  • AWS Cloud Development Kit (AWS CDK) – AWS CDK는 TypeScript, Python, Java, .NET과 같은 친숙한 프로그래밍 언어를 사용하여 AWS 인프라를 정의할 수 있는 오픈 소스 소프트웨어 개발 프레임워크입니다. CDK를 사용하면 애플리케이션 리소스를 모델링한 다음 통합 개발 환경(IDE)에서 직접 CloudFormation을 사용하여 프로비저닝할 수 있습니다. 자세한 내용은 AWS Cloud Development Kit (AWS CDK) 단원을 참조하십시오.