Kernel yang disediakan pengguna - Amazon Linux 2

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kernel yang disediakan pengguna

Jika Anda memerlukan kernel khusus pada EC2 instans Amazon Anda, Anda dapat memulai dengan AMI yang mendekati apa yang Anda inginkan, mengkompilasi kernel khusus pada instance Anda, dan memperbarui bootloader untuk menunjuk ke kernel baru. Proses ini bervariasi tergantung pada tipe virtualisasi yang digunakan AMI Anda. Untuk informasi selengkapnya, lihat jenis virtualisasi AMI Linux di Panduan EC2 Pengguna Amazon.

HVM AMIs (GRUB)

Volume instans HVM diperlakukan layaknya disk fisik sebenarnya. Proses boot mirip dengan sistem operasi bare metal dengan disk terpartisi dan bootloader, yang memungkinkannya bekerja dengan semua distribusi Linux yang didukung saat ini. Bootloader yang paling umum adalah GRUB atau. GRUB2

Secara default, GRUB tidak mengirim output-nya ke konsol instans karena menyebabkan tambahan penundaan boot. Untuk informasi selengkapnya, lihat Output konsol instans di Panduan EC2 Pengguna Amazon. Jika Anda menginstal kernel kustom, Anda harus mempertimbangkan untuk mengaktifkan output GRUB.

Anda tidak perlu menentukan pemunduran kernel, tetapi kami menyarankan Anda mengaktifkan pemunduran saat menguji kernel baru. GRUB dapat mundur kembali ke kernel lain jika kernel baru gagal. Pemunduran kernel memungkinkan instans dapat di-boot meski kernel baru tidak ditemukan.

GRUB warisan untuk Amazon Linux menggunakan. /boot/grub/menu.lst GRUB2 untuk AL2 penggunaan/etc/default/grub. Untuk informasi lebih lanjut tentang memperbarui kernel default dalam bootloader, lihat dokumentasi untuk distribusi Linux Anda.

Paravirtual AMIs (PV-GRUB)

AMIs yang menggunakan virtualisasi paravirtual (PV) menggunakan sistem yang disebut PV-GRUB selama proses boot. PV-GRUB adalah bootloader paravirtual yang menjalankan versi GNU GRUB 0.97 yang di-patch. Saat Anda memulai instans, PV-GRUB memulai proses boot, lalu memuat secara berantai kernel yang ditentukan oleh file menu.lst gambar Anda.

PV-GRUB memahami perintah grub.conf atau menu.lst standar, yang memungkinkannya berfungsi dengan semua distribusi Linux yang didukung saat ini. Distribusi yang lebih lama, seperti Ubuntu 10.04 LTS, Oracle Enterprise Linux, atau CentOS 5.x memerlukan paket kernel khusus "ec2" atau "xen", sedangkan distribusi yang lebih baru telah memiliki driver yang diperlukan dalam paket kernel default.

Sebagian besar paravirtual modern AMIs menggunakan AKI PV-GRUB secara default (termasuk semua Linux paravirtual yang tersedia di AMIs menu Mulai Cepat Amazon Launch Wizard), jadi tidak ada langkah tambahan yang perlu Anda ambil untuk menggunakan kernel yang berbeda pada instance Anda, asalkan kernel yang ingin Anda gunakan kompatibel dengan distribusi Anda. EC2 Cara terbaik untuk menjalankan kernel kustom pada instans Anda adalah memulai dengan AMI yang mirip dengan apa yang Anda inginkan, lalu mengompilasi kernel kustom pada instans Anda dan memodifikasi file menu.lst untuk melakukan boot dengan kernel tersebut.

Anda dapat memverifikasi bahwa gambar kernel untuk AMI adalah AKI PV-GRUB. Jalankan perintah describe-images berikut (menggantikan ID gambar kernel Anda), dan periksa apakah bidang Name dimulai dengan pv-grub:

aws ec2 describe-images --filters Name=image-id,Values=aki-880531cd

Keterbatasan PV-GRUB

