UEK R6U3の新機能および変更点

次に、Unbreakable Enterprise Kernelリリース6更新3 (UEK R6U3)に含まれる主な新機能と変更点を示します。

カーネル・バージョン

UEK R6U3では、5.4.17-2136バージョンおよびUEK R6カーネルのビルドを使用します。これには、セキュリティおよびバグ修正、およびドライバ更新が含まれます。

カーネルの基本機能

UEK R6U3は、UEK R6と同等のコア・カーネル機能を提供しますが、アップストリームのメインライン・カーネルv5.4.83リリース・タグに更新され、アップストリームのLTSバグ修正と、既存の機能を強化し、マイナーなバグ修正とセキュリティ改善を提供するための追加パッチが含まれています。すべての主な変更は、Oracle Databaseおよびその他のOracleソフトウェアに必要な機能に固有です。

WireGuard通信プロトコル

WireGuard通信プロトコルは、User Datagram Protocol (UDP)を介してトラフィックを渡すことによって、暗号化された仮想プライベート・ネットワーク(VPN)を使用します。

ノート

UEK R6U1以降、UEK R6でテクノロジ・プレビュー機能として有効になっているWireGuardは、UEK R6U3で完全にサポートされています。

WireGuardは、レガシーIPsecおよびOpenVPNトンネリング・プロトコルのセキュアで使いやすく、より高速な交換です。この機能は、実証済みの暗号化プロトコルとアルゴリズムを使用してデータを保護します。IPsecはセキュアなネットワーク通信の標準のままですが、WireGuardの設定と展開はよりシンプルです。比較すると、その構成はSSHの設定に似ています。これらは、WireGuardが使用するより最新の暗号化を使用して、管理者が新しいネットワークを構築することを選択する理由の一部です。

WireGuardは識別と暗号化に公開鍵暗号化を使用し、OpenVPNはこれらのタスクに証明書を使用します。WireGuardでは、安全なキー生成と管理がバックグラウンドで処理されます。

WireGuardは、その構成およびデプロイメントにサーバー/クライアント・モードを使用します。WireGuardは、IPv4ネットワークとIPv6ネットワークの両方で構成およびデプロイできます。

WireGuardを構成およびデプロイするには、wireguard-toolsパッケージをサーバー・システムおよびクライアント・システムにインストールする必要があります。これにより、両方のホスト間の通信が可能になります。

次のコマンドを使用して、wireguard-toolsパッケージがインストールされていることを確認できます。

$ rpm -qa | grep wireguard
                  

次のコマンドを使用して、wireguardカーネル・モジュールがシステムに存在することを確認できます。

$ modinfo wireguard
                  

詳細およびステップバイステップの手順については、Oracle Linux: 仮想プライベート・ネットワークの構成を参照してください。

HugeTLBページのvmemmap削減機能の追加

このリリースには、各hugetlbpageに関連付けられている一部のvmemmapページ(構造体のページ構造)を解放する拡張機能が含まれています。HugeTLBページの冗長なページ構造体を削除することで、他の用途のためにメモリーをメンバー・アロケータに戻すことができます。

この機能を有効にするには、hugetlb_free_vmemmap=onオプションを使用してシステムをブートします。有効にすると、ブート中に次のようなメッセージが表示されます。

HugeTLB: can free 4094 vmemmap pages for hugepages-1048576kB
HugeTLB: can free 6 vmemmap pages for hugepages-2048kB

io_uring非同期I/Oフレームワーク

このリリースでは、io_uring非同期I/O (AIO)フレームワークをさらに統合しました。io_uringは、送信および完了キュー・リングを提供するLinuxカーネル・インタフェースで、コピーを回避するためにカーネルとユーザー領域間で共有されます。

このリリースでio_uringフレームワークに追加された、より確立された機能に加えて、UEK R6U3には、次の機能を提供する新しいポーリングI/Oモード(IORING_SETUP_IOPOLL)機能も含まれています。

  • 標準ファイル制御操作: FALLOCATEOPENAT2STATXMADVISEFADVISEおよびTEE

  • ソケットに対する操作: ACCEPTCONNECTSEND(2)およびRECV(2)メッセージおよびEPOLL_CTL

  • 別のリングからのio-wq workqueue (IORING_SETUP_ATTACH_WQ)の共有機能。

  • カーネル内のio_uringフレームワークからサポートされている機能に関する情報をプローブおよび受信するためのIORING_REGISTER_PROBEコールの追加。

  • SPLICE(2)コールを含めます。

  • IORING_REGISTER_RESTRICTIONSコールを含めると、アプリケーションは信頼できないアプリケーションまたはゲストによってファイル記述子へのアクセス権を付与できます。

  • IORING_OP_PROVIDE_BUFFERSコール: バッファ登録インフラストラクチャを使用して、バッファIDおよびバッファ・グループIDに関連付けられたaddr/lenの受渡しを有効にします。

  • ベクトル読取りコールのIORING_BUFFER_SELECTサポート(RING_OP_READVおよびIORING_OP_READVMSG)。

