내용으로 건너뛰기

다양한 패밀리와 하이퍼바이저에서 EC2 인스턴스 유형을 변경하려면 어떻게 해야 합니까?

4분 분량
0

Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스 유형을 다른 패밀리 및 하이퍼바이저 유형으로 변경하고 싶습니다.

해결 방법

인스턴스 호환성 및 요구 사항 확인

현재 인스턴스 유형과 전환하려는 인스턴스 유형의 사양을 비교합니다. 각 인스턴스 유형에 대해 다음 요소를 검토하십시오.

  • CPU 아키텍처(예: Intel, AMD 또는 ARM 기반)
  • 가상화 유형(예: Nitro 또는 Xen)
  • 네트워크 성능 기능
  • 스토리지 최적화(예: Amazon Elastic Block Store(Amazon EBS) 최적화 EBS 볼륨 또는 인스턴스 저장소)
  • 가속기 지원(예: GPU 또는 FPGA)

동일한 패밀리에 속하거나 동일한 하이퍼바이저를 사용하는 인스턴스는 호환될 가능성이 높습니다. 그러나 하드웨어 사양이나 기능의 변형은 호환성에 영향을 미칠 수 있습니다. 자세한 내용은 인스턴스 유형 변경을 위한 호환성을 참조하십시오.

예를 들어 m4.large(Xen) 인스턴스에서 m5.large(Nitro) 인스턴스로 마이그레이션하는 경우, AMI와 커널이 향상된 Nitro 네트워킹 Elastic Network Adapter(ENA)를 지원하는지 확인하십시오. m5 및 c5와 같은 최신 인스턴스 유형만 Nitro를 사용합니다. m3 및 c3과 같은 이전 인스턴스 유형은 Xen 가상화를 사용합니다.

AMI 백업 생성

기존 EC2 인스턴스의 백업 Amazon Machine Image(AMI)를 생성합니다. 인스턴스 유형 변경 중 또는 이후에 호환성 문제가 발생하는 경우 AMI를 사용하여 이전 인스턴스로 롤백할 수 있습니다.

테스트 인스턴스 업데이트

AMI를 사용해 새 인스턴스 유형의 테스트 인스턴스를 시작하여 호환성을 확인하고 프로덕션 환경을 업데이트하기 전에 문제를 식별합니다.

테스트 인스턴스에서 애플리케이션, 서비스 및 워크로드를 철저히 테스트하여 새 인스턴스 유형에서 예상대로 작동하는지 확인합니다. 리소스 사용량을 모니터링하고 인스턴스, 네트워킹, 스토리지 및 애플리케이션 성능을 모니터링합니다.

잠재적 문제를 파악하려면 dmesg 또는 /var/log/syslog에서 누락된 드라이버 오류가 있는지 확인하십시오. 인스턴스에 액세스한 후 다음 명령을 실행하여 네트워킹과 같은 주요 인스턴스 기능을 검증합니다.

# ping google.com
# curl -I http://example.com

스토리지에 문제가 있는지 확인하려면 다음 작업을 수행하십시오.

  • 인스턴스에서 디스크를 감지할 수 있는지 확인하려면 다음 명령을 실행합니다.

    # lsblk
  • NVMe 오류를 확인하려면 다음 명령을 실행합니다.

    # dmesg | grep -i nvme  

인스턴스 성능을 테스트하려면 다음 작업을 수행하십시오.

  • CPU 로드를 시뮬레이션하려면 다음 명령을 실행합니다.

    # stress --cpu 4 --timeout 60s
  • 사용 가능한 메모리를 확인하려면 다음 명령을 실행합니다.

    # free -h  

예를 들어 c5.large(Nitro) 인스턴스 유형에서 c6i.large(Nitro, 최신 Intel Ice Lake) 인스턴스 유형으로 이동하면 변경이 성공합니다. 그러나 m4.xlarge(Xen) 인스턴스 유형에서 m6i.xlarge(Nitro) 인스턴스 유형으로 이동하는 경우 문제가 발생할 수 있습니다. 문제를 해결하려면 ENA 드라이버를 업데이트하십시오. 자세한 내용은 인스턴스에서 향상된 네트워킹 활성화를 참조하십시오.

프로덕션 인스턴스 업데이트

프로덕션 인스턴스를 업데이트하려면 다음 방법 중 하나를 사용하십시오.

유지 관리 기간이 있는 중요하지 않은 워크로드의 경우 Amazon EC2 콘솔에서 인스턴스 유형을 변경하십시오.

중요: 인스턴스 유형을 변경하기 전에 중지 및 시작이 인스턴스에 미치는 영향을 검토하십시오.

중단을 최소화해야 하는 프로덕션 워크로드의 경우 다음 단계를 완료하여 대체 인스턴스를 시작하십시오.

  1. 업데이트된 인스턴스 유형으로 새 인스턴스를 시작합니다.
  2. 이전 인스턴스의 EBS 볼륨을 연결합니다. 또는 EBS 스냅샷에서 새 인스턴스를 복원합니다.
  3. 새 인스턴스를 가리키도록 DNS, 로드 밸런서Amazon Route 53 레코드를 업데이트합니다.


확장 가능한 상태 비저장 애플리케이션의 경우 다음 단계를 완료하여 Amazon EC2 Auto Scaling 그룹을 새로 고치십시오.

  1. 새 인스턴스 유형으로 Auto Scaling 그룹 시작 템플릿을 업데이트합니다.
  2. 인스턴스 새로 고침을 시작하여 이전 인스턴스를 점진적으로 대체합니다.

프로덕션 인스턴스의 문제 모니터링

드라이버 및 커널 모듈을 검토하려면 다음 명령을 실행합니다.

# modinfo ena

NVMe 스토리지를 확인하려면 다음 명령을 실행합니다.

# nvme list

참고: nvme 명령을 실행하려면 nvme-cli 패키지를 설치해야 합니다. nvme-cli를 설치하려면 배포판에 따라 다음 명령을 실행합니다.

Debian 및 Ubuntu:

sudo apt-get install nvme-cli

Red Hat Enterprise Linux(RHEL) 및 CentOS:

sudo yum install nvme-cli

Fedora:

sudo dnf install nvme-cli

Arch Linux:

sudo pacman -S nvme-cli

인스턴스의 성능과 안정성을 모니터링하려면 Amazon CloudWatchCPUUtilization, NetworkInNetworkOut 지표를 확인하십시오. 지표를 사용하여 CPU 사용량과 네트워크 대역폭을 모니터링할 수 있습니다.

문제가 발생하면 백업 AMI를 사용하여 이전 인스턴스 상태로 롤백하십시오.

관련 정보

Amazon EC2 인스턴스 유형 변경

Amazon EBS 지원 AMI 생성

AWS 공식업데이트됨 5달 전