부팅 시 새 EC2 Linux 스팟 인스턴스에 영구 보조 EBS 볼륨을 자동으로 연결하려면 어떻게 해야 하나요?

2분 분량
0

사용자 데이터 스크립트를 사용하여 부팅 시 새로운 Amazon Elastic Compute Cloud(Amazon EC2) Linux 스팟 인스턴스에 영구 보조 Amazon Elastic Block Store(Amazon EBS) 볼륨을 자동으로 시작하고 싶습니다. 어떻게 해야 하나요?

간략한 설명

부팅 시 영구 보조 EBS 볼륨을 새 EC2 Linux 스팟 인스턴스에 자동으로 연결하려면 EC2 시작 템플릿에 사용자 데이터 스크립트를 추가합니다. 스팟 인스턴스 요청을 구성할 때 템플릿을 사용합니다.

사전 조건

Amazon EC2에 대해 최소한 볼륨 연결 액세스 권한이 부여된 AWS Identity and Access Management(IAM) 역할을 생성하거나 사용합니다. 이 역할은 시작 템플릿에 연결됩니다.

해결 방법

1단계: IAM 역할 및 사용자 데이터 스크립트로 시작 템플릿 구성

1.    Amazon EC2 콘솔을 엽니다.

2.    **시작 템플릿(Launch Templates)**을 선택한 다음 **시작 템플릿 만들기(Create launch template)**를 선택합니다.

3.    인스턴스 AMI, 유형, 크기를 선택합니다. 아니면 기존 AMI를 선택합니다.

4.    키 페어를 템플릿에 연결합니다.

5.    EBS 볼륨과 동일한 가용 영역에 있는 서브넷을 선택합니다.

6.    **고급 세부 정보(Advanced Details)**를 확장합니다.

7.    다음 예와 같이 최소한 볼륨 연결 액세스가 부여된 IAM 역할을 추가합니다.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:AttachVolume",
                "ec2:DetachVolume"
            ],
            "Resource": [
                "arn:aws:ec2:*:*:instance/*",
                "arn:aws:ec2:*:*:volume/vol-xxxxxxxxxxxx"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "ec2:DescribeVolumes",
            "Resource": "arn:aws:ec2:*:*:volume/vol-xxxxxxxxxxxx"
        }
    ]

8.    템플릿에 사용자 데이터 스크립트를 추가합니다. 다음은 예제 사용자 데이터 스크립트입니다. 리전(region)volume-id를 환경에 맞게 바꿉니다.

#!/bin/bash
      OUTPUT=$(curl http://169.254.169.254/latest/meta-data/instance-id)
      aws ec2 attach-volume --volume-id vol-xxxxxxxxxxxx --device /dev/xvdf --instance-id $OUTPUT --region ap-southeast-1

2단계: 1단계에서 생성한 시작 템플릿을 사용하여 스팟 요청 구성

1.    **스팟 인스턴스(Spot Instance)**를 선택한 다음 **스팟 인스턴스 요청(Request Spot Instance)**을 선택합니다.

2.    **시작 템플릿(Launch Templates)**을 선택한 다음 1단계에서 만든 시작 템플릿을 선택합니다. 템플릿에 구성된 모든 정보가 자동으로 채워집니다.

3.    EBS 볼륨과 동일한 가용 영역을 선택합니다.

4.    **스팟 요청 생성(Create Spot Request)**을 선택합니다.

스팟 요청이 완료되면 부팅 시 영구 보조 EBS 볼륨이 새 스팟 인스턴스에 자동으로 연결됩니다.


AWS 공식
AWS 공식업데이트됨 3년 전