기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
사용자 제공 커널
Amazon EC2 인스턴스에 사용자 지정 커널이 필요할 경우 가장 적합한 AMI를 사용하여 시작한 후 해당 인스턴스에서 사용자 지정 커널을 컴파일하고, 부트로더를 업데이트하여 새 커널을 지정합니다. 이 프로세스는 AMI에서 사용하는 가상화 유형에 따라 다릅니다. 자세한 내용은 Amazon EC2 사용 설명서의 Linux AMI 가상화 유형을 참조하세요.
HVM AMIs(GRUB)
HVM 인스턴스 볼륨은 실제 물리적 디스크인 것처럼 취급됩니다. 부팅 프로세스는 디스크 파티션이 설정되고 부트로더가 있는 베어 메탈(bare metal) 운영 체제의 부팅 프로세스와 비슷하며, 현재 지원되는 모든 Linux 배포판을 사용할 수 있습니다. 가장 일반적인 부트로더는 GRUB 또는 GRUB2입니다.
기본적으로 GRUB는 추가적인 부팅 지연을 발생시키지 않기 위해 인스턴스 콘솔에 출력을 전송하지 않습니다. 자세한 내용은 Amazon EC2 사용 설명서의 인스턴스 콘솔 출력을 참조하세요. 사용자 지정 커널을 설치하는 경우 GRUB 출력을 사용하도록 설정해야 합니다.
대체 커널을 지정할 필요는 없지만, 새 커널을 테스트할 때 대체 커널을 사용하는 것이 권장됩니다. GRUB은 새 커널에 장애가 발생한 경우 다른 커널로 이를 대체하여 사용할 수 있습니다. 대체 커널이 있으면 새 커널이 없는 경우에도 인스턴스가 부팅될 수 있습니다.
Amazon Linux용 레거시 GRUB에서는 /boot/grub/menu.lst를 사용하며, AL2용 GRUB2는를 사용합니다/etc/default/grub. AL2 부트로더에서 기본 커널을 업데이트하는 방법에 대한 자세한 내용은 해당 Linux 배포판의 설명서를 참조하세요.
AMIs 반가상화(PV-GRUB)
반가상화(PV) 가상화를 사용하는 AMIs 부팅 프로세스 중에 PV-GRUB이라는 시스템을 사용합니다. PV-GRUB는 GNU GRUB 0.97의 패치 버전을 실행하는 반가상화 부트로더입니다. 인스턴스를 실행하면 PV-GRUB가 부팅 과정을 실행하고 이미지의 menu.lst 파일에 지정된 커널을 체인로드합니다.
PV-GRUB는 표준 grub.conf 또는 menu.lst 명령을 이해할 수 있으며 따라서 모든 최신 지원 Linux 배포판과 함께 사용할 수 있습니다. Ubuntu 10.04 LTS, Oracle Enterprise Linux, CentOS 5.x 등 이전 배포판은 특별한 "ec2" 또는 "xen" 커널 패키지를 필요로 하지만, 새 배포판은 필요한 드라이버를 기본 커널 패키지에 포함하고 있습니다.
대부분의 PV(반가상화) AMI는 PV-GRUB AKI를 기본적으로 사용하므로(Amazon EC2 Launch Wizard Start 메뉴에서 제공되는 모든 PV Linux AMI 포함), 사용할 다른 커널이 사용자의 배포판과 호환되는 경우라면 인스턴스에서 해당 커널을 사용하기 위해 별도의 조치를 취할 필요는 없습니다. 인스턴스에서 사용자 지정 커널을 실행하는 최상의 방법은 원하는 것과 가장 근접한 AMI로 시작하여, 인스턴스에서 사용자 지정 커널을 컴파일하고, menu.lst 파일을 수정하는 것입니다.
AMI의 커널 이미지가 PV-GRUB AKI인지 확인할 수 있습니다. 다음 describe-images 명령(해당 커널 이미지 ID로 대체)을 실행하여 Name 필드가 pv-grub로 시작하는지 확인합니다.
aws ec2 describe-images --filters Name=image-id,Values=aki-880531cd
PV-GRUB의 제한 사항
PV-GRUB에는 다음과 같은 제한 사항이 있습니다.
-
64비트 버전의 PV-GRUB을 사용해서 32비트 커널을 실행할 수는 없으며, 32비트 버전의 PV-GRUB을 사용해서 64비트 커널을 실행할 수도 없습니다.
-
PV-GRUB AKI를 사용할 때 ARI(Amazon 램디스크 이미지)를 지정할 수 없습니다.
-
AWS 는 PV-GRUB이 EXT2, EXT3, EXT4, JFS, XFS 및 ReiserFS 파일 시스템 형식으로 작동하는지 테스트하고 확인했습니다. 그 밖의 파일 시스템 포맷은 PV-GRUB에서 작동하지 않을 수 있습니다.
-
PV-GRUB은 gzip, bzip2, lzo, xz 압축 포맷을 사용해서 압축된 커널을 부팅시킬 수 있습니다.
-
Cluster AMI는 완전한 HVM(하드웨어 가상 머신)을 사용하기 때문에 PV-GRUB을 지원하지 않으며 이를 필요로 하지도 않습니다. PV(반가상화) 인스턴스는 PV-GRUB을 사용해서 부팅하지만, HVM 인스턴스 볼륨은 실제 디스크처럼 취급되며 그 부팅 과정은 파티션 처리된 디스크와 부트로더가 있는 베어 메탈(bare metal) 운영 체제의 부팅 과정과 유사합니다.
-
PV-GRUB 버전 1.03 및 그 이하 버전은 GPT 파티셔닝을 지원하지 않으며 MBR 파티셔닝만 지원합니다.
-
Amazon Elastic Block Store(Amazon EBS) 볼륨으로 LVM(Logical Volume Manager)를 사용할 계획인 경우, LVM 외부의 개별적인 부트 파티션을 필요로 합니다. 상기 요건이 갖추어지면 LVM으로 논리적 볼륨을 생성할 수 있게 됩니다.
반가상화 AMIs대해 GRUB 구성
PV-GRUB을 부팅하려면 이미지 내에 GRUB menu.lst 파일이 존재해야 합니다. 이 파일의 가장 일반적인 위치는 /boot/grub/menu.lst입니다.
다음은 PV-GRUB AKI로 AMI를 부팅하는 것에 대한 menu.lst 구성 파일의 예입니다. 이 예에서는 Amazon Linux 2018.03(이 AMI에 대한 원래 커널) 커널과 Vanilla Linux 4.16.4(https://www.kernel.org/kernel 및 initrd 경로는 새 위치로 업데이트됩니다. default 0 파라미터는 부트로더가 발견한 첫 번째 항목(이 경우는 Vanilla 항목)을 참조하게 하고, fallback 1 파라미터는 첫 항목 부팅에 문제가 있는 경우 부트로더가 두 번째 항목을 참조하게 합니다.
default 0 fallback 1 timeout 0 hiddenmenu title Vanilla Linux 4.16.4 root (hd0) kernel /boot/vmlinuz-4.16.4 root=LABEL=/ console=hvc0 initrd /boot/initrd.img-4.16.4 title Amazon Linux 2018.03 (4.14.26-46.32.amzn1.x86_64) root (hd0) kernel /boot/vmlinuz-4.14.26-46.32.amzn1.x86_64 root=LABEL=/ console=hvc0 initrd /boot/initramfs-4.14.26-46.32.amzn1.x86_64.img
menu.lst 파일에서 대체 커널을 지정할 필요는 없지만, 새 커널을 테스트할 때 대체 커널을 사용하는 것이 권장됩니다. PV-GRUB은 새 커널에 장애가 발생한 경우 다른 커널로 이를 대체하여 사용할 수 있습니다. 대체 커널이 있을 경우 인스턴스는 새 커널을 발견할 수 없는 경우에도 부팅할 수 있습니다.
PV-GRUB은 menu.lst를 찾기 위해 다음 위치를 검사합니다(발견한 경우 그 이하 경로는 검색 안 함).
-
(hd0)/boot/grub -
(hd0,0)/boot/grub -
(hd0,0)/grub -
(hd0,1)/boot/grub -
(hd0,1)/grub -
(hd0,2)/boot/grub -
(hd0,2)/grub -
(hd0,3)/boot/grub -
(hd0,3)/grub
PV-GRUB 1.03 이하 버전은 이 목록에서 첫 2개의 위치만 검색합니다.
Amazon PV-GRUB 커널 이미지 ID
PV-GRUB AKI는 아시아 태평양(오사카) 리전을 제외한 모든 Amazon EC2 리전에서 제공됩니다. 32비트 및 64비트의 두 아키텍처 유형에 대한 AKI가 존재합니다. 가장 최신의 AMI는 기본적으로 PV-GRUB AKI를 사용합니다.
모든 PV-GRUB 버전이 모든 인스턴스 유형과 호환되는 것은 아니기 때문에, 언제나 PV-GRUB AKI의 최신 버전을 사용하는 것이 권장됩니다. 다음 describe-images 명령을 사용하여 현재 리전에 대한 PV-GRUB AKI 목록을 가져옵니다.
aws ec2 describe-images --owners amazon --filters Name=name,Values=pv-grub-*.gz
PV-GRUB는 ap-southeast-2 리전에서만 제공되는 AKI입니다. 사용자가 해당 리전에 복사할 AMI가 해당 리전에서 사용 가능한 PV-GRUB의 버전을 사용하는지를 확인해야 합니다.
다음은 각 리전에 대한 현재 AKI ID입니다. hd0 AKI를 사용해서 새 AMI를 등록할 수 있습니다.
참고
hd00 AKI가 이전에 제공되었던 리전의 경우 이전 버전과의 호환성을 위해 hd00 AKI가 계속해서 제공되고 있습니다.
| 이미지 ID | 이미지 이름 |
|---|---|
aki-f975a998
|
pv-grub-hd0_1.05-i386.gz
|
aki-7077ab11
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-17a40074
|
pv-grub-hd0_1.05-i386.gz
|
aki-73a50110
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-ba5665d9
|
pv-grub-hd0_1.05-i386.gz
|
aki-66506305
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-1419e57b
|
pv-grub-hd0_1.05-i386.gz
|
aki-931fe3fc
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-1c9fd86f
|
pv-grub-hd0_1.05-i386.gz
|
aki-dc9ed9af
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-7cd34110
|
pv-grub-hd0_1.05-i386.gz
|
aki-912fbcfd
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-04206613
|
pv-grub-hd0_1.05-i386.gz
|
aki-5c21674b
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-5ee9573f
|
pv-grub-hd0_1.05-i386.gz
|
aki-9ee55bff
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-43cf8123
|
pv-grub-hd0_1.05-i386.gz
|
aki-59cc8239
|
pv-grub-hd0_1.05-x86_64.gz
|
| 이미지 ID | 이미지 이름 |
|---|---|
aki-7a69931a
|
pv-grub-hd0_1.05-i386.gz
|
aki-70cb0e10
|
pv-grub-hd0_1.05-x86_64.gz
|
PV-GRUB 업데이트
모든 PV-GRUB 버전이 모든 인스턴스 유형과 호환되는 것은 아니기 때문에, 언제나 PV-GRUB AKI의 최신 버전을 사용하는 것이 권장됩니다. 또한 PV-GRUB의 이전 버전이 모든 리전에서 사용 가능한 것은 아니므로, 이전 버전을 사용하는 AMI를 해당 버전을 지원하지 않는 리전으로 복사한 경우는 커널 이미지를 업데이트할 때까지 AMI에서 실행된 인스턴스를 부팅시킬 수 없습니다. 다음 절차를 사용해 PV-GRUB의 인스턴스 버전을 확인하고 필요한 경우 업데이트를 하세요.
PV-GRUB 버전 확인 방법
-
인스턴스에 대한 커널 ID를 찾습니다.
aws ec2 describe-instance-attribute --instance-idinstance_id--attribute kernel --regionregion{ "InstanceId": "instance_id", "KernelId": "aki-70cb0e10" }이 인스턴스에 대한 커널 ID는
aki-70cb0e10입니다. -
해당 커널 ID의 버전 정보를 확인합니다.
aws ec2 describe-images --image-idsaki-70cb0e10--regionregion{ "Images": [ { "VirtualizationType": "paravirtual", "Name": "pv-grub-hd0_1.05-x86_64.gz", ... "Description": "PV-GRUB release 1.05, 64-bit" } ] }여기서 커널 이미지는 PV-GRUB 1.05입니다. 사용자의 PV-GRUB 버전이 최신 버전이 아닌 경우(Amazon PV-GRUB 커널 이미지 ID에서 확인 가능), 다음 절차를 사용하여 이를 업데이트해야 합니다.
PV-GRUB 버전 업데이트 방법
인스턴스가 PV-GRUB의 이전 버전을 사용하는 경우, 이를 최신 버전으로 업데이트해야 합니다.
-
Amazon PV-GRUB 커널 이미지 ID에서 리전 및 프로세스 아키텍처에 대한 최신 PV-GRUB AKI를 확인합니다.
-
인스턴스를 중단합니다. 사용하고 있는 커널 이미지를 수정하려면 인스턴스를 중단할 필요가 있습니다.
aws ec2 stop-instances --instance-idsinstance_id--regionregion -
인스턴스에 대해 사용되는 커널 이미지를 수정합니다.
aws ec2 modify-instance-attribute --instance-idinstance_id--kernelkernel_id--regionregion -
인스턴스를 재시작합니다.
aws ec2 start-instances --instance-idsinstance_id--regionregion