kabi_whitelistパッケージ名kabi_stablelist

kabi_whitelistパッケージは、kabi_stablelistに名前が変更されています。この変更は、問題のある攻撃的な言語を置き換えるためのOracleのコミットメントに従って行われました。

ノート

Oracle Linux 8リリースでは、同様の名前変更がすでに行われています。

AMDプラットフォームでのネストされた仮想化

このリリースでは、AMD 64ビット(x86_64)プラットフォームでのネストされた仮想化の機能が、多数の安定性修正を実装することで強化されています。

NVMeの改善

NVMe標準の変更に対応し、テクノロジが進化および変化し続ける中、Non-Volatile Memory Express (NVMe)機能に対して継続的な改善が行われています。レガシー・プロトコルと比較して、NVMeは高速ストレージ・メディアにアクセスするための高度な機能を提供します。

いくつかのバグ修正に加えて、このリリースではNVMeターゲット・パススルー機能が導入されています。ターゲットパススルー機能を使用すると、NVM Express over Fabrics (NVMe-oF)仕様を使用して NVMeコントローラ全体をエクスポートできます。この方法でエクスポートすると、各ネームスペースをブロック・デバイスとしてエクスポートするのではなく、すべてのNVMeコマンドが、管理コマンドとベンダー固有コマンド(VUC)の両方を含む、変更されていない特定のコントローラに渡されます。passthruターゲットは、特定のデバイスのすべてのネームスペースをリモート・ホストに公開します。

新しいRDMAIP Tracepointが導入されました

以前のリリースでは、resilient_rdmaipカーネル・モジュールは、インフラストラクチャのデバッグにtrace_printk()関数を直接使用していました。その結果、trace_printk()に関するバナー警告と、resilient_rdmaipカーネル・モジュールに関連しないメモリー使用量が発生していました。

UEK R6U3では、resilient_rdmaipカーネル・モジュールのインフラストラクチャをデバッグするためのtrace_printk()の使用に代わる新しいトレース・ポイントが導入されています。

次の各新しいトレースポイントは、回復可能なRDMAデバッグメッセージによってサポートされる3つのデバッグレベルに対応します。

  • trace_rdma_debug_l1

  • trace_rdma_debug_l2

  • trace_rdma_debug_l3

セキュア・ブートの拡張機能

このリリースでは、セキュア・ブートが変更され、マシン所有者キー(MOK)リストを含むプラットフォーム・キーリングが追加でチェックされるようになりました。この機能拡張により、セキュア・ブートが有効になっている場合は常に、サード・パーティおよびカスタムのキー署名付きモジュールをロードできます。

Mellanox ConnectX-6Dx for Oracle LinuxでのvDPA実装

このリリースでは、Mellanox ConnectX-6Dxネットワークアダプタ上のVirtual Data Path Acceleration (vDPA)フレームワークが改善されています。vDPAフレームワークは、抽象化および翻訳レイヤーを上部に提供することで、Single Root I/O Virtualization (SR-IOV) Virtual FunctionやMellanox SubFunctionなどの最先端テクノロジをサポートします。vDPAはVirtioリング・レイアウトを使用し、ベンダー実装から切り離された単一の標準Virtioドライバをゲストに配置します。

UEK R6U3の注目すべきvDPAの改善には、オーケストレーションおよび構成のためのvDPA管理ツールAPI、作成可能な物理機能(PF)ごとの仮想機能(VF)数に対するPCIe仕様の課せられた制限のバイパスに対するvDPA SubFunction (SF)のサポート、ドアベル・マッピングに対するMellanox mlx5_vdpaドライバのサポートなどがあります。

vhostとvhost-scsiのパフォーマンス改善

このリリースでは、vhostおよびvhost-scsiモジュールのブロック・ストレージに関連するパフォーマンスの一部が改善されています。特に、vhost SCSIデバイスのIOPS (1秒当たりの入力/出力操作)をdm-multipathよりも強化するために、カーネルの改善が行われました。

