Novos recursos e mudanças no UEK R6U3
A seguir estão os principais novos recursos e alterações incluídos no Unbreakable Enterprise Kernel Release 6 Update 3 (UEK R6U3).
Versão de Kernel
O UEK R6U3 usa a versão 5.4.17-2136 e a compilação do kernel UEK R6, que inclui correções de bugs e segurança, bem como atualizações de drivers.
Funcionalidade Básica do Kernel
O UEK R6U3 fornece funcionalidade de kernel principal que é equivalente ao UEK R6, mas é atualizado para a tag de release upstream do kernel principal v5.4.83 e inclui correções de bugs LTS upstream, com patches adicionais para aprimorar a funcionalidade existente e fornecer pequenas correções de bugs e melhorias de segurança. Todas as principais alterações são específicas à funcionalidade necessária para o Oracle Database e outros softwares Oracle.
Protocolo de Comunicação WireGuard
O protocolo de comunicação WireGuard usa redes privadas virtuais (VPNs) criptografadas, passando o tráfego pelo UDP (User Datagram Protocol).
O WireGuard, que foi ativado no UEK R6 como um recurso de visualização de tecnologia desde o UEK R6U1, é totalmente suportado no UEK R6U3.
O WireGuard é um substituto seguro, fácil de usar e mais rápido para os protocolos de tunelamento IPsec e OpenVPN legados. O recurso usa protocolos e algoritmos de criptografia comprovados para proteger dados. Embora a IPsec continue sendo o padrão para comunicação de rede segura, o WireGuard é mais simples de configurar e implantar. Em comparação, sua configuração é comparada à configuração do SSH. Essas são algumas das razões pelas quais os administradores estão optando por construir novas redes com a criptografia mais moderna que o WireGuard usa.
O WireGuard usa criptografia de chave pública para identificação e criptografia, enquanto o OpenVPN usa certificados para essas tarefas. Com o WireGuard, a geração e o gerenciamento seguros de chaves são tratados em segundo plano.
O WireGuard usa um modo de servidor/cliente para sua configuração e implantação. Observe que você pode configurar e implantar o WireGuard em redes IPv4 e IPv6.
Para configurar e implantar o WireGuard, o pacote wireguard-tools deve ser instalado nos sistemas de servidor e cliente, o que permite a comunicação entre ambos os hosts.
Você pode verificar se o pacote wireguard-tools está instalado usando o seguinte comando:
$ rpm -qa | grep wireguard
Você pode verificar se o módulo kernel wireguard está presente no sistema usando o seguinte comando:
$ modinfo wireguard
Para obter mais informações e instruções passo a passo, consulte Oracle Linux: Configuring Virtual Private Networks.
vmemmap - Capacidade de Redução para Páginas HugeTLB Adicionadas
Esta versão inclui um aprimoramento que libera algumas páginas vmemmap (páginas de estruturas de página de estrutura) associadas a cada hugetlbpage. Ao remover estruturas de página redundantes para páginas HugeTLB, a memória pode ser retornada ao alocador de amigos para outros usos.
Para ativar esse recurso, inicialize o sistema usando a opção hugetlb_free_vmemmap=on. Quando ativado, mensagens semelhantes às seguintes são exibidas durante a inicialização:
HugeTLB: can free 4094 vmemmap pages for hugepages-1048576kB HugeTLB: can free 6 vmemmap pages for hugepages-2048kB
io_uring - Estrutura de E/S Assíncrona
Mais integração do framework AIO (Asynchronous I/O) io_uring ocorreu nesta versão. io_uring é uma interface do kernel do Linux que fornece anéis de fila de envio e conclusão, que são então compartilhados entre o espaço do kernel e do usuário para evitar cópias.
Além dos recursos mais estabelecidos que foram adicionados ao framework io_uring nesta versão, o UEK R6U3 também inclui o novo recurso de modo de E/S pesquisado (IORING_SETUP_IOPOLL), que fornece a seguinte funcionalidade:
-
Operações de controle de arquivos padrão:
FALLOCATE,OPENAT2,STATX,MADVISE,FADVISEeTEE. -
Operações em soquetes: mensagens
ACCEPT,CONNECT,SEND(2)eRECV(2) eEPOLL_CTL. -
Capacidade de compartilhamento de
io-wq workqueue(IORING_SETUP_ATTACH_WQ) de outro anel. -
A adição da chamada
IORING_REGISTER_PROBEpara investigar e receber informações sobre recursos suportados do frameworkio_uringno kernel. -
Inclusão da chamada
SPLICE(2). -
Inclusão da chamada
IORING_REGISTER_RESTRICTIONS, que permite ao aplicativo conceder acesso aos seus descritores de arquivos por aplicativos ou convidados não confiáveis. -
Chamada
IORING_OP_PROVIDE_BUFFERS, que usa a infraestrutura de registro de buffer para permitir a passagem de umaddr/lenassociado a um ID de buffer e um ID de grupo de buffers. -
Suporte a
IORING_BUFFER_SELECTpara as chamadas de leitura vetorial,RING_OP_READVeIORING_OP_READVMSG.
Pacote kabi_whitelist Renomeado kabi_stablelist
O pacote kabi_whitelist foi renomeado como kabi_stablelist. Essa alteração foi feita de acordo com o compromisso da Oracle de substituir linguagem problemática e potencialmente ofensiva.
Uma renomeação semelhante já ocorreu no Oracle Linux versão 8.
Virtualização aninhada na plataforma AMD
A capacidade de virtualização aninhada na plataforma AMD de 64 bits (x86_64) é aprimorada nesta versão por meio da implementação de um extenso número de correções de estabilidade.
Melhorias no NVMe
Para acomodar as mudanças nos padrões NVMe e, à medida que a tecnologia continua evoluindo e mudando, estão sendo feitas melhorias contínuas no recurso Non-Volatile Memory Express (NVMe). Em comparação com os protocolos legados, o NVMe fornece recursos avançados para acessar mídia de armazenamento de alta velocidade.
Junto com várias correções de bugs, esta versão introduz o recurso NVMe Target Passthru. O recurso Target Passthru permite exportar um controlador NVMe inteiro por meio da especificação NVM Express over Fabrics (NVMe-oF). Quando exportados dessa maneira, em comparação com a exportação de cada namespace como um dispositivo de bloco, todos os comandos NVMe são passados para o controlador fornecido sem modificação, incluindo comandos administrativos e VUCs (Vendor Unique Commands). Um destino passthru expõe todos os namespaces de um determinado dispositivo ao host remoto.
Novos pontos de rastreamento RDMAIP introduzidos
Em releases anteriores, o módulo kernel resilient_rdmaip usava a função trace_printk() diretamente para depurar sua infraestrutura, o que resultou em um aviso de banner sobre trace_printk() e uso de memória que não era relevante para o módulo kernel resilient_rdmaip.
O UEK R6U3 introduz novos pontos de rastreamento que substituem o uso de trace_printk() para depurar a infraestrutura do módulo kernel resilient_rdmaip.
Cada um dos novos pontos de rastreamento a seguir corresponde aos três níveis de depuração suportados por mensagens de depuração RDMA resilientes:
-
trace_rdma_debug_l1 -
trace_rdma_debug_l2 -
trace_rdma_debug_l3
Aprimoramento de Inicialização Segura
Nesta versão, o Secure Boot foi modificado para também verificar o keyring da plataforma, que inclui a lista MOK (Machine Owner Key, Chave do proprietário da máquina). Esse aprimoramento permite que módulos assinados por chaves personalizadas e de terceiros sejam carregados sempre que a Inicialização Segura estiver ativada.
Implementação de vDPA no Mellanox ConnectX-6Dx para Oracle Linux
O framework vDPA (Virtual Data Path Acceleration) no adaptador de rede Mellanox ConnectX-6Dx foi aprimorado nesta versão. O framework vDPA suporta tecnologias emergentes, como Função Virtual de Virtualização de E/S de Raiz Única (SR-IOV) e Subfunção Mellanox, fornecendo uma camada de abstração e tradução no topo. O vDPA usa o layout do anel Virtio e coloca um único driver Virtio padrão no convidado, que é dissociado da implementação do fornecedor.
No UEK R6U3, melhorias notáveis do vDPA incluem a API da ferramenta de gerenciamento de vDPA para orquestração e configuração, suporte a subfunções vDPA (SF) para ignorar o limite imposto pela especificação PCIe sobre o número de funções virtuais (VFs) por função física (PF) que podem ser criadas e suporte ao driver Mellanox mlx5_vdpa para mapeamento de campainha.
Aperfeiçoamentos de Desempenho de vhost e vhost-scsi
Algumas melhorias de desempenho relacionadas ao armazenamento em blocos para os módulos vhost e vhost-scsi foram introduzidas nesta versão. Em particular, foram feitas melhorias no kernel para impulsionar IOPS (operações de entrada/saída por segundo) para um dispositivo SCSI vhost em dm-multipath.
Além disso, foi feita uma melhoria para permitir que a Qemu criasse vários threads de worker vhost e os mapeasse para diferentes dispositivos SCSI convidados virtqueues.
Política Padrão de Arquitetura de Medição de Integridade
O subsistema IMA (Integrity Measurement Architecture), que está presente no kernel do Linux desde a versão 2.6.30 upstream, mantém uma lista de hashes de arquivos confidenciais em um sistema. Essas informações podem impedir o carregamento de arquivos ou binários que não correspondem a esses hashes. O recurso IMA ajuda a manter a integridade do sistema e também pode ser usado para impedir modificações nos arquivos críticos do sistema. Uma política IMA padrão é definida no UEK R6U3 e também é backported em uma atualização de errata para UEK R6U2. A política atualizada pode ser revisada em /sys/kernel/security/ima/policy:
measure func=KEXEC_KERNEL_CHECK measure func=MODULE_CHECK
A política padrão mede a imagem kexec e todos os binários do módulo kernel. Observe que, embora essa política padrão permita a medição desses itens, ela não define nenhuma política de avaliação.
Recursos de Visualização de Tecnologia
Vários recursos estão sendo investigados e em desenvolvimento para lançamento dentro do UEK R6. Os seguintes recursos estão disponíveis no UEK R6U3 como uma prévia de tecnologia.
-
Programação básica
O recurso de programação de núcleo ativado no kernel limita as tarefas confiáveis a serem executadas simultaneamente em núcleos de CPU que compartilham recursos de computação. Esse recurso reduz determinadas categorias de bugs do processador 'core shared cache' que podem causar vazamento de dados e outras vulnerabilidades relacionadas. O agendamento principal foi ativado no UEK R6 como um recurso de visualização de tecnologia desde o UEK R6U1. Este recurso está em desenvolvimento contínuo e ativo.
-
Cópia no lado do servidor NFS v4.2
A funcionalidade SSC (Server-side Copy) do NFS v4.2 é backported do kernel upstream e está disponível no UEK R6 como uma visualização de tecnologia desde o UEK R6U1. O recurso de cópia no servidor fornece mecanismos que permitem que um cliente NFS copie dados de arquivo em um servidor ou entre dois servidores, sem que eles sejam transmitidos para frente e para trás pela rede por meio do cliente NFS.
Funcionalidades Obsoletas
Os recursos a seguir estão obsoletos nesta release do UEK R6.
Módulo Kernel oracleasm Obsoleto
O módulo do kernel oracleasm está obsoleto nesta release. Observe que, embora o módulo continue sendo suportado no UEK R6U3, ele poderá ser removido em uma release futura do UEK.
DRBD Obsoleto
O módulo do kernel DRBD (Distributed Replicated Block Device) e o pacote drbd-utils associado estão obsoletos com o UEK R6U3. O módulo do kernel DRBD foi introduzido como uma visualização de tecnologia no UEK R4 e continua a ser ativado no UEK R5 e no UEK R6. No entanto, este módulo e o pacote drbd-utils poderão ser removidos em uma release futura do UEK.
Driver Cisco fnic 1.6 não suportado
A Cisco não suporta mais o Driver HBA Cisco FCoE (fnic 1.6) proveniente do kernel upstream e que está disponível na maioria dos kernels, incluindo UEK R5, UEK R6 e UEK R7. A Cisco fornece um driver UCS Linux totalmente suportado (versão 2.0.0.83 e posterior) que é testado e compatível com o Oracle Linux, com o UEK R5 e versões UEK posteriores, na página de download do software Cisco. O pacote de drivers inclui recursos que não estão disponíveis no módulo de driver incluído atualmente, como suporte a NVMe e suporte a várias filas.
Os clientes que estão executando o Oracle Linux em servidores Cisco devem instalar o pacote de driver Cisco para receber correções de driver, atualizações de driver, novo suporte a hardware e novo suporte a recursos. Entre em contato com a Cisco para obter mais informações sobre soluções de driver no Oracle Linux.
Atualizações do driver
O Unbreakable Enterprise Kernel Release 6 suporta um grande número de dispositivos de hardware. Em estreita cooperação com os fornecedores de hardware e armazenamento, a Oracle atualizou vários drivers de dispositivos das versões no Linux 5.4 principal.
Uma lista completa dos módulos de driver incluídos na atualização mais recente do UEK R6, juntamente com informações de versão, é fornecida no apêndice em Driver Modules in Unbreakable Enterprise Kernel Release 6 (x86_64).
Os seguintes novos recursos são notados nos drivers que são enviados com o UEK R6U3:
-
Driver de rede Broadcom BCM573xx
O driver de rede Broadcom BCM573xx,
bnxt_en, foi atualizado para a versão 1.10.2 nesta versão. Um grande número de patches fornecidos pelo fornecedor e upstream está incluído para resolver vários bugs e fornecer recursos e atualizações mais recentes. Notavelmente, a funcionalidade PTP está habilitada e várias melhorias para o RoCE foram incluídas. -
Driver HBA Cisco FCoE
O driver HBA Cisco FCoE,
fnic, foi atualizado para a versão 1.6.0.53 nesta versão. Vários patches upstream estão incluídos para resolver vários bugs.Consulte Driver Cisco fnic 1.6 não suportado.
-
Driver Linux da série Intel Ethernet Connection E800
O driver Linux Intel Ethernet Connection E800 Series,
ice, continua a reportar como versão 0.8.2-k nesta versão, mas inclui um grande número de patches fornecidos pelo fornecedor. Este driver é testado com as mais recentes placas de interface de rede 25 GbE e 100GbE E810. -
Driver SCSI Broadcom Emulex LightPulse Fibre Channel
O driver SCSI Broadcom Emulex LightPulse Fibre Channel,
lpfc, é atualizado para a versão 12.8.0.10, com patches e correções de bugs fornecidos pelo fornecedor. Várias atualizações de patch foram adicionalmente aplicadas ao driver de transporte NVMe Fibre Channel,nvme-fcpara melhoria da funcionalidade e para resolver problemas identificados pelo fornecedor. -
Driver do Adaptador de Rede do Microsoft Azure
O driver do Adaptador de Rede do Microsoft Azure,
mana, está incluído nesta versão. Os patches fornecidos pelo fornecedor e upstream estão incluídos e o driver foi projetado para uso no Oracle Linux 8. -
Driver de dispositivo do Controlador de armazenamento MPI3
O driver de dispositivo do Controlador de Armazenamento MPI3,
mpi3mr, está incluído nesta versão na versão 00.255.45.01. Os patches fornecidos pelo fornecedor e upstream estão incluídos e o driver destina-se a suportar a próxima geração de dispositivos controladores HBA e RAID 96XX da Broadcom. -
Módulo QLogic FastLinQ 4xxxx Core
O módulo QLogic FastLinQ 4xxxx Core,
qed, foi atualizado para a versão 8.37.0.20 e inclui muitos patches adicionais fornecidos pelo fornecedor, incluindo patches para o firmware da versão 8.42.2.0. -
Driver Ethernet QLogic FastLinQ 4xxxx
O driver de Ethernet QLogic FastLinQ 4xxxx,
qede, é atualizado para a versão 8.37.0.20 e inclui patches adicionais fornecidos pelo fornecedor. -
Módulo QLogic FastLinQ 4xxxx FCoE
O módulo FCoE QLogic FastLinQ 4xxxx,
qedf, é atualizado para a versão 8.42.3.0 e inclui patches fornecidos pelo fornecedor para atualizar esse driver de acordo com as alterações de upstream. -
Módulo QLogic FastLinQ 4xxxx iSCSI
O módulo iSCSI QLogic FastLinQ 4xxxx,
qedi, é atualizado para a versão 8.37.0.20 e inclui patches fornecidos pelo fornecedor para atualizar esse driver de acordo com as alterações de upstream. -
Driver HBA QLogic Fibre Channel
O driver HBA Fibre Channel da QLogic,
qla2xxx, foi atualizado para a versão 10.02.00.106-k e inclui vários patches fornecidos pelo fornecedor. -
Driver do controlador Microsemi Smart Family
O driver do Controlador da família inteligente Microsemi,
smartpqi, foi atualizado para a versão 2.1.8-045 e inclui vários patches upstream. -
driver pvpanic
O driver
pvpanic, usado para acionar eventos dentro da libvirtd, no caso de uma máquina virtual convidada encontrar uma pane no kernel, é atualizado para incluir um componente PCI para ativar essa funcionalidade em plataformas Arm (aarch64). Anteriormente, o driver funcionava apenas como um dispositivo de barramento ISA, o que limitava seu uso a plataformas x86.