시작 템플릿 생성 - Amazon Elastic Compute Cloud

시작 템플릿 생성

정의한 파라미터를 사용하여 시작 템플릿을 생성하거나 기존 시작 템플릿 또는 인스턴스를 새 시작 템플릿 생성을 위한 기준으로 사용합니다.

파라미터에서 시작 템플릿 생성

시작 템플릿을 만들려면 시작 템플릿 이름과 하나 이상의 인스턴스 구성 파라미터를 지정해야 합니다.

콘솔을 사용하여 시작 템플릿을 생성하는 방법
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 시작 템플릿을 선택한 다음 시작 템플릿 생성을 선택합니다.

  3. 시작 템플릿 파라미터는 그룹화됩니다. 각 그룹에 대한 자세한 내용은 아래 섹션을 참조하세요.

  4. 요약 패널을 사용하여 시작 템플릿 구성을 검토합니다. 링크를 선택하여 원하는 섹션으로 이동한 다음, 필요에 따라 변경할 수 있습니다.

  5. 시작 템플릿을 생성할 준비가 되었으면 시작 템플릿 생성(Create launch template)을 선택합니다.

  1. Launch template name에 대해 실행 템플릿의 설명이 포함된 이름을 입력하세요.

  2. [템플릿 버전 설명(Template version description)]에 시작 템플릿의 이 버전에 대한 간단한 설명을 입력합니다.

  3. 생성 시 시작 템플릿에 태깅하려면 템플릿 태그(Template tags)를 확장하고 태그 추가(Add tag)를 선택한 다음 태그 키와 값 페어를 입력합니다. 추가할 각 추가 태그에 대해 태그 추가(Add tag)를 다시 선택합니다.

    참고

    인스턴스가 시작될 때 생성되는 리소스에 태깅하려면 리소스 태그(Resource tags)에서 태깅해야 합니다. 자세한 내용은 리소스 태그 단원을 참조하십시오.

Amazon Machine Image(AMI)에는 인스턴스를 생성하는 데 필요한 정보가 포함되어 있습니다. 예를 들어 AMI에는 웹 서버 역할을 수행하는 데 필요한 소프트웨어가 포함될 수 있습니다(예: Linux, Apache, 사용자의 웹 사이트).

다음과 같이 적합한 AMI를 찾을 수 있습니다. AMI를 찾는 각 옵션에서 취소(Cancel)(오른쪽 상단)를 선택하여 AMI를 선택하지 않고 인스턴스 시작 마법사로 돌아갈 수 있습니다.

검색 창

사용 가능한 모든 AMI를 검색하려면 AMI 검색 창에 키워드를 입력한 다음 Enter 키를 누릅니다. AMI를 선택하려면 선택(Select)을 선택합니다.

최근 항목

최근에 사용한 AMI입니다.

최근 시작(Recently launched) 또는 현재 사용 중(Currently in use)을 선택한 다음 Amazon Machine Image(AMI)(Amazon Machine Image (AMI))에서 AMI를 선택합니다.

내 AMI(My AMIs)

사용자가 소유한 프라이빗 AMI 또는 공유된 프라이빗 AMI입니다.

본인 소유(Owned by me) 또는 나와 공유됨(Shared with me)을 선택한 다음 Amazon Machine Image(AMI)(Amazon Machine Image (AMI))에서 AMI를 선택합니다.

빠른 시작

AMI는 운영 체제(OS) 별로 그룹화되어 있어 빠르게 시작할 수 있습니다.

먼저 필요한 OS를 선택한 다음 Amazon Machine Image(AMI)(Amazon Machine Image (AMI))에서 AMI를 선택합니다. 프리 티어로 이용할 수 있는 AMI를 선택하려면 AMI가 프리 티어 적격(Free tier eligible)으로 표시되어 있는지 확인합니다.

더 많은 AMI 검색(Browse more AMIs)

더 많은 AMI 검색(Browse more AMIs)을 선택하여 전체 AMI 카탈로그를 검색합니다.

  • 사용 가능한 모든 AMI를 검색하려면 검색 창에 키워드를 입력한 다음 Enter 키를 누릅니다.

  • Systems Manager 파라미터를 사용하여 AMI를 찾으려면 시스템 검색 창 오른쪽에 있는 화살표 버튼을 선택한 다음 Search by Systems Manager parameter(Systems Manager 파라미터로 검색)를 선택하세요. 자세한 내용은 Systems Manager 파라미터를 사용하여 AMI 찾기 단원을 참조하십시오.

  • 시작 템플릿에서 인스턴스가 시작될 때 AMI로 확인될 Systems Manager 파라미터를 지정하려면 창 표시줄 오른쪽에 있는 화살표 버튼을 선택한 다음 사용자 지정 값/Systems Manager 파라미터 지정을 선택합니다. 자세한 내용은 AMI ID 대신 Systems Manager 파라미터 사용 단원을 참조하십시오.

  • 범주별로 검색하려면 퀵 스타트 AMI(Quickstart AMIs), 내 AMI(My AMIs), AWS Marketplace AMI 또는 커뮤니티 AMI(Community AMIs)를 선택합니다.

    AWS Marketplace는 AMI를 비롯하여 AWS에서 실행되는 소프트웨어를 구입할 수 있는 온라인 상점입니다. AWS Marketplace에서 인스턴스를 시작하는 방법에 대한 자세한 내용은 AWS Marketplace 인스턴스 시작을 참조하세요. 커뮤니티 AMI(Community AMIs)에서 AWS 커뮤니티 멤버가 다른 사용자가 사용할 수 있도록 설정한 AMI를 찾을 수 있습니다. Amazon 또는 검증된 파트너의 AMI는 확인된 공급 업체로 표시됩니다.

  • AMI 목록을 필터링하려면 화면 왼쪽에 있는 결과 구체화(Refine results) 아래에 확인란을 하나 이상 선택합니다. 선택한 검색 범주에 따라 필터 옵션이 다릅니다.

  • 각 AMI의 지원 루트 디바이스 유형 목록을 확인합니다. EBS(Amazon EBS에서 지원) 또는 인스턴스 스토어(인스턴스 스토어에서 지원) 중 필요한 유형의 AMI를 확인합니다. 자세한 내용은 루트 디바이스 스토리지 단원을 참조하십시오.

  • 각 AMI의 지원 가상화 유형 목록을 확인합니다. hvm 또는 paravirtual 중 필요한 유형의 AMI를 확인합니다. 예를 들어 일부 인스턴스 유형은 HVM이 필요합니다. 자세한 내용을 알아보려면 Linux AMI 가상화 유형 섹션을 참조하세요.

  • 각 AMI에 대해 나열된 부팅 모드를 확인합니다. 필요한 부팅 모드(legacy-bios, uefi 또는 uefi-preferred)를 사용하는 AMI를 확인합니다. 자세한 내용은 부팅 모드 단원을 참조하십시오.

  • 용도에 적합한 AMI를 선택하고 선택 버튼을 선택합니다.

