As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Kernels fornecidos pelo usuário
Se precisar de um kernel personalizado em suas EC2 instâncias da Amazon, você pode começar com uma AMI que seja próxima do que você deseja, compilar o kernel personalizado em sua instância e atualizar o bootloader para apontar para o novo kernel. Esse processo varia de acordo com o tipo de virtualização que sua AMI usa. Para obter mais informações, consulte os tipos de virtualização do Linux AMI no Guia do EC2 usuário da Amazon.
HVM AMIs (GRUB)
Volumes de instância HVM são tratados como discos físicos reais. O processo de inicialização é semelhante ao de um sistema operacional bare metal, com um disco particionado e um bootloader, que permite a ele funcionar com todas as distribuições do Linux atualmente compatíveis. O bootloader mais comum é o GRUB ou. GRUB2
Por padrão, o GRUB não envia sua saída para o console da instância, pois cria um atraso de inicialização a mais. Para obter mais informações, consulte a saída do console de instância no Amazon EC2 User Guide. Se você estiver instalando um kernel personalizado, considere habilitar a saída do GRUB.
Não é necessário especificar um kernel de fallback, mas recomendamos que você tenha um fallback ao testar um novo kernel. O GRUB podem recuar para outro kernel no caso de o novo kernel falhar. Ter um kernel de fallback reserva permite que a instância seja inicializada mesmo se o novo kernel não for encontrado.
O GRUB legado usado /boot/grub/menu.lst pelo Amazon Linux. GRUB2 para AL2 usos/etc/default/grub. Para obter mais informações sobre como atualizar o kernel padrão no bootloader, consulte a documentação de sua distribuição do Linux.
Paravirtual AMIs (PV-GRUB)
AMIs que usam virtualização paravirtual (PV) usam um sistema chamado PV-GRUB durante o processo de inicialização. PV-GRUB é um bootloader paravirtual que executa uma versão corrigida do GNU GRUB 0.97. Quando você inicia uma instância, o PV-GRUB inicia o processo de inicialização da cadeia e, em seguida, carrega o kernel especificado pelo arquivo da sua imagem menu.lst.
O PV-GRUB entende os comandos grub.conf ou menu.lst padrão, que permite que ele trabalhe com todas as distribuições do Linux com suporte no momento. Distribuições mais antigas, como Ubuntu 10.04 LTS, Oracle Enterprise Linux ou CentOS 5.x, exigem um pacote especial de kernels "ec2" ou "xen", enquanto distribuições mais novas incluem os drivers necessários no pacote de kernel padrão.
A maioria dos paravirtuais modernos AMIs usa uma AKI PV-GRUB por padrão (incluindo todo o Linux paravirtual disponível AMIs no menu Amazon Launch EC2 Wizard Quick Start), portanto, não há etapas adicionais que você precise realizar para usar um kernel diferente em sua instância, desde que o kernel que você deseja usar seja compatível com sua distribuição. A melhor maneira de executar um kernel personalizado na instância é começar com a AMI mais próxima à que você deseja, compilar o kernel personalizado na instância e modificar o arquivo menu.lst para ser inicializado com esse kernel.
É possível verificar se a imagem do kernel de uma AMI é uma AKI PV-GRUB. Execute o comando a seguir describe-images (substituindo seu ID de imagem do kernel) e verifique se o campo Name começa com pv-grub:
aws ec2 describe-images --filters Name=image-id,Values=aki-880531cd
Tópicos
Limitações do PV-GRUB
O PV-GRUB tem as seguintes limitações:
-
Você não pode usar a versão de 64 bits do PV-GRUB para iniciar um kernel de 32 bits ou vice-versa.
-
Você não pode especificar uma imagem de ramdisk da Amazon (ARI) ao usar uma PV-GRUB AKI.
-
AWS testou e verificou se o PV-GRUB funciona com os seguintes formatos de sistema de arquivos: EXT2,,, JFS EXT3 EXT4, XFS e ReiserFS. Outros formatos de sistema de arquivos podem não funcionar.
-
O PV-GRUB pode inicializar os kernels compactados usando os formatos de compressão gzip, bzip2, lzo e xz.
-
O cluster AMIs não suporta nem precisa do PV-GRUB, porque eles usam a virtualização completa de hardware (HVM). Enquanto instâncias paravirtuais usam PV-GRUB para iniciar, os volumes de instância de HVM são tratados como discos reais, e o processo de inicialização é semelhante ao processo de inicialização do sistema operacional bare metal com um disco particionado e um bootloader.
-
O PV-GRUB versões 1.03 e anteriores não são compatíveis com particionamento de GPT; elas oferecem suporte somente a particionamento MBR.
-
Se você planeja usar um gerenciador de volumes lógicos (LVM) com os volumes do Amazon Elastic Block Store (Amazon EBS), precisa de uma partição de inicialização separada do LVM. Então, é possível criar volumes lógicos com o LVM.
Configurar o GRUB para paravirtual AMIs
Para inicializar PV-GRUB, deve existir um arquivo menu.lst do GRUB na imagem; a localização mais comum para esse arquivo é /boot/grub/menu.lst.
A seguir está um exemplo de um arquivo de configuração de menu.lst para inicializar uma AMI com uma PV-GRUB AKI. Neste exemplo, há duas entradas de kernel para escolher: do Amazon Linux 2018.03 (o kernel original desta AMI) e Vanilla Linux 4.16.4 (uma versão mais recente do kernel Vanilla Linux de https://www.kernel.org/kernel e initrd foram atualizados para os novos locais. O parâmetro default 0 aponta o bootloader para a primeira entrada que vê (nesse caso, a entrada do Vanilla), e o parâmetro fallback 1 aponta o bootloader para a entrada seguinte se houver um problema em inicializar o primeiro.
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
Você não precisa especificar o kernel de fallback no seu arquivo menu.lst, mas recomendamos que você tenha um fallback ao testar um novo kernel. O PV-GRUB podem recuar para outro kernel no caso de o novo kernel falhar. Ter um kernel de fallback reserva permite que a instância inicialize mesmo se o novo kernel não for encontrado.
O PV-GRUB verifica os seguintes locais quanto a menu.lst usando o primeiro que encontrar:
-
(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
Observe que PV-GRUB 1.03 e anteriores só verificam um dos dois primeiros locais dessa lista.
Imagem do kernel Amazon PV-GRUB IDs
O PV-GRUB AKIs está disponível em todas as EC2 regiões da Amazon, exceto Ásia-Pacífico (Osaka). Existem AKIs para os tipos de arquitetura de 32 e 64 bits. A maioria dos modernos AMIs usa uma API PV-GRUB por padrão.
Recomendamos que você sempre use a versão mais recente da AKI PV-GRUB, pois nem todas as versões são compatíveis com todos os tipos de instância. Use o seguinte comando describe-images para obter uma lista do AKIs PV-GRUB da região atual:
aws ec2 describe-images --owners amazon --filters Name=name,Values=pv-grub-*.gz
A PV-GRUB é a única AKI disponível na região ap-southeast-2. É necessário verificar se alguma AMI que deseja copiar para essa região está usando uma versão de PV-GRUB disponível nessa região.
A seguir estão as AKI atuais IDs para cada região. Registre um novo AMIs usando uma AKI hd0.
nota
Continuamos fornecendo hd00 AKIs para compatibilidade com versões anteriores nas regiões em que eles estavam disponíveis anteriormente.
| ID da imagem | Nome da imagem |
|---|---|
aki-f975a998
|
pv-grub-hd0_1.05-i386.gz
|
aki-7077ab11
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-17a40074
|
pv-grub-hd0_1.05-i386.gz
|
aki-73a50110
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-ba5665d9
|
pv-grub-hd0_1.05-i386.gz
|
aki-66506305
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-1419e57b
|
pv-grub-hd0_1.05-i386.gz
|
aki-931fe3fc
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-1c9fd86f
|
pv-grub-hd0_1.05-i386.gz
|
aki-dc9ed9af
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-7cd34110
|
pv-grub-hd0_1.05-i386.gz
|
aki-912fbcfd
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-04206613
|
pv-grub-hd0_1.05-i386.gz
|
aki-5c21674b
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-5ee9573f
|
pv-grub-hd0_1.05-i386.gz
|
aki-9ee55bff
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-43cf8123
|
pv-grub-hd0_1.05-i386.gz
|
aki-59cc8239
|
pv-grub-hd0_1.05-x86_64.gz
|
| ID da imagem | Nome da imagem |
|---|---|
aki-7a69931a
|
pv-grub-hd0_1.05-i386.gz
|
aki-70cb0e10
|
pv-grub-hd0_1.05-x86_64.gz
|
Atualizar PV-GRUB
Recomendamos que você sempre use a versão mais recente da AKI PV-GRUB, pois nem todas as versões são compatíveis com todos os tipos de instância. Além disso, versões mais antigas do PV-GRUB não estão disponíveis em todas as regiões. Por isso, se você copiar uma AMI usando uma versão mais antiga para uma região que não oferece suporte a essa versão, será incapaz de inicializar as instâncias executadas a partir daquela AMI até que atualize a imagem do kernel. Use os procedimentos a seguir para verificar a versão da sua instância do PV-GRUB e atualizá-la, se necessário.
Para verificar sua versão do PV-GRUB
-
Encontre o ID do kernel para sua instância.
aws ec2 describe-instance-attribute --instance-idinstance_id--attribute kernel --regionregion{ "InstanceId": "instance_id", "KernelId": "aki-70cb0e10" }O ID do kernel para essa instância é
aki-70cb0e10. -
Veja as informações de versão do ID desse kernel.
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" } ] }Esta imagem do kernel é PV-GRUB 1.05. Se a versão do PV-GRUB não for a mais nova (conforme exibido em Imagem do kernel Amazon PV-GRUB IDs), atualize-a usando o procedimento a seguir.
Para atualizar sua versão do PV-GRUB
Se sua instância estiver usando uma versão mais antiga de PV-GRUB, atualize-a para a versão mais recente.
-
Identifique a AKI PV-GRUB mais recente para sua região e arquitetura de processadores de Imagem do kernel Amazon PV-GRUB IDs.
-
Pare a instância. Sua instância deve ser interrompida para modificar a imagem do kernel usada.
aws ec2 stop-instances --instance-idsinstance_id--regionregion -
Modifique a imagem do kernel usada para sua instância.
aws ec2 modify-instance-attribute --instance-idinstance_id--kernelkernel_id--regionregion -
Reinicie sua instância.
aws ec2 start-instances --instance-idsinstance_id--regionregion