하 안녕하세요 ~~! BTC_현상수배범입니다.
이번 시간에는 5세대(m5, c5, r5) large 사이즈로 인스턴스를 마이그레이션 시에 발생하는 트러블 슈팅 및 실습 day를 진행 해보도록 하겠습니다.
요구사항
- AMI: bongkeun-test-pre-gen-ami(2016년 3월에 출시한 리눅스 배포판) →t2.micro 로 복원해서 정상적으로 올라오는지 확인
- 정상적으로 올라오면, 5세대(m5, c5, r5) large 사이즈로 마이그레이션
작업 이력 및 트러블 슈팅
- AMI로 인스턴스 시작, EIP 할당
- 인스턴스 상태 → 중지 → 인스턴스 유형 변경(c5 or m5 or r5.large ) →인스턴스 상태 → 시작
- 콘솔 에러 확인
- Enhanced networking with the Elastic Network Adapter (ENA) is required for the 'c5.large' instance type. Ensure that your instance 'i-029f811366374cf98' is enabled for ENA. - > 인스턴스 계속 중지되어 있는 상태
- ENA 지원 활성화
- aws ec2 modify-instance-attribute --instance-id i-05f063ee28571d32f --ena-support
- 상태검사 통과 X → 시스템 로그 확인
Checking filesystems
**/dev/xvda1: nonexistent device** ("nofail" fstab option may be used to skip this device)
Checking all file systems.
6. t2.micro로 원복
7.Nitro 기반 인스턴스 모듈 및 파일 시스템 탑재 요구 사항을 미충족 →NitroInstanceChecks 스크립트 실행
인스턴스에 스크립트(nitro_check_script.sh)를 다운로드하고 실행 가능하도록 권한을 변경
- chmod +x nitro_check_script.sh
루트 사용자 또는 sudo로 스크립트를 실행
- sudo ./nitro_check_script.sh
→프롬프트에서 y 입력. /etc/fstab 파일 재생성하고 수정하여 각 파티션의 디바이스 이름을 UUID로 대체. 원본 fstab 파일은 /etc/fstab.backup.$(date +%F-%H:%M:%S)로 저장
8. 인스턴스 상태 → 중지 → 인스턴스 유형 변경(c5 or m5 or r5.large ) →인스턴스 상태 → 시작
9. modinfo ena : ena모듈이 설치되었는지 확인
10. lsblk,df -h : NVMe EBS(Nitro 기반 인스턴스에서 연결된 볼륨) 정보 확인
Key point
- AWS 5세대 인스턴스 : Nitro system을 도입 따라서 5세대 이전에 만들어진 ami 이미지를 사용하는 관리자들은 ena driver를 설치하고 향상된 네트워크 기능을 활성화해야 함.
- 인스턴스 유형을 변경하려면 인스턴스가 반드시 stopped상태여야 함.
- Nitro(c5, m5, r5)를 실행하는 인스턴스에 들어가면 vxd[x]장치가 전혀 없고 nvme[x] 장치(사용 가능한 디바이스 이름 자체가 다름)사용.
- bongkeun-test-pre-gen-ami 커널 정보 및 배포판 버전 확인
- grep . /etc/*-release 명령어로 확인하였을 시 2016년 3월에 출시한 리눅스 배포판 사용 중(VERSION="2016.03”)이라 ENA 지원이 활성화되어 있지 않음.
- cat /proc/version 명령어로 확인하였을 시 Linux version 4.14.123-111.109.amzn2.x86_64 커널 4버전을 사용 중이라 커널 버전과는 상관 없음.
- 따라서 ENA가 지원되는 배포판에 문제가 있기 때문에 ENA활성화가 반드시 필요함.
ENA가 지원되는 커널 및 배포판
🔒 Supported Kernel Versions and Distributions
ENA driver is supported on kernels 3.2 and above with an addition of kernel 2.6.32.
RedHat:
RedHat Enterprise Linux 6.7 or newer
Ubuntu:
Ubuntu Trusty 14.04 amd64 server
Ubuntu Xenial 16.04 amd64 server
Ubuntu Yakkety 16.10 amd64 server
Ubuntu Zesty 17.04 amd64 server
Ubuntu Bionic Beaver 18.04 server or newer
Amazon Linux:
Amazon Linux AMI 2016.09.1
Amazon Linux AMI 2017.03
Amazon Linux AMI 2017.09
Amazon Linux AMI 2018.03
Amazon Linux AMI 2 or newer
CentOS:
CentOS 6.7 or newer
SUSE:
SUSE Linux Enterprise Server 12 SP2
SUSE Linux Enterprise Server 12 SP3
SUSE Linux Enterprise Server 15 or newer
참고자료 https://github.com/amzn/amzn-drivers/blob/master/kernel/linux/ena/RELEASENOTES.md https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/enhanced-networking-ena.html
이렇게 이번 시간에는 5세대(m5, c5, r5) large 사이즈로 인스턴스를 마이그레이션 시에 발생하는 트러블 슈팅 및 실습 day를 진행 해보았습니다.
다음번에는 더 신선한 주제로 찾아뵐게요~~ 모두들 베빠~
'CSP (Cloud Service Provider) > AWS' 카테고리의 다른 글
[AWS] 로드밸런서 Connection Draining (0) | 2023.09.13 |
---|---|
AWS WAF & Shield (0) | 2023.09.07 |
VPC Endpoint와 S3 (0) | 2023.09.05 |
[AWS] AWS CodeStar Connections (0) | 2023.09.01 |
[AWS] RDS CA 인증서 교체 (0) | 2023.09.01 |
댓글