인스턴스 유형은 인스턴스의 하드웨어 구성과 크기를 정의합니다. 대형 인스턴스는 CPU와 메모리가 더 높습니다. 자세한 내용은 Amazon EC2 인스턴스 유형을 참조하세요.

인스턴스 유형(Instance type)에서 인스턴스 유형을 선택하거나 인스턴스 속성을 지정하고 Amazon EC2가 해당 속성이 있는 인스턴스 유형을 찾도록 할 수 있습니다.

참고

인스턴스 속성 지정은 Auto Scaling 그룹, EC2 플릿 및 스팟 플릿을 사용하여 인스턴스를 시작할 때만 지원됩니다. 자세한 내용은 속성 기반 인스턴스 유형 선택을 사용하여 Auto Scaling 그룹 생성, EC2 플릿에 대한 속성 기반 인스턴스 유형 선택스팟 플릿에 대한 속성 기반 인스턴스 유형 선택 섹션을 참조하세요.

인스턴스 시작 마법사 또는 RunInstances API에서 시작 템플릿을 사용하려는 경우 인스턴스 유형을 선택해야 합니다.

  • 인스턴스 유형: 인스턴스 유형이 지정한 AMI와 호환되는지 확인합니다. 자세한 내용은 Amazon EC2 인스턴스 유형 단원을 참조하십시오.

  • 인스턴스 유형 비교(Compare instance types): vCPU 수, 아키텍처, 메모리 양(GiB), 스토리지 양(GB), 스토리지 유형 및 네트워크 성능과 같은 속성을 기준으로 서로 다른 인스턴스 유형을 비교할 수 있습니다.

  • 조언 받기: Amazon Q EC2 인스턴스 유형 선택기에서 인스턴스 유형에 대한 지침과 제안을 받을 수 있습니다. 자세한 내용은 새 워크로드에 대한 인스턴스 유형 권장 사항 가져오기 단원을 참조하십시오.

  • 고급(Advanced): 인스턴스 속성을 지정하고 Amazon EC2 이러한 속성으로 인스턴스 유형을 식별할 수 있도록 하려면 고급(Advanced)을 선택한 다음 인스턴스 유형 속성 지정(Specify instance type attributes)을 선택합니다.

    • vCPU 수(Number of vCPUs): 컴퓨팅 요구 사항에 맞는 최소 및 최대 vCPUs 수를 입력합니다. 제한이 없음을 표시하려면 최소값 0을 입력하고 최대값을 비워 둡니다.

    • 메모리 용량(MiB)(Amount of memory (MiB)): 컴퓨팅 요구 사항에 맞는 최소 및 최대 메모리 양을 MiB 단위로 입력합니다. 제한이 없음을 표시하려면 최소값 0을 입력하고 최대값을 비워 둡니다.

    • 선택적 인스턴스 유형 특성(Optional instance type attributes)을 확장하고 속성 추가(Add attribute)를 선택하여 컴퓨팅 요구 사항을 보다 자세히 표현할 수 있습니다. 각 속성에 대한 자세한 내용은 Amazon EC2 API Reference(Amazon EC2 API 레퍼런스)의 InstanceRequirementsRequest를 참조하세요.

    • 결과 인스턴스 유형(Resulting instance types): 지정한 속성과 일치하는 인스턴스 유형을 미리 볼 수 있습니다. 인스턴스 유형을 제외하려면 속성 추가(Add attribute)를 선택하고 속성(Attribute) 목록에서 제외된 인스턴스 유형(Excluded instance types)을 선택합니다. Attribute value(속성 값) 목록에서 제외할 인스턴스 유형을 선택합니다.

인스턴스에 대한 키 페어입니다.

키 페어 이름(Key pair name)에서 기존 키 페어를 선택하거나 새로운 키 페어 생성(Create new key pair)을 선택하여 새로 생성합니다. 자세한 내용은 Amazon EC2 키 페어 및 Amazon EC2 인스턴스 단원을 참조하십시오.