PV-GRUB memiliki keterbatasan berikut:

  • Anda tidak dapat menggunakan PV-GRUB versi 64-bit untuk memulai kernel 32-bit, atau sebaliknya.

  • Anda tidak dapat menentukan Amazon ramdisk gambar (ARI) saat menggunakan AKI PV-GRUB.

  • AWS telah menguji dan memverifikasi bahwa PV-GRUB bekerja dengan format sistem file ini: EXT2,,, JFS EXT3, XFS EXT4, dan ReiserFS. Format sistem file lainnya mungkin tidak bekerja.

  • PV-GRUB dapat melakukan boot kernel yang dikompresi menggunakan format kompresi gzip, bzip2, lzo, dan xz.

  • Cluster AMIs tidak mendukung atau membutuhkan PV-GRUB, karena mereka menggunakan virtualisasi perangkat keras penuh (HVM). Meskipun instans paravirtual menggunakan PV-GRUB untuk melakukan boot, volume instans HVM diperlakukan seperti disk aktual, dan proses boot mirip dengan proses boot sistem operasi bare metal, dengan disk berpartisi dan bootloader.

  • PV-GRUB versi 1.03 dan yang lebih awal tidak mendukung pembuatan partisi GPT; versi ini hanya mendukung pembuatan partisi MBR.

  • Jika Anda berencana menggunakan pengelola volume logis (LVM) dengan volume Amazon Elastic Block Store (Amazon EBS), Anda perlu partisi boot terpisah di luar LVM. Kemudian, Anda dapat membuat volume logis dengan LVM.

Konfigurasikan GRUB untuk paravirtual AMIs

Untuk melakukan boot PV-GRUB, file menu.lst GRUB harus ada dalam gambar; lokasi paling umum untuk file ini adalah /boot/grub/menu.lst.

