Comparação entre o AL2 e o AL2023 - Amazon Linux 2023

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á.

Comparação entre o AL2 e o AL2023

Os tópicos a seguir descrevem as principais diferenças entre AL2 e AL2023.

Pacotes adicionados, atualizados e removidos

O AL2023 contém milhares de pacotes de software disponíveis para uso. Para obter uma lista completa de todos os pacotes adicionados, atualizados ou removidos no AL2023 em comparação com as versões anteriores do Amazon Linux, consulte Alterações de pacote no AL2023.

Para solicitar que um pacote seja adicionado ou alterado no AL2023, registre um problema no repositório amazon-linux-2023 em. GitHub

Suporte para cada versão

Para o AL2023, oferecemos cinco anos de suporte.

Para ter mais informações, consulte Cadência de lançamento.

Alterações de nomenclatura e controle de versão

O AL2023 é compatível com os mesmos mecanismos ao que o AL2 oferece suporte para identificação da plataforma. O AL2023 também introduz novos arquivos para identificação da plataforma.

Para ter mais informações, consulte Nomeação e controle de versão.

Otimizações

O AL2023 otimiza o tempo de inicialização para reduzir o tempo desde a inicialização da instância até a execução do workload do cliente. Essas otimizações abrangem a configuração de kernel da instância do Amazon EC2, as configurações de cloud-init e os recursos que são incorporados em pacotes no sistema operacional, como kmod e systemd.

Para obter mais informações sobre essas otimizações, consulte Otimizações operacionais e de desempenho.

O Python 2.7 foi substituído pelo Python 3

O AL2 fornece patches de suporte e segurança para o Python 2.7 até junho de 2025, como parte do nosso compromisso de suporte de longo prazo (LTS) para os pacotes principais do AL2. Esse suporte vai além da declaração da comunidade Python upstream do Python 2.7 de janeiro de 2020 end-of-life.

O AL2 usa o gerenciador de yum pacotes, que tem uma forte dependência do Python 2.7. No AL2023, o gerenciador de pacotes dnf migrou para o Python 3 e não precisa mais do Python 2.7. O AL2023 foi completamente transferido para o Python 3.

nota

O AL2023 removeu o Python 2.7, portanto, todos os componentes do sistema operacional que exigem Python são escritos para funcionar com o Python 3. Para continuar usando uma versão do Python fornecida e compatível com o Amazon Linux, converta o código do Python 2 em Python 3.

Para obter mais informações sobre Python no Amazon Linux, consulte Python em AL2023.

Atualizações de segurança

SELinux

Por padrão, Security Enhanced Linux (SELinux) para AL2023 é enabled e definido como modo permissive. No modo permissive, as negações de permissão são registradas, mas não aplicadas.

SELinux é um recurso de segurança do kernel Amazon Linux, que era disabled no AL2. SELinux é uma coleção de recursos e utilitários do kernel que fornece a arquitetura de controle de acesso (MAC) obrigatória nos principais subsistemas do kernel.

Para ter mais informações, consulte Configurando modos SELinux para AL2023.

Para obter mais informações sobre repositórios, ferramentas e políticas de SELinux, consulte Caderno do SELinux, Tipos de política do SELinux e Projeto SELinux.

OpenSSL 3

O AL2023 apresenta o kit de ferramentas de criptografia Open Secure Sockets Layer version 3 (OpenSSL 3). Suportes TLS 1.3 e protocolos de TLS 1.2 rede do AL2023.

Por padrão, o AL2 vem com OpenSSL 1.0.2. Você pode criar aplicativos contra o OpenSSL 1.1.1.

Para mais informações sobre OpenSSL, consulte o Guia de migração de OpenSSL.

Para obter mais informações sobre a segurança, consulte Atualizações e recursos de segurança.

IMDSv2

Por padrão, todas as instâncias lançadas com a AMI AL2023 requerem IMDSv2 -only e seu limite de saltos padrão será definido como 2 para permitir o suporte à carga de trabalho em contêineres. Isso é feito definindo o parâmetro imds-support como v2.0. Para obter mais informações, consulte Configurar a AMI no Guia do usuário do Amazon EC2.

nota

O tempo de validade do token de sessão pode estar entre 1 segundo e 6 horas. Os endereços para direcionar as solicitações de API para consultas IMDSv2 são os seguintes:

  • IPv4: 169.254.169.254

  • IPv6: fd00:ec2::254