また、Qemuで複数のvhostワーカー・スレッドを作成し、それらを異なるゲストSCSIデバイスvirtqueuesにマップできるように改善されました。

整合性測定アーキテクチャ・デフォルト・ポリシー

Integrity Measurement Architecture (IMA)サブシステムは、アップストリーム2.6.30リリース以降に Linuxカーネルに存在しており、システム上の機密ファイルのハッシュのリストを保持しています。この情報により、これらのハッシュと一致しないファイルまたはバイナリのロードを回避できます。IMA機能は、システムの整合性を維持するのに役立ちます。また、システムの重要なファイルへの変更を防ぐためにも使用できます。デフォルトのIMAポリシーはUEK R6U3で設定され、UEK R6U2のエラッタ更新でもバックポートされます。更新されたポリシーは、/sys/kernel/security/ima/policyで確認できます。

measure func=KEXEC_KERNEL_CHECK
measure func=MODULE_CHECK

デフォルトのポリシーは、kexecイメージおよびすべてのカーネル・モジュール・バイナリを測定します。このデフォルト・ポリシーでは、これらの項目の測定は可能ですが、評価ポリシーは定義されません。

テクノロジ・プレビュー機能

いくつかの機能が調査中であり、UEK R6でのリリースに向けて開発が継続中です。UEK R6U3では、次の機能をテクノロジ・プレビューとして使用できます。

  • コア・スケジューリング

    カーネルで有効になっているコアスケジューリング機能は、信頼できるタスクを、コンピュートリソースを共有するCPUコアで同時に実行するように制限します。この機能は、データ漏洩やその他の関連する脆弱性を引き起こす可能性のある「コア共有キャッシュ」プロセッサのバグの特定のカテゴリに対して軽減します。UEK R6U1以降、UEK R6ではコア・スケジューリングがテクノロジ・プレビュー機能として有効になっています。この機能は現在進行中であり、アクティブな開発中です。

  • NFS v4.2サーバー側のコピー

    NFS v4.2サーバー側コピー(SSC)機能は、アップストリーム・カーネルからバックポートされ、UEK R6U1以降、UEK R6でテクノロジ・プレビューとして使用できるようになりました。サーバー側のコピー機能には、NFSクライアントがNFSクライアントを介してネットワーク経由で送受信されることなく、サーバー上または2つのサーバー間でファイルデータをコピーできるようにするメカニズムが用意されています。

非推奨の機能

このUEK R6リリースでは、次の機能が非推奨になりました。

oracleasmカーネル・モジュール(非推奨)

oracleasmカーネル・モジュールは、このリリースでは非推奨です。モジュールは引き続きUEK R6U3でサポートされますが、将来のUEKリリースで削除される可能性があります。

DRBD非推奨

DRBD (Distributed Replicated Block Device)カーネル・モジュールおよび関連するdrbd-utilsパッケージは、UEK R6U3で非推奨になりました。DRBDカーネル・モジュールは、UEK R4でテクノロジ・プレビューとして導入され、UEK R5およびUEK R6で引き続き有効になっています。ただし、このモジュールおよびdrbd-utilsパッケージは、今後のUEKリリースで削除される可能性があります。

Cisco fnic 1.6ドライバはサポートされていません

Ciscoでは、アップストリーム・カーネルから取得され、UEK R5、UEK R6、UEK R7などのほとんどのカーネルで使用可能なCisco FCoE HBAドライバ(fnic 1.6)がサポートされなくなりました。Ciscoは、Ciscoソフトウェア・ダウンロード・ページで、Oracle Linux、UEK R5以降のUEKリリースでテストおよび互換性がある、完全にサポートされているUCS Linuxドライバ(バージョン2.0.0.83以降)を提供します。ドライバパッケージには、NVMeサポートやマルチキューサポートなど、現在含まれているドライバモジュールで使用できない機能が含まれています。

CiscoサーバーでOracle Linuxを実行しているお客様は、ドライバの修正、ドライバの更新、新しいハードウェア・サポートおよび新機能のサポートを受けるために、Ciscoドライバ・パッケージをインストールする必要があります。Oracle Linuxのドライバ・ソリューションの詳細は、Ciscoにお問い合せください。

ドライバの更新

Unbreakable Enterprise Kernelリリース6では、多くのハードウェア・デバイスをサポートします。ハードウェアおよびストレージ・ベンダーと緊密に連携し、Oracleでは、メインラインLinux 5.4のバージョンからデバイス・ドライバにいくつか更新しました。