Berikut ini adalah contoh file konfigurasi menu.lst untuk melakukan boot AMI dengan AKI PV-GRUB. Dalam contoh ini, ada dua entri kernel yang dapat dipilih: Amazon Linux 2018.03 (kernel asli untuk AMI ini), dan Vanilla Linux 4.16.4 (versi lebih baru kernel Vanilla Linux dari https://www.kernel.org/). Entri Vanilla disalin dari entri asli untuk AMI ini, dan jalur kernel dan initrd diperbarui ke lokasi baru. Parameter default 0 menunjuk bootloader ke entri pertama yang dilihatnya (dalam hal ini, entri Vanila), dan parameter fallback 1 menunjukkan bootloader ke entri berikutnya jika ada masalah saat boot yang pertama.

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

Anda tidak perlu menentukan pemunduran kernel di menu.lst Anda, tetapi kami menyarankan Anda mengaktifkan pemunduran saat menguji kernel baru. PV-GRUB dapat mundur kembali ke kernel lain jika kernel baru gagal. Memiliki pemunduran kernel memungkinkan instans dapat di-boot meski kernel baru tidak ditemukan.

PV-GRUB memeriksa menu.lst di lokasi berikut, menggunakan yang pertama ia temukan:

  • (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

Perhatikan bahwa PV-GRUB 1.03 dan sebelumnya hanya memeriksa salah satu dari dua lokasi pertama dalam daftar ini.

Gambar Kernel Amazon PV-GRUB IDs

PV-GRUB AKIs tersedia di semua EC2 wilayah Amazon, tidak termasuk Asia Pasifik (Osaka). Ada AKIs untuk tipe arsitektur 32-bit dan 64-bit. Kebanyakan modern AMIs menggunakan PV-GRUB AKI secara default.

Kami menyarankan agar Anda selalu menggunakan AKI PV-GRUB versi terbaru karena tidak semua versi AKI PV-GRUB kompatibel dengan semua tipe instans. Gunakan perintah deskripsi-gambar berikut untuk mendapatkan daftar AKIs PV-GRUB untuk wilayah saat ini:

aws ec2 describe-images --owners amazon --filters Name=name,Values=pv-grub-*.gz

PV-GRUB adalah satu-satunya AKI yang tersedia di Wilayah ap-southeast-2. Anda harus memverifikasi bahwa AMI yang ingin Anda salin ke Wilayah ini menggunakan versi PV-GRUB yang tersedia di Wilayah ini.

Berikut ini adalah AKI saat ini IDs untuk setiap Wilayah. Daftarkan baru AMIs menggunakan HD0 AKI.

catatan

Kami terus menyediakan hd00 AKIs untuk kompatibilitas mundur di Wilayah di mana mereka sebelumnya tersedia.

ap-northeast-1, Asia Pasifik (Tokyo)
ID gambar Nama Gambar
aki-f975a998 pv-grub-hd0_1.05-i386.gz
aki-7077ab11 pv-grub-hd0_1.05-x86_64.gz
ap-southeast-1, Wilayah Asia Pasifik (Singapura)
ID gambar Nama Gambar
aki-17a40074 pv-grub-hd0_1.05-i386.gz
aki-73a50110 pv-grub-hd0_1.05-x86_64.gz
ap-southeast-2, Asia Pasifik (Sydney)
ID gambar Nama Gambar
aki-ba5665d9 pv-grub-hd0_1.05-i386.gz
aki-66506305 pv-grub-hd0_1.05-x86_64.gz
eu-central-1, Eropa (Frankfurt)
ID gambar Nama Gambar
aki-1419e57b pv-grub-hd0_1.05-i386.gz
aki-931fe3fc pv-grub-hd0_1.05-x86_64.gz
eu-west-1, Eropa (Irlandia)
ID gambar Nama Gambar
aki-1c9fd86f pv-grub-hd0_1.05-i386.gz
aki-dc9ed9af pv-grub-hd0_1.05-x86_64.gz
sa-east-1, Amerika Selatan (Sao Paulo)
ID gambar Nama Gambar
aki-7cd34110 pv-grub-hd0_1.05-i386.gz
aki-912fbcfd pv-grub-hd0_1.05-x86_64.gz
AS Timur (Virginia Utara) us-east-1
ID gambar Nama Gambar
aki-04206613 pv-grub-hd0_1.05-i386.gz
aki-5c21674b pv-grub-hd0_1.05-x86_64.gz
us-gov-west-1, AWS GovCloud (AS-Barat)
ID gambar Nama Gambar
aki-5ee9573f pv-grub-hd0_1.05-i386.gz
aki-9ee55bff pv-grub-hd0_1.05-x86_64.gz
us-west-1, AS Barat (California Utara)
ID gambar Nama Gambar
aki-43cf8123 pv-grub-hd0_1.05-i386.gz
aki-59cc8239 pv-grub-hd0_1.05-x86_64.gz
us-west-2, AS Barat (Oregon)
ID gambar Nama Gambar
aki-7a69931a pv-grub-hd0_1.05-i386.gz
aki-70cb0e10 pv-grub-hd0_1.05-x86_64.gz

Memperbarui PV-GRUB

Kami menyarankan agar Anda selalu menggunakan AKI PV-GRUB versi terbaru karena tidak semua versi AKI PV-GRUB kompatibel dengan semua tipe instans. Selain itu, versi PV-GRUB lebih lama tidak tersedia di semua wilayah, sehingga jika Anda menyalin AMI yang menggunakan versi lama ke Wilayah yang tidak mendukung versi tersebut, Anda tidak akan dapat melakukan boot instan yang diluncurkan dari AMI tersebut hingga Anda memperbarui gambar kernel. Gunakan prosedur berikut untuk memeriksa versi PV-GRUB instans Anda dan perbarui jika perlu.

Untuk memeriksa versi PV-GRUB Anda
  1. Cari ID kernel untuk instans Anda.

    aws ec2 describe-instance-attribute --instance-id instance_id --attribute kernel --region region { "InstanceId": "instance_id", "KernelId": "aki-70cb0e10" }

    ID kernel untuk instans ini adalah aki-70cb0e10.

  2. Tampilkan informasi versi ID kernel tersebut.

    aws ec2 describe-images --image-ids aki-70cb0e10 --region region { "Images": [ { "VirtualizationType": "paravirtual", "Name": "pv-grub-hd0_1.05-x86_64.gz", ... "Description": "PV-GRUB release 1.05, 64-bit" } ] }

    Gambar kernel ini adalah PV-GRUB 1.05. Jika versi PV-GRUB Anda bukan versi terbaru (seperti ditunjukkan dalam Gambar Kernel Amazon PV-GRUB IDs), Anda harus memperbaruinya menggunakan prosedur berikut.

Untuk memperbarui versi PV-GRUB Anda

Jika instans Anda menggunakan versi PV-GRUB lama, Anda harus memperbaruinya ke versi terbaru.

  1. Mengidentifikasi AKI PV-GRUB terbaru untuk Wilayah Anda dan arsitektur prosesor dari Gambar Kernel Amazon PV-GRUB IDs.

  2. Hentikan instans Anda. Instans Anda harus dihentikan untuk mengubah gambar kernel yang digunakan.

    aws ec2 stop-instances --instance-ids instance_id --region region
  3. Ubah gambar kernel yang digunakan untuk instans Anda.

    aws ec2 modify-instance-attribute --instance-id instance_id --kernel kernel_id --region region
  4. Mulai ulang instans Anda.

    aws ec2 start-instances --instance-ids instance_id --region region