Você pode substituir manualmente essas configurações e habilitá-las IMDSv1 usando as propriedades de lançamento da opção Instance Metadata. Você também pode usar os controles do IAM para impor IMDS configurações diferentes. Para obter mais informações sobre como configurar e usar o Instance Metadata Service, consulte Usar IMDSv2, configurar opções de metadados de instância para novas instâncias e Modificar opções de metadados de instância para instâncias existentes, no Guia do usuário do Amazon EC2.

Remoção do hotpatch log4j (log4j-cve-2021-44228-hotpatch)

nota

O AL2023 não é enviado com o pacote log4j-cve-2021-44228-hotpatch.

Em resposta ao CVE-2021-44228, a Amazon Linux lançou uma versão empacotada em RPM do Hotpatch para Apache Log4j para AL1 e AL2. No anúncio da adição do hotpatch ao Amazon Linux, observamos que “Instalar o hotpatch não substitui a atualização para uma versão log4j que atenua o CVE-2021-44228 ou o CVE-2021-45046”.

O hotpatch foi uma mitigação para dar tempo de corrigir log4j. A primeira versão de Disponibilidade Geral (GA) do AL2023 foi 15 meses após o CVE-2021-44228, portanto, o AL2023 não vem com o hotpatch (ativado ou não).

Os usuários que executam suas próprias log4j versões no Amazon Linux devem garantir que tenham atualizado para versões não afetadas pela CVE-2021-44228 ou CVE-2021-45046.

O AL2023 fornece orientações sobre Atualizando AL2023 para que você possa se manter atualizado com os patches de segurança. Os avisos de segurança são publicados no Amazon Linux Security Center.

Atualizações determinísticas para estabilidade

Com o recurso de atualizações determinísticas por meio de repositórios versionados, cada AMI do AL2023, por padrão, está bloqueada para uma versão específica do repositório. Você pode usar atualizações determinísticas para obter maior consistência entre as versões e atualizações do pacote. Cada versão, principal ou secundária, inclui uma versão específica do repositório.

Novo no AL2023, a atualização determinística por padrão está habilitada. Essa é uma melhoria em relação ao método manual e incremental de bloqueio usado no AL2 e em outras versões anteriores.

Para ter mais informações, consulte Usando atualizações determinísticas por meio de repositório versionado no AL2023.

Proveniente de vários upstreams

O AL2023 é baseado em RPM e inclui componentes provenientes de várias versões do Fedora e de outras distribuições, como o CentOS 9 Stream. O kernel Amazon Linux é originado das versões de suporte de longo prazo (LTS) diretamente do kernel.org, escolhidas independentemente de outras distribuições.

Para ter mais informações, consulte Relacionamento com o Fedora.

Sistema de arquivos raiz da AMI e tipo de volume padrão do Amazon EBS

Tanto a AMI AL2023 quanto a AL2 usam o sistema de arquivos XFS no sistema de arquivos raiz. Para o AL2023, as opções mkfs do sistema de arquivos do dispositivo raiz são ainda mais otimizadas para o Amazon EC2. O AL2023 também oferece suporte a vários outros sistemas de arquivos que você pode usar em outros volumes para atender aos seus requisitos específicos.

As AMIs do AL2023 usam volumes gp3 do Amazon EBS por padrão, enquanto as AMIs do AL2 usam volumes gp2 do Amazon EBS por padrão. É possível alterar o tipo de volume quando lançar uma instância.

Para obter mais informações sobre os tipos de volume Amazon EBS, consulte Volumes de propósito do Amazon EBS.

Para obter mais informações sobre o lançamento de uma instância do Amazon EC2, consulte Iniciar uma instância no Guia do usuário do Amazon EC2.

Serviço do sistema de rede

O serviço do sistema systemd-networkd gerencia as interfaces de rede no AL2023. Essa é uma alteração do AL2, que usa ISC dhclient ou dhclient.

Para ter mais informações, consulte Serviço de redes.

Hierarquia unificada de grupos de controle (cgroup v2)

Um Grupo de Controle (cgroup) é um recurso do kernel Linux para organizar hierarquicamente os processos e distribuir os recursos do sistema entre eles. Os grupos de controle são usados extensivamente para implementar um tempo de execução de contêiner e por systemd.

O AL2 suporta e cgroupv1 o AL2023 suporta. cgroupv2 Isso é notável ao executar workloads em contêineres, como quando Usando AMIs do Amazon ECS baseadas em AL2023 para hospedar cargas de trabalho em contêineres.

Embora o AL2023 ainda inclua código que pode fazer o sistema funcionar usandocgroupv1, essa não é uma configuração recomendada ou suportada e será completamente removida em uma futura versão principal do Amazon Linux.

Há uma extensa documentação sobre as interfaces de baixo nível de kernel do Linux, bem como a documentação de delegação de systemd cgroup.