UEK R6の最新の更新に含まれるドライバ・モジュールの完全なリストとバージョン情報は、Unbreakable Enterprise Kernelリリース6 (x86_64)のドライバ・モジュールの付録に記載されています。

UEK R6U3に同梱されているドライバには、次の新機能が記載されています。

  • Broadcom BCM573xxネットワーク・ドライバ

    Broadcom BCM573xxネットワーク・ドライバbnxt_enは、このリリースでバージョン1.10.2に更新されています。様々なバグを解決し、より新しい機能および更新を提供するために、多数のアップストリームおよびベンダー提供のパッチが含まれています。特に、PTP機能が有効になっており、RoCEのいくつかの改善が含まれています。

  • Cisco FCoE HBAドライバ

    このリリースでは、Cisco FCoE HBAドライバ fnicがバージョン 1.6.0.53に更新されています。様々なバグを解決するためのアップストリーム・パッチがいくつか含まれています。

    Cisco fnic 1.6 driver Unsupportedを参照してください。

  • Intel Ethernet Connection E800シリーズ Linuxドライバ

    Intel Ethernet Connection E800シリーズの Linuxドライバ(ice)は、このリリースでは引き続きバージョン0.8.2-kとして報告されますが、ベンダー提供のパッチが多数含まれています。このドライバは、最新の25 GbEおよび100GbE E810ネットワークインタフェースカードに対してテストされます。

  • Broadcom Emulex LightPulse Fibre Channel SCSIドライバ

    Broadcom Emulex LightPulse Fibre Channel SCSIドライバ(lpfc)は、ベンダー提供のパッチおよびバグ修正により、バージョン12.8.0.10に更新されます。NVMeファイバ・チャネル・トランスポート・ドライバnvme-fcにいくつかのパッチ更新が追加で適用され、機能が改善され、ベンダーによって特定された問題が解決されました。

  • Microsoft Azureネットワークアダプタドライバ

    Microsoft Azureネットワーク・アダプタ・ドライバmanaがこのリリースに含まれています。アップストリームおよびベンダー提供のパッチが含まれ、ドライバはOracle Linux 8での使用を目的としています。

  • MPI3ストレージコントローラのデバイスドライバ

    MPI3ストレージコントローラのデバイスドライバ mpi3mrは、このリリースのバージョン 00.255.45.01に含まれています。アップストリームおよびベンダー提供のパッチが含まれ、ドライバは、Broadcomの次世代の96XX HBAおよびRAIDコントローラデバイスをサポートすることを目的としています。

  • QLogic FastLinQ 4xxxxコアモジュール

    QLogic FastLinQ 4xxxx Coreモジュール(qed)はバージョン 8.37.0.20に更新され、バージョン 8.42.2.0ファームウェアのパッチを含む多くの追加のベンダー提供パッチが含まれています。

  • QLogic FastLinQ 4xxxx Ethernetドライバ

    QLogic FastLinQ 4xxxx Ethernetドライバ(qede)がバージョン 8.37.0.20に更新され、ベンダーが提供する追加のパッチが含まれています。

  • QLogic FastLinQ 4xxxx FCoEモジュール

    QLogic FastLinQ 4xxxx FCoEモジュール(qedf)はバージョン 8.42.3.0に更新され、アップストリームの変更に合わせてこのドライバを更新するためのベンダー提供のパッチが含まれています。

  • QLogic FastLinQ 4xxxx iSCSIモジュール

    QLogic FastLinQ 4xxxx iSCSIモジュール qediはバージョン 8.37.0.20に更新され、アップストリームの変更に合わせてこのドライバを更新するためのベンダー提供のパッチが含まれています。

  • QLogic Fibre Channel HBAドライバ

    QLogicファイバチャネルHBAドライバ qla2xxxがバージョン 10.02.00.106-kに更新され、ベンダー提供のいくつかのパッチが含まれています。

  • Microsemi Smart Familyコントローラ・ドライバ

    Microsemi Smart Family Controllerドライバ(smartpqi)は、バージョン2.1.8-045に更新され、いくつかのアップストリーム・パッチが含まれています。

  • pvpanicドライバ

    ゲスト仮想マシンでカーネル・パニックが発生した場合にlibvirtd内のイベントをトリガーするために使用されるpvpanicドライバが更新され、Arm (aarch64)プラットフォームでこの機能を有効にするようにPCIコンポーネントが追加されます。以前は、ドライバはISAバスデバイスとしてのみ機能し、x86プラットフォームでの使用を制限していました。