필요에 따라 네트워크 설정을 구성합니다.

  • 서브넷(Subnet): 가용 영역, 로컬 영역, Wavelength Zone 또는 Outposts와 연결된 서브넷에서 인스턴스를 시작할 수 있습니다.

    가용 영역에서 인스턴스를 시작하려면 인스턴스를 시작할 서브넷을 선택합니다. 새 서브넷을 생성하려면 새 서브넷 생성을 선택하여 Amazon VPC 콘솔로 이동합니다. 마친 후에 마법사로 돌아와 새로 고침 아이콘을 선택하면 해당 서브넷이 목록에 로딩됩니다.

    로컬 영역에서 인스턴스를 시작하려면 로컬 영역에 생성된 서브넷을 선택합니다.

    Outposts에서 인스턴스를 시작하려면 Outposts와 연결된 VPC의 서브넷을 선택합니다.

  • 방화벽(보안 그룹)(Firewall (security groups)): 하나 이상의 보안 그룹을 사용하여 인스턴스에 대한 방화벽 규칙을 정의합니다. 이 규칙은 인스턴스에 전달되는 수신 네트워크 트래픽을 정의합니다. 다른 모든 트래픽은 무시됩니다. 보안 그룹에 대한 자세한 내용은 Linux 인스턴스에 대한 Amazon EC2 Amazon 보안 그룹 섹션을 참조하세요.

    네트워크 인터페이스를 추가하는 경우 네트워크 인터페이스에서 동일한 보안 그룹을 지정해야 합니다.

    다음과 같이 보안 그룹을 선택하거나 생성합니다.

    • 기존 보안 그룹을 선택하려면 기존 보안 그룹 선택(Select an existing security group)을 선택하고 일반 보안 그룹(Common security groups)에서 보안 그룹을 선택합니다.

    • 새 보안 그룹을 생성하려면 보안 그룹 생성(Create security group)을 선택합니다.

      규칙은 필요에 따라 추가할 수 있습니다. 예를 들어, 웹 서버인 인스턴스인 경우 80번 포트(HTTP)와 443번 포트(HTTPS)를 열어 인터넷 트래픽을 허용할 수 있습니다.

      규칙을 추가하려면 보안 그룹 규칙 추가(Add security group rule)를 선택합니다. 유형(Type)에서 네트워크 트래픽 유형을 선택합니다. 프로토콜(Protocol) 필드는 네트워크 트래픽에 개방되는 프로토콜로 자동으로 채워집니다. 원본 유형(Source type)에서 원본 유형을 선택합니다. 마법사에서 사용자 컴퓨터의 시작 템플릿을 자동으로 추가하려면 내 IP(My IP)를 선택합니다. 하지만 고정 IP 주소 없이 방화벽 뒤에서 또는 ISP를 통해 연결하는 경우에는 클라이언트 컴퓨터가 사용하는 IP 주소의 범위를 찾아야 합니다.

      주의

      모든 IP 주소(0.0.0.0/0)가 SSH 또는 RDP를 통해 인스턴스에 액세스할 수 있도록 하는 규칙은 테스트 인스턴스를 잠시 시작하고 곧 중지하거나 종료할 경우 허용되지만 프로덕션 환경에서는 안전하지 않습니다. 특정 주소나 IP 주소 범위에서만 인스턴스 액세스를 허용하도록 설정해야 합니다.

  • 고급 네트워크 구성

    네트워크 인터페이스

    • 디바이스 인덱스: 네트워크 인터페이스의 디바이스 번호입니다(예: 기본 네트워크 인터페이스의 경우 eth0). 이 필드를 비워두면 AWS가 기본 네트워크 인터페이스를 생성합니다.

    • 네트워크 인터페이스(Network interface): Amazon EC2에서 새로운 인터페이스를 생성하도록 새 인터페이스(New interface)를 선택하거나 사용 가능한 기존 네트워크 인터페이스를 선택합니다.

    • 설명: (선택 사항) 새로운 네트워크 인터페이스의 설명입니다.

    • 서브넷(Subnet): 새로운 네트워크 인터페이스를 생성할 서브넷입니다. 기본 네트워크 인터페이스(eth0)에서 이는 인스턴스가 시작되는 서브넷입니다. eth0에서 기존 네트워크 인터페이스를 입력한 경우에는 네트워크 인터페이스가 위치하는 서브넷에서 인스턴스가 시작됩니다.

    • 보안 그룹: 네트워크 인터페이스를 연결할 VPC의 하나 이상의 보안 그룹입니다.

    • 퍼블릭 IP 자동 할당(Auto-assign public IP): 인스턴스의 퍼블릭 IPv4 주소 수신 여부를 지정합니다. 기본 설정 사용 시, 기본 서브넷을 사용하는 인스턴스는 퍼블릭 IPv4 주소를 수신하고 기본이 아닌 서브넷의 인스턴스는 수신하지 않습니다. 활성화 또는 비활성화를 선택하여 서브넷의 기본 설정을 재정의할 수 있습니다. 자세한 내용은 퍼블릭 IPv4 주소 단원을 참조하십시오.

    • 기본 IP: 서브넷 범위 중 프라이빗 IPv4 주소입니다. Amazon EC2가 자동으로 프라이빗 IPv4 주소를 선택하도록 하려면 비워 둡니다.

    • 보조 IP(Secondary IP): 서브넷 범위 중 하나 이상의 추가적인 프라이빗 IPv4 주소입니다. 직접 할당(Manually assign)을 선택하고 IP 주소를 입력합니다. IP 추가(Add IP)를 선택하여 다른 IP 주소를 추가합니다. 또는 자동 할당(Automatically assign)을 선택하여 Amazon EC2가 사용자를 위해 주소를 하나 선택하도록 하고 추가할 IP 주소 수를 나타내는 값을 입력합니다.

    • (IPv6에만 해당) IPv6 IPs: 서브넷 범위 중 IPv6 주소입니다. 직접 할당(Manually assign)을 선택하고 IP 주소를 입력합니다. IP 추가(Add IP)를 선택하여 다른 IP 주소를 추가합니다. 또는 자동 할당(Automatically assign)을 선택하여 Amazon EC2가 사용자를 위해 주소를 하나 선택하도록 하고 추가할 IP 주소 수를 나타내는 값을 입력합니다.

    • [IPv4 접두사(IPv4 Prefixes)]: 네트워크 인터페이스의 IPv4 접두사입니다.

    • [IPv6 접두사(IPv4 Prefixes)]: 네트워크 인터페이스의 IPv6 접두사입니다.

    • (선택 사항)기본 IPv6 IP 할당: 인스턴스를 듀얼 스택 또는 IPv6 전용 서브넷으로 시작하는 경우 기본 IPv6 IP를 할당할 수 있는 옵션이 있습니다. 기본 IPv6 주소를 할당하면 인스턴스나 ENI에 대한 트래픽 중단을 방지할 수 있습니다. 이 인스턴스가 변경되지 않는 IPv6 주소를 사용하는 경우 활성화를 선택하세요. 인스턴스를 시작할 때 AWS은(는) 인스턴스에 연결된 ENI와 연결된 IPv6 주소를 기본 IPv6 주소로 자동 할당합니다. IPv6 GUA 주소를 기본 IPv6로 활성화한 후에는 비활성화할 수 없습니다. IPv6 GUA 주소를 기본 IPv6로 활성화하면 인스턴스가 종료되거나 네트워크 인터페이스가 분리될 때까지 첫 번째 IPv6 GUA가 기본 IPv6 주소로 설정됩니다. 인스턴스에 연결된 ENI와 연결된 IPv6 주소가 여러 개 있고 기본 IPv6 주소를 활성화한 경우 ENI와 연결된 첫 번째 IPv6 GUA 주소가 기본 IPv6 주소가 됩니다.

    • 종료 시 삭제: 인스턴스가 삭제될 때 네트워크 인터페이스도 삭제되도록 할 것인지 여부입니다.

    • Elastic Fabric Adapter(EFA): 네트워크 인터페이스가 Elastic Fabric Adapter(EFA)임을 나타냅니다. 자세한 내용은 Elastic Fabric Adapter(EFA) 섹션을 참조하세요.

    • 네트워크 카드 인덱스: 네트워크 카드의 인덱스입니다. 기본 네트워크 인터페이스는 네트워크 카드 인덱스 0에 할당되어야 합니다. 일부 인스턴스 유형은 여러 네트워크 카드를 지원합니다.

    • ENA Express: ENA Express는 AWS SRD(Scalable Reliable Datagram) 기술로 구동됩니다. SRD 기술은 패킷 분산 메커니즘을 사용하여 부하를 분산하고 네트워크 혼잡을 방지합니다. ENA Express를 활성화하면 지원되는 인스턴스가 가능한 경우 일반 TCP 트래픽을 기반으로 SRD를 사용하여 통신할 수 있습니다. 활성화 또는 비활성화를 선택하지 않는 한 시작 템플릿에는 인스턴스에 대한 ENA Express 구성이 포함되지 않습니다.

    • ENA Express UDP: ENA Express를 활성화한 경우 필요에 따라 UDP 트래픽에 사용할 수 있습니다. 활성화 또는 비활성화를 선택하지 않는 한 시작 템플릿에는 인스턴스에 대한 ENA Express 구성이 포함되지 않습니다.

    보조 네트워크 인터페이스를 추가하려면 네트워크 인터페이스 추가(Add network interface)를 선택합니다. 추가할 수 있는 네트워크 인터페이스의 수는 선택한 인스턴스 유형에서 지원하는 수에 따라 다릅니다. 추가 네트워크 인터페이스는 동일한 VPC의 다른 서브넷에 상주하거나 소유한 다른 VPC에 있는 서브넷(서브넷이 인스턴스와 동일한 가용 영역에 있는 경우)에 상주할 수 있습니다. 다른 VPC에서 서브넷을 선택하면 추가한 네트워크 인터페이스 옆에 다중 VPC 레이블이 나타납니다. 그러면 네트워킹 및 보안 구성이 서로 다른 여러 VPC 사이에 다중 홈 인스턴스를 만들 수 있습니다. 다른 VPC의 추가 ENI를 연결하는 경우 해당 VPC에서 ENI에 대한 보안 그룹을 선택해야 합니다.

    자세한 내용은 탄력적 네트워크 인터페이스 단원을 참조하십시오. 네트워크 인터페이스를 두 개 이상 지정하면 인스턴스가 퍼블릭 IPv4 주소를 수신할 수 없습니다. 또한 eth0에 대해 기존 네트워크 인터페이스를 지정하면 퍼블릭 IP 자동 할당을 사용하여 서브넷의 퍼블릭 IPv4 설정을 재정의할 수 없습니다. 자세한 내용은 인스턴스 시작 시 퍼블릭 IPv4 주소 할당 단원을 참조하십시오.