Um caso de uso comum fora dos contêineres é criar systemd unidades que tenham limites nos recursos do sistema que elas podem usar. Para obter mais informações, consulte systemd.resource-control.

Programação de tarefas

O pacote cronie foi instalado por padrão na AMI AL2, fornecendo suporte para a forma crontab tradicional de programar tarefas periódicas. No AL2023, não cronie está incluído por padrão. Portanto, o suporte para não crontab é mais fornecido por padrão.

Opcionalmente, você pode instalar o pacote cronie para usar trabalhos tarefas clássicas cron. Recomendamos que você migre para temporizadores systemd devido à funcionalidade adicional fornecida pelo systemd.

Pacotes para glibc, gcc e binutils

O AL2023 inclui muitos dos mesmos pacotes principais do AL2.

Atualizamos os três pacotes principais do conjunto de ferramentas a seguir para o AL2023.

Nome do pacote AL2 AL2023
glibc

2.26

2.34

gcc

7.3

11.3

binutils

2.29

2,39

Para ter mais informações, consulte Pacotes principais do conjunto de ferramentas glibc, gcc, binutils.

Gerenciador de pacote

A ferramenta padrão de gerenciamento de pacotes de software no AL2023 é DNF. E DNF é o sucessor de YUM, a ferramenta de gerenciamento de pacotes no AL2.

Para ter mais informações, consulte Ferramenta de gerenciamento de pacotes.

Sistema de registro

No AL2023, o pacote do sistema de registro foi alterado do AL2. O AL2023 não instala rsyslog por padrão, portanto, os arquivos de log baseados em texto, como /var/log/messages que estavam disponíveis no AL2, não estão disponíveis por padrão. A configuração padrão para AL2023 é systemd-journal, que pode ser examinada usando journalctl. Embora rsyslog seja um pacote opcional no AL2023, recomendamos a nova interface de journalctl baseada em systemd e os pacotes relacionados. Para obter mais informações, consulte a página do manual journalctl.

Alterações de pacotes para curl e libcurl

O AL2023 separa os protocolos e as funcionalidades comuns dos pacotes curl e libcurl em curl-minimal e libcurl-minimal. Isso reduz o espaço ocupado por disco, memória e dependência para a maioria dos usuários e é o pacote padrão para AMIs e contêineres do AL2023.

Se a funcionalidade completa do curl for necessária, por exemplo, para suporte de gopher://, execute os seguintes comandos para instalar os curl-full e libcurl-full.

$ dnf swap libcurl-minimal libcurl-full
$ dnf swap curl-minimal curl-full

Guarda de Privacidade GNU (GNUPG)

O AL2023 separa a funcionalidade mínima e completa do pacote gnupg2 em gnupg2-minimal pacotes gnupg2-full. Por padrão, apenas o pacote gnupg2-minimal está instalado. Isso fornece a funcionalidade mínima necessária para verificar as assinaturas digitais nos pacotes rpm.

Para obter mais funcionalidades de gnupg2, como a capacidade de baixar chaves de um servidor de chaves, verifique se o pacote gnupg2-full está instalado. Execute o seguinte comando para trocar gnupg2-minimal por gnupg2-full.

$ dnf swap gnupg2-minimal gnupg2-full

Amazon Corretto como JVM padrão

O AL2023 é fornecido com o Amazon Corretto como o Java Development Kit (JDK) padrão (e único). Todos os pacotes Java baseados no AL2023 são todos construídos comAmazon Corretto 17.

Se você estiver migrando do AL2, poderá fazer a transição sem problemas da OpenJDK versão equivalente no AL2 para o. Amazon Corretto

AWS CLI v2

O AL2023 vem com a AWS CLI versão 2, enquanto o AL2 vem com a versão 1 do. AWS CLI

UEFI preferencial

Por padrão, todas as instâncias iniciadas com a AMI AL2023 em tipos de instância compatíveis com o firmware UEFI serão iniciadas no modo UEFI. Isso é feito definindo o parâmetro AMI do modo de inicialização como uefi-preferred. Para obter mais informações, consulte Modos de inicialização no Guia do usuário do Amazon EC2.

Alterações na configuração padrão do servidor SSH

Para a AMI AL2023, alteramos os tipos de chaves de host de sshd que geramos com a versão. Também eliminamos alguns tipos de chaves legadas para evitar gerá-las no momento do lançamento. Os clientes devem oferecer suporte aos protocolos rsa-sha2-256 e rsa-sha2-512 ou ssh-ed25519 com o uso de uma chave ed25519. Por padrão, as assinaturas ssh-rsa estão desabilitadas.