시작 템플릿에 대한 AMI를 지정하는 경우 AMI에는 루트 볼륨(볼륨 1(AMI 루트)을 포함한 하나 이상의 스토리지 볼륨이 포함됩니다. 인스턴스에 연결할 추가 볼륨을 지정할 수 있습니다.

간단(Simple) 또는 고급(Advanced) 보기를 사용할 수 있습니다. 간단(Simple) 보기를 통해 볼륨의 크기와 유형을 지정합니다. 모든 볼륨 파라미터를 지정하려면 고급(Advanced) 보기(카드 우측 상단)를 선택합니다.

새 볼륨을 추가하려면 새 볼륨 추가를 선택합니다.

고급(Advanced) 보기를 사용하여 다음과 같이 각 볼륨을 구성할 수 있습니다.

  • 스토리지 유형(Storage type): 인스턴스에 연결할 볼륨의 유형(EBS 또는 임시)입니다. 인스턴스 스토어(임시) 볼륨 유형은 이를 지원하는 인스턴스 유형을 선택한 경우에만 사용할 수 있습니다. 자세한 내용은 Amazon EC2 인스턴스 스토어Amazon EBS volumes를 참조하세요.

  • Device name(디바이스 이름): 볼륨에서 사용할 디바이스 이름을 목록에서 선택합니다.

  • Snapshot(스냅샷): 볼륨 생성에 사용할 스냅샷을 선택합니다. Snapshot(스냅샷) 필드에 텍스트를 입력하여 사용 가능한 공유 및 퍼블릭 스냅샷을 검색할 수 있습니다.

  • Size(GiB)(크기(GiB)): EBS 볼륨의 경우 스토리지 크기를 지정할 수 있습니다. 선택한 AMI와 인스턴스가 프리 티어에 해당되는 경우 프리 티어 한도를 유지하려면 총 스토리지 크기를 30GiB 미만으로 유지해야 합니다.

  • 볼륨 유형(Volume type): EBS 볼륨에 대한 볼륨 유형을 선택합니다. 자세한 내용은 Amazon EBS 사용 설명서Amazon EBS volume types를 참조하세요.

  • IOPS: 프로비저닝된 IOPS SSD(io1, io2) 및 범용 SSD(gp3) 볼륨 유형을 선택한 경우 해당 볼륨이 지원할 수 있는 초당 I/O 작업 수(IOPS)를 입력할 수 있습니다. io1, io2 및 gp3 볼륨에 필요합니다. gp2, st1, sc1 또는 표준 볼륨에서는 지원되지 않습니다. 시작 템플릿에 대해 이 파라미터를 생략하면 시작 템플릿에서 인스턴스를 시작할 때 값을 지정해야 합니다.

  • 종료 시 삭제(Delete on termination): Amazon EBS 볼륨에서 예(Yes)를 선택하여 인스턴스가 종료될 때 볼륨을 삭제하거나, 아니요(No)를 선택하여 볼륨을 유지합니다. 자세한 내용은 인스턴스가 종료될 때 데이터 보존 단원을 참조하십시오.

  • 암호화(Encrypted): 인스턴스 유형이 EBS 암호화를 지원하는 경우 예(Yes)를 선택하여 볼륨의 암호화를 활성화할 수 있습니다. 이 리전에서 기본적으로 암호화를 활성화한 경우, 사용자에 대해 암호화가 활성화됩니다. 자세한 내용은 Amazon EBS 사용 설명서Amazon EBS encryption을 참조하세요.

  • 키(Key): 암호화(Encrypted)에 대해 예(Yes)를 선택한 경우 볼륨을 암호화하는 데 사용할 고객 관리형 키를 선택해야 합니다. 이 리전에서 기본적으로 암호화를 사용하도록 설정한 경우 기본 고객 관리형 키가 자동으로 선택됩니다. 다른 키를 선택하거나 생성한 고객 관리형 키의 ARN을 지정할 수 있습니다.

인스턴스가 시작될 때 생성되는 리소스에 태깅하려면 리소스 태그(Resource tags)에서 태그 추가(Add tag)를 선택하고 태그 키와 값 페어를 입력합니다. 리소스 유형(Resource types)에서 생성 시 태깅할 리소스를 지정합니다. 모든 리소스에 대해 동일한 태그를 지정하거나 다른 리소스에 대해 다른 태그를 지정할 수 있습니다. 추가할 각 추가 태그에 대해 태그 추가(Add tag)를 다시 선택합니다.

시작 템플릿을 사용할 때 생성되는 다음 리소스에 대한 태그를 지정할 수 있습니다.

  • 인스턴스

  • 볼륨

  • 스팟 인스턴스 요청

  • 네트워크 인터페이스

참고

시작 템플릿 자체에 태깅하려면 템플릿 태그(Template tags)에서 태깅해야 합니다. 자세한 내용은 시작 템플릿 이름, 설명 및 태그 단원을 참조하십시오.

고급 세부 정보에서 필드를 볼 수 있도록 섹션을 확장하고 인스턴스를 위한 추가 파라미터를 지정합니다.

  • 구매 옵션(Purchasing option): 온디맨드 가격으로 제한된 스팟 가격에서 스팟 인스턴스를 요청하려면 스팟 인스턴스 요청(Request Spot Instances)을 선택하고 기본 스팟 인스턴스 설정을 변경하려면 사용자 지정(Customize)을 선택합니다. 최고 가격을 설정(권장되지 않음)하고 요청 유형, 요청 기간 및 중단 동작을 변경할 수 있습니다. 스팟 인스턴스를 요청하지 않으면 EC2는 기본적으로 온디맨드 인스턴스를 시작합니다. 자세한 내용은 Spot Instances 단원을 참조하십시오.

  • IAM 인스턴스 프로파일(IAM instance profile): 인스턴스와 연결할 AWS Identity and Access Management(IAM) 인스턴스 프로파일을 선택합니다. 자세한 내용은 Amazon EC2의 IAM 역할 단원을 참조하십시오.

  • 호스트 이름 유형(Hostname type): 인스턴스의 게스트 OS 호스트 이름에 리소스 이름 또는 IP 이름을 포함할지 선택합니다. 자세한 내용은 Amazon EC2 인스턴스 호스트 이름 유형 단원을 참조하십시오.

  • DNS 호스트 이름(DNS Hostname): 리소스 이름 또는 IP 이름(호스트 이름 유형(Hostname type)에 대해 선택한 것에 따라)에 대한 DNS 쿼리가 IPv4 주소(A 레코드), IPv6 주소(AAAA 레코드) 또는 둘 다로 응답할지 결정합니다. 자세한 내용은 Amazon EC2 인스턴스 호스트 이름 유형 단원을 참조하십시오.

  • 종료 동작: 인스턴스 종료 시 적용할 인스턴스 상태(중지 또는 종료)를 선택합니다. 자세한 내용은 인스턴스가 시작하는 종료 동작 변경 단원을 참조하십시오.

  • 중지 - 최대 절전 모드 동작(Stop - Hibernate behavior): 최대 절전 모드를 사용하려면 활성화(Enable)를 선택합니다. 이 필드는 최대 절전 모드 사전 조건을 충족하는 인스턴스에만 유효합니다. 자세한 내용은 Amazon EC2 인스턴스를 최대 절전 모드로 전환 단원을 참조하십시오.

  • 종료 방지(Termination protection): 실수로 인스턴스를 종료하는 일을 방지하려면 활성화(Enable)를 선택합니다. 자세한 내용은 종료 방지 기능 활성화 단원을 참조하십시오.

  • 중지 방지(Stop protection): 우발적 중지를 방지하려면 활성화(Enable)를 선택합니다. 자세한 내용은 중지 방지 사용 설정 단원을 참조하십시오.

  • 세부 CloudWatch 모니터링(Detailed CloudWatch monitoring): Amazon CloudWatch를 사용하여 인스턴스에 대한 세부 모니터링을 사용 설정하려면 사용 설정(Enable)을 선택합니다. 추가 요금이 발생합니다. 자세한 내용은 CloudWatch를 사용하여 인스턴스 모니터링 단원을 참조하십시오.

  • Elastic Inference: EC2 CPU 인스턴스에 연결할 탄력적 추론 액셀러레이터입니다. 자세한 내용은 Amazon Elastic Inference 개발자 안내서Amazon Elastic Inference 작업을 참조하세요.

    참고

    2023년 4월 15일부터는 AWS에서 신규 고객을 Amazon Elastic Inference(EI)에 온보딩하지 않으며 기존 고객이 더 나은 가격 및 성능을 제공하는 옵션으로 워크로드를 마이그레이션하도록 지원할 예정입니다. 2023년 4월 15일 이후 신규 고객은 Amazon SageMaker, Amazon ECS 또는 Amazon EC2에서 Amazon EI 액셀러레이터를 사용하여 인스턴스를 시작할 수 없습니다. 그러나 지난 30일 기간 동안 Amazon EI를 한 번 이상 사용한 고객은 현재 고객으로 간주되며 서비스를 계속 사용할 수 있습니다.

  • 크레딧 사양(Credit specification): 애플리케이션이 필요한 만큼 기준 이상으로 버스트하도록 하려면 무제한(Unlimited)을 선택합니다. 이 필드는 T 인스턴스에만 유효합니다. 추가 요금이 적용될 수 있습니다. 자세한 내용은 성능 순간 확장 가능 인스턴스 섹션을 참조하세요.

  • 배치 그룹 이름: 인스턴스를 시작할 배치 그룹을 지정합니다. 기존의 배치 그룹을 선택하거나 새로 생성할 수 있습니다. 하나의 배치 그룹에서 모든 인스턴스 유형을 시작할 수 있는 것은 아닙니다. 자세한 내용은 배치 그룹 단원을 참조하십시오.

  • EBS 최적화 인스턴스: Amazon EBS I/O를 위한 전용 용량을 추가로 제공하려면 사용 설정(Enable)을 선택합니다. 모든 인스턴스 유형이 이 기능을 지원하지는 않습니다. 추가 요금이 발생합니다. 자세한 내용은 Amazon EBS 최적화 인스턴스 단원을 참조하십시오.

  • 용량 예약(Capacity Reservation): 인스턴스를 모든 열린 용량 예약(공개(Open)), 특정 용량 예약(ID별 목표(Target by ID)) 또는 용량 예약 그룹(그룹별 목표(Target by group))으로 시작할지 여부를 지정합니다. 용량 예약을 사용하지 않도록 지정하려면 없음(None)을 선택합니다. 자세한 내용은 인스턴스를 기존 용량 예약으로 시작 단원을 참조하십시오.

  • 테넌시: 인스턴스를 공유 하드웨어(공유), 격리된 전용 하드웨어(전용) 또는 전용 호스트(전용 호스트)에서 실행할지 선택합니다. 전용 호스트에서 인스턴스를 시작하도록 선택하면 인스턴스를 호스트 리소스 그룹에서 시작할지 여부를 지정하거나 특정 전용 호스트를 대상으로 지정할 수 있습니다. 추가 요금이 적용될 수 있습니다. 자세한 내용은 전용 인스턴스전용 호스트 섹션을 참조하세요.

  • RAM 디스크 ID(RAM disk ID): (반가상화(PV) AMI에만 유효) 인스턴스의 RAM 디스크를 선택합니다. 커널을 선택한 경우 지원하는 드라이버가 있는 특정 RAM 디스크를 선택해야 할 수도 있습니다.

  • 커널 ID(Kernel ID): (반가상화(PV) AMI에만 유효) 인스턴스의 커널을 선택합니다.

  • [Nitro Enclave]: Amazon EC2 인스턴스에서 enclaves라는 격리된 실행 환경을 생성할 수 있습니다. AWS Nitro Enclaves에 대해 인스턴스를 활성화하려면 활성화(Enable)를 선택합니다. 자세한 내용은 AWS Nitro Enclaves 사용 설명서AWS Nitro Enclaves란 무엇입니까?를 참조하세요.

  • 라이선스 구성: 지정된 라이선스 구성에 대해 인스턴스를 시작하여 라이선스 사용을 추적할 수 있습니다. 자세한 내용은 AWS License Manager 사용 설명서에서 라이선스 구성 생성을 참조하세요.

  • CPU 옵션 지정(Specify CPU options): CPU 옵션 지정(Specify CPU options)을 선택하여 시작하는 동안 vCPU의 수를 사용자 지정할 수 있습니다. CPU 코어 수와 코어당 스레드 수를 설정합니다. 자세한 내용은 CPU 옵션 최적화 단원을 참조하십시오.

  • 메타데이터 전송: 인스턴스의 IP 주소 유형(IPv4, IPv6 또는 IPv4 및 IPv6)에 따라 이 EC2 인스턴스에 사용할 수 있는 인스턴스 메타데이터 서비스(IMDS)에 대한 액세스 방법을 사용하거나 비활성화할 수 있습니다. 자세한 내용은 인스턴스 메타데이터 검색 단원을 참조하십시오.

  • 액세스 가능한 메타데이터: IMDS에 대한 액세스를 활성화하거나 비활성화할 수 있습니다. 자세한 내용은 새 인스턴스에 대한 인스턴스 메타데이터 옵션 구성 단원을 참조하십시오.

  • 메타데이터 버전: IMDS에 대한 액세스를 활성화하면 인스턴스 메타데이터를 요청할 때 인스턴스 메타데이터 서비스 버전 2를 사용하도록 요구할 수 있습니다. 자세한 내용은 새 인스턴스에 대한 인스턴스 메타데이터 옵션 구성 단원을 참조하십시오.

  • 메타데이터 응답 홉 제한: IMDS를 활성화하면 메타데이터 토큰에 허용되는 네트워크 홉 수를 설정할 수 있습니다. 자세한 내용은 새 인스턴스에 대한 인스턴스 메타데이터 옵션 구성 단원을 참조하십시오.

  • 메타데이터에 태그 허용(Allow tags in metadata): 사용 설정(Enable)을 선택하면 인스턴스가 메타데이터에서 모든 태그에 대한 액세스를 허용합니다. 템플릿에 이 설정을 포함하지 않으면 기본적으로 인스턴스 메타데이터의 태그에 대한 액세스가 허용되지 않습니다. 자세한 내용은 인스턴스 메타데이터의 태그에 대한 액세스 허용 단원을 참조하십시오.

  • 사용자 데이터: 시작 과정에서 인스턴스를 구성하거나 구성 스크립트를 실행할 때 사용할 사용자 데이터를 지정할 수 있습니다. 자세한 내용은 시작 시 Linux 인스턴스에서 명령 실행 단원을 참조하십시오.

다음 예제에서는 create-launch-template 명령을 사용하여 지정된 이름 및 인스턴스 구성으로 시작 템플릿을 생성합니다.

aws ec2 create-launch-template \ --launch-template-name TemplateForWebServer \ --version-description WebVersion1 \ --tag-specifications 'ResourceType=launch-template,Tags=[{Key=purpose,Value=production}]' \ --launch-template-data file://template-data.json

다음은 인스턴스 구성에 대한 시작 템플릿 데이터를 포함하는 JSON 파일 예제입니다. 예제 명령에 표시된 대로 JSON을 파일에 저장하고 --launch-template-data 파라미터에 포함합니다.

{ "NetworkInterfaces": [{ "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Ipv6AddressCount": 1, "SubnetId": "subnet-7b16de0c" }], "ImageId": "ami-8c1be5f6", "InstanceType": "r4.4xlarge", "TagSpecifications": [{ "ResourceType": "instance", "Tags": [{ "Key":"Name", "Value":"webserver" }] }], "CpuOptions": { "CoreCount":4, "ThreadsPerCore":2 } }

출력의 예제는 다음과 같습니다.

{ "LaunchTemplate": { "LatestVersionNumber": 1, "LaunchTemplateId": "lt-01238c059e3466abc", "LaunchTemplateName": "TemplateForWebServer", "DefaultVersionNumber": 1, "CreatedBy": "arn:aws:iam::123456789012:root", "CreateTime": "2017-11-27T09:13:24.000Z" } }

다음 예제에서는 New-EC2LaunchTemplate cmdlet을 사용하여 지정된 이름 및 인스턴스 구성으로 시작 템플릿을 생성합니다.

$launchTemplateData = [Amazon.EC2.Model.RequestLaunchTemplateData]@{ ImageId = 'ami-8c1be5f6' InstanceType = 'r4.4xlarge' NetworkInterfaces = @( [Amazon.EC2.Model.LaunchTemplateInstanceNetworkInterfaceSpecificationRequest]@{ AssociatePublicIpAddress = $true DeviceIndex = 0 Ipv6AddressCount = 1 SubnetId = 'subnet-7b16de0c' } ) TagSpecifications = @( [Amazon.EC2.Model.LaunchTemplateTagSpecificationRequest]@{ ResourceType = 'instance' Tags = [Amazon.EC2.Model.Tag]@{ Key = 'Name' Value = 'webserver' } } ) CpuOptions = [Amazon.EC2.Model.LaunchTemplateCpuOptionsRequest]@{ CoreCount = 4 ThreadsPerCore = 2 } } $tagSpecificationData = [Amazon.EC2.Model.TagSpecification]@{ ResourceType = 'launch-template' Tags = [Amazon.EC2.Model.Tag]@{ Key = 'purpose' Value = 'production' } } New-EC2LaunchTemplate -LaunchTemplateName 'TemplateForWebServer' -VersionDescription 'WebVersion1' -LaunchTemplateData $launchTemplateData -TagSpecification $tagSpecificationData

출력의 예제는 다음과 같습니다.

CreatedBy : arn:aws:iam::123456789012:root CreateTime : 9/19/2023 16:57:55 DefaultVersionNumber : 1 LatestVersionNumber : 1 LaunchTemplateId : lt-01238c059eEXAMPLE LaunchTemplateName : TemplateForWebServer Tags : {purpose}

기존 시작 템플릿에서 시작 템플릿 생성

기존 시작 템플릿을 복제하고 파라미터를 조정하여 새 시작 템플릿을 생성할 수 있습니다. 그러나 Amazon EC2 콘솔을 사용하는 경우에만 이렇게 할 수 있습니다. AWS CLI에서는 템플릿 복제가 지원되지 않습니다.

Console
기존 시작 템플릿에서 시작 템플릿을 생성하려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 시작 템플릿을 선택한 다음 시작 템플릿 생성을 선택합니다.

  3. Launch template name에 대해 시작 템플릿의 설명이 포함된 이름을 입력하세요.

  4. [템플릿 버전 설명(Template version description)]에 시작 템플릿의 이 버전에 대한 간단한 설명을 입력합니다.

  5. 생성 시 시작 템플릿에 태그를 지정하려면 템플릿 태그를 확장하고 태그 추가를 선택한 다음 태그 키 및 값 페어를 입력합니다.

  6. 소스 템플릿을 확장하고 시작 템플릿 이름에 대해 새 시작 템플릿의 기준으로 사용할 시작 템플릿을 선택합니다.

  7. 소스 템플릿 버전에서 새로운 시작 템플릿의 토대가 되는 시작 템플릿 버전을 선택합니다.

  8. 필요에 따라 시작 파라미터를 조정하고 시작 템플릿 생성을 선택합니다.

인스턴스에서 시작 템플릿 생성

Console
인스턴스에서 시작 템플릿을 생성하려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 Instances(인스턴스)를 선택합니다.

  3. 인스턴스를 선택하고 작업, 인스턴스에서 템플릿 만들기를 선택합니다.

  4. 이름, 설명 및 태그를 입력하고 필요에 따라 시작 파라미터를 조정합니다.

    참고

    인스턴스에서 시작 템플릿을 생성할 때 인스턴스의 네트워크 인터페이스 ID 및 IP 주소는 이 템플릿에 포함되지 않습니다.

  5. 시작 템플릿 생성을 선택합니다.

AWS CLI

AWS CLI를 사용하면 먼저 인스턴스에서 시작 템플릿 데이터를 가져온 다음 시작 템플릿 데이터를 사용해 시작 템플릿을 생성하여 기존 인스턴스에서 시작 템플릿을 생성할 수 있습니다.

인스턴스에서 시작 템플릿 데이터를 가져오려면
  • get-launch-template-data 명령을 사용하여 인스턴스 ID를 지정합니다. 출력을 새로운 시작 템플릿이나 시작 템플릿 버전을 생성하기 위한 기본 템플릿으로 사용할 수 있습니다. 기본적으로 출력에는 시작 템플릿 데이터에서 지정할 수 없는 최상위 LaunchTemplateData 객체가 포함되어 있습니다. 이 객체를 제외하려면 --query 옵션을 사용합니다.

    aws ec2 get-launch-template-data \ --instance-id i-0123d646e8048babc \ --query "LaunchTemplateData"

    다음은 예시 출력입니다.

    { "Monitoring": {}, "ImageId": "ami-8c1be5f6", "BlockDeviceMappings": [ { "DeviceName": "/dev/xvda", "Ebs": { "DeleteOnTermination": true } } ], "EbsOptimized": false, "Placement": { "Tenancy": "default", "GroupName": "", "AvailabilityZone": "us-east-1a" }, "InstanceType": "t2.micro", "NetworkInterfaces": [ { "Description": "", "NetworkInterfaceId": "eni-35306abc", "PrivateIpAddresses": [ { "Primary": true, "PrivateIpAddress": "10.0.0.72" } ], "SubnetId": "subnet-7b16de0c", "Groups": [ "sg-7c227019" ], "Ipv6Addresses": [ { "Ipv6Address": "2001:db8:1234:1a00::123" } ], "PrivateIpAddress": "10.0.0.72" } ] }

    예를 들면 파일에 직접 출력을 기록할 수 있습니다.

    aws ec2 get-launch-template-data \ --instance-id i-0123d646e8048babc \ --query "LaunchTemplateData" >> instance-data.json
시작 템플릿 데이터를 사용하여 시작 템플릿을 생성하려면

AMI ID 대신 Systems Manager 파라미터 사용

시작 템플릿에 AMI ID를 지정하는 대신 AWS Systems Manager 파라미터를 지정할 수 있습니다. AMI ID가 변경되면 Systems Manager Parameter Store에서 Systems Manager 파라미터를 업데이트하여 한 곳에서 AMI ID를 업데이트할 수 있습니다. 다른 AWS 계정과 파라미터를 공유할 수도 있습니다. 하나의 계정에 AMI 파라미터를 중앙에서 저장 및 관리하고 이를 참조해야 하는 다른 모든 계정과 공유할 수 있습니다. Systems Manager 파라미터를 사용하면 한 번의 작업으로 모든 시작 템플릿을 업데이트할 수 있습니다.

Systems Manager 파라미터는 Systems Manager Parameter Store에서 생성하는 사용자 정의 키-값 페어입니다. Parameter Store는 애플리케이션 구성 값을 저장할 수 있는 중앙 위치를 제공합니다. 자세한 내용을 알아보려면 AWS Systems Manager 사용 설명서AWS Systems Manager Parameter Store를 참조하세요.

다음 다이어그램에서 golden-ami 파라미터는 먼저 Parameter Store의 원래 AMI ami-aabbccddeeffgghhi에 매핑됩니다. 시작 템플릿에서 AMI ID의 값은 golden-ami입니다. 이 시작 템플릿을 사용하여 인스턴스가 시작되면 AMI ID가 ami-aabbccddeeffgghhi로 확인됩니다. 나중에 AMI가 업데이트되어 새 AMI ID가 생성됩니다. Parameter Store에서 golden-ami 파라미터는 새 ami-00112233445566778에 매핑됩니다. 시작 템플릿은 변경되지 않은 상태로 유지됩니다. 이 시작 템플릿을 사용하여 인스턴스가 시작되면 AMI ID가 새 ami-00112233445566778로 확인됩니다.


                    Parameter Store의 Systems Manager 파라미터를 사용하여 시작 템플릿 업데이트

AMI ID에 대한 Systems Manager 파라미터 형식

시작 템플릿을 사용하려면 AMI ID 대신 사용 시 사용자 정의 Systems Manager 파라미터가 다음 형식을 준수해야 합니다.

  • 파라미터 유형: String

  • 파라미터 데이터 유형: aws:ec2:image - 입력한 값이 AMI ID에 올바른 형식인지 Parameter Store에서 검증하도록 합니다.

AMI ID에 유효한 파라미터를 생성하는 방법에 대한 자세한 내용은 AWS Systems Manager 사용 설명서의 Systems Manager 파라미터 생성을 참조하세요.

시작 템플릿의 Systems Manager 파라미터 형식

시작 템플릿에서 AMI ID 대신 Systems Manager 파라미터를 사용하려면 시작 템플릿에 파라미터를 지정할 때 다음 형식 중 하나를 사용해야 합니다.

공용 파라미터 참조:

  • resolve:ssm:public-parameter

동일한 계정에 저장된 파라미터 참조:

  • resolve:ssm:parameter-name

  • resolve:ssm:parameter-name:version-number - 버전 번호 자체가 기본 레이블입니다.

  • resolve:ssm:parameter-name:label

다른 AWS 계정에서 공유된 파라미터 참조:

  • resolve:ssm:parameter-ARN

  • resolve:ssm:parameter-ARN:version-number

  • resolve:ssm:parameter-ARN:label

파라미터 버전

Systems Manager 파라미터는 버전이 지정된 리소스입니다. 파라미터를 업데이트하면 파라미터의 새 버전이 연속적으로 생성됩니다. Systems Manager는 특정 버전의 파라미터에 매핑할 수 있는 파라미터 레이블을 지원합니다.

예를 들어, golden-ami 파라미터에는 1, 2, 3의 세 가지 버전이 있을 수 있습니다. 버전 2에 매핑되는 파라미터 레이블 beta와 버전 3에 매핑되는 파라미터 레이블 prod를 생성할 수 있습니다.

다음 형식 중 하나를 사용하여 시작 템플릿에 golden-ami 파라미터의 버전 3을 지정할 수 있습니다.

  • resolve:ssm:golden-ami:3

  • resolve:ssm:golden-ami:prod

버전 또는 레이블 지정은 선택 사항입니다. 버전 또는 레이블이 지정되지 않은 경우 파라미터의 최신 버전이 사용됩니다.

시작 템플릿에 Systems Manager 파라미터 지정

시작 템플릿 또는 새 버전의 시작 템플릿을 생성할 때 시작 템플릿에 AMI ID 대신 Systems Manager 파라미터를 지정할 수 있습니다.

Console
시작 템플릿에 Systems Manager 파라미터 지정
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 시작 템플릿을 선택한 다음 시작 템플릿 생성을 선택합니다.

  3. Launch template name에 대해 시작 템플릿의 설명이 포함된 이름을 입력하십시오.

  4. Application and OS Images (Amazon Machine Image)(애플리케이션 및 OS 이미지(Amazon Machine Image))에서 Browse more AMIs(더 많은 AMI 찾아보기)를 선택하세요.

  5. 검색 창 오른쪽에 있는 화살표 버튼을 선택한 다음 사용자 지정 값/Systems Manager 파라미터 지정을 선택하세요.

  6. 사용자 지정 값 또는 Systems Manager 파라미터 지정 대화 상자에서 다음을 수행합니다.

    1. AMI ID 또는 Systems Manager 파라미터 문자열에 다음 형식 중 하나를 사용하여 Systems Manager 파라미터 이름을 입력합니다.

      공용 파라미터 참조:

      • resolve:ssm:public-parameter

      동일한 계정에 저장된 파라미터 참조:

      • resolve:ssm:parameter-name

      • resolve:ssm:parameter-name:version-number

      • resolve:ssm:parameter-name:label

      다른 AWS 계정에서 공유된 파라미터 참조:

      • resolve:ssm:parameter-ARN

      • resolve:ssm:parameter-ARN:version-number

      • resolve:ssm:parameter-ARN:label

    2. Save(저장)를 선택합니다.

  7. 필요에 따라 다른 시작 템플릿 파라미터를 지정하고 시작 템플릿 생성을 선택합니다.

자세한 내용은 파라미터에서 시작 템플릿 생성 단원을 참조하십시오.

AWS CLI
시작 템플릿에 Systems Manager 파라미터 지정
  • create-launch-template 명령을 사용하여 시작 템플릿을 생성합니다. 사용할 AMI를 지정하려면 다음 형식 중 하나를 사용하여 Systems Manager 파라미터 이름을 입력합니다.

    공용 파라미터 참조:

    • resolve:ssm:public-parameter

    동일한 계정에 저장된 파라미터 참조:

    • resolve:ssm:parameter-name

    • resolve:ssm:parameter-name:version-number

    • resolve:ssm:parameter-name:label

    다른 AWS 계정에서 공유된 파라미터 참조:

    • resolve:ssm:parameter-ARN

    • resolve:ssm:parameter-ARN:version-number

    • resolve:ssm:parameter-ARN:label

    아래 예제에서는 다음을 지정하는 시작 템플릿을 생성합니다.

    • 시작 템플릿의 이름(TemplateForWebServer)

    • 시작 템플릿에 대한 태그(purpose=production)

    • JSON 파일에 지정된 인스턴스 구성에 대한 데이터:

      • 사용할 AMI(resolve:ssm:golden-ami)

      • 시작할 인스턴스 유형(m5.4xlarge)

      • 인스턴스에 대한 태그(Name=webserver)

    aws ec2 create-launch-template \ --launch-template-name TemplateForWebServer \ --tag-specifications 'ResourceType=launch-template,Tags=[{Key=purpose,Value=production}]' \ --launch-template-data file://template-data.json

    다음은 인스턴스 구성에 대한 시작 템플릿 데이터를 포함하는 JSON 파일의 예입니다. ImageId의 값은 필수 형식 resolve:ssm:golden-ami로 입력된 Systems Manager 파라미터 이름입니다.

    {"LaunchTemplateData": { "ImageId": "resolve:ssm:golden-ami", "InstanceType": "m5.4xlarge", "TagSpecifications": [{ "ResourceType": "instance", "Tags": [{ "Key":"Name", "Value":"webserver" }] }] } }

시작 템플릿에 올바른 AMI ID가 있는지 확인

Systems Manager 파라미터를 실제 AMI ID로 확인하는 방법

describe-launch-template-versions 명령을 사용하고 --resolve-alias 파라미터를 포함합니다.

aws ec2 describe-launch-template-versions \ --launch-template-name my-launch-template \ --versions $Default \ --resolve-alias

응답에는 ImageId에 대한 AMI ID가 포함됩니다. 이 예제에서 이 시작 템플릿을 사용하여 인스턴스가 시작되면 AMI ID가 ami-0ac394d6a3example로 확인됩니다.

{ "LaunchTemplateVersions": [ { "LaunchTemplateId": "lt-089c023a30example", "LaunchTemplateName": "my-launch-template", "VersionNumber": 1, "CreateTime": "2022-12-28T19:52:27.000Z", "CreatedBy": "arn:aws:iam::123456789012:user/Bob", "DefaultVersion": true, "LaunchTemplateData": { "ImageId": "ami-0ac394d6a3example", "InstanceType": "t3.micro", } } ] }

Systems Manager 파라미터 작업에 대한 자세한 내용은 Systems Manager 설명서의 다음 참조 자료에서 확인할 수 있습니다.

제한 사항

  • 현재 EC2 플릿 및 스팟 플릿은 AMI ID 대신 Systems Manager 파라미터가 지정된 시작 템플릿을 지원하지 않습니다. EC2 플릿 및 스팟 플릿의 경우 시작 템플릿에서 AMI를 지정하려면 AMI ID를 지정해야 합니다.

  • Amazon EC2 Auto Scaling에는 다른 제한 사항이 있습니다. 자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Use AWS Systems Manager parameters instead of AMI IDs in launch templates를 참조하세요.