Além disso, as configurações do AL2023 no arquivo padrão sshd_config contêm UseDNS=no. Essa nova configuração significa que é menos provável que deficiências de DNS bloqueiem sua capacidade de estabelecer sessões ssh com suas instâncias. A desvantagem é que as entradas de linha from=hostname.domain,hostname.domain em seus arquivos authorized_keys não serão resolvidas. Como sshd não tenta mais resolver os nomes DNS, cada valor de hostname.domain separado por vírgula deve ser traduzido para um IP address correspondente.

Para ter mais informações, consulte Configuração do servidor SSH padrão.

Extra Packages for Enterprise Linux (EPEL)

Extra Packages for Enterprise Linux (EPEL) é um projeto na comunidade Fedora com o objetivo de criar uma grande variedade de pacotes para sistemas operacionais Linux de nível corporativo. O projeto produziu principalmente pacotes RHEL e CentOS. O AL2 apresenta um alto nível de compatibilidade com CentOS 7. Como resultado, muitos pacotes EPEL7 funcionam no AL2. No entanto, o AL2023 não oferece suporte a EPEL ou repositórios como EPEL.

Usar o cloud-init

No AL2023, cloud-init gerencia o repositório de pacotes. Por padrão, em versões anteriores do Amazon Linux, cloud-init instalou atualizações de segurança. Este não é o padrão para o AL2023. Os novos recursos determinísticos de atualização para atualização de releasever no lançamento descrevem a maneira do AL2023 de habilitar atualizações de pacotes no lançamento. Para obter mais informações, consulte Gerencie atualizações de pacotes e sistemas operacionais no AL2023 e Atualizações determinísticas para estabilidade.

Com o AL2023, você pode usar cloud-init com SELinux. Para ter mais informações, consulte Use cloud-init para ativar o modo enforcing..

Cloud-init carrega o conteúdo de configuração com cloud-init de locais remotos usando HTTP(S). Nas versões anteriores, o Amazon Linux não alertava você quando os recursos remotos não estão disponíveis. No AL2023, recursos remotos indisponíveis criam um erro fatal e falham na execução de cloud-init. Essa mudança no comportamento do AL2 fornece um comportamento padrão mais seguro de “falha fechada”.

Para obter mais informações, consulte cloud-init personalizado e a Documentação do cloud-init.

Suporte gráfico para desktop

O AL2023 é centrado na nuvem e otimizado para o uso do Amazon EC2 e, atualmente, não inclui um ambiente gráfico ou de desktop. Para fornecer feedback sobre GitHub, consulte https://github.com/.

Compilador Triplet

O AL2023 define o trigêmeo do compilador para GCC e LLVM para indicar que amazon é o fornecedor.

Assim, o AL2 aarch64-redhat-linux-gcc se torna aarch64-amazon-linux-gcc no AL2023.

Isso deve ser completamente transparente para a maioria dos usuários e pode afetar apenas aqueles que estão criando compiladores no AL2023.

Pacotes x86 (i686) de 32 bits

Como parte da versão 2014.09 do AL1, foi anunciado que seria a última versão a produzir AMIs de 32 bits. Portanto, a partir da versão 2015.03 do AL1, o Amazon Linux não aceitava mais a execução do sistema no modo de 32 bits. O AL2 ofereceu suporte de tempo de execução limitado para binários de 32 bits em hosts x86-64 e não forneceu pacotes de desenvolvimento para permitir a criação de novos binários de 32 bits. O AL2023 não inclui mais nenhum pacote de espaço de usuário de 32 bits. Recomendamos que você conclua sua transição para o código de 64 bits.

Se você precisar executar binários de 32 bits no AL2023, é possível usar o espaço do usuário de 32 bits do AL2 dentro de um contêiner AL2 executado sobre o AL2023.

lsb_release e o pacote system-lsb-core

Historicamente, alguns softwares invocavam o comando lsb_release (fornecido no AL2 pelo pacote system-lsb-core) para obter informações sobre a distribuição Linux na qual ele estava sendo executado. O Linux Standards Base (LSB) introduziu esse comando e as distribuições Linux o adotaram. As distribuições Linux evoluíram para usar o padrão mais simples de armazenar essas informações em /etc/os-release e outros arquivos relacionados.

O padrão os-release sai de systemd. Para obter mais informações, consulte a documentação do systemd os-release.

O AL2023 não vem com o comando lsb_release e não inclui o pacote system-lsb-core. O software deve concluir a transição para o padrão os-release para manter a compatibilidade com o Amazon Linux e outras grandes distribuições Linux.