Linux コミュニティのカーネルパッチが eBPF プログラムに影響を与え、一部のノードで CPU 使用率が一時的に異常に高騰する可能性があります。この問題は、ご利用のクラスターが Terway CNI プラグインを使用しており、eBPF ベースの DataPath V2 機能が有効になっている場合に発生します。DataPath V2 は、NetworkPolicy を有効にすると自動的に有効になります。
影響範囲
次のすべての条件を満たすノードが影響を受けます。
-
ノードのオペレーティングシステムが Alibaba Cloud Linux 3 または ContainerOS であり、カーネルバージョンが 5.10.134-15 から 5.10.134-19.1 (両端を含む) の範囲内であること。
-
クラスターが Terway CNI プラグインを使用しており、DataPath V2 モードが有効になっていること。DataPath V2 は、NetworkPolicy サポートが有効になっている場合に自動的に有効になります。
ソリューション
ノードの修正要否確認
まず、クラスター内のノードが是正処置を必要とするかどうかを確認します。以下のコマンドをクラスター内のノードでバッチ実行するには、ECS クラウドアシスタント を使用します:
ノードに修正が必要な場合、次の結果が返されます。
Alibaba Cloud Linux 3 ノード
/sys/fs/bpf/tc/globals/cilium_ct4_global が検出されました。カーネルバージョンの確認を続行しています...
現在のカーネルリリース: 5.10.134-18.al8.x86_64
検出されたカーネルタイプ: al8
カーネルバージョン 5.10.134-18 は範囲 5.10.134-15~5.10.134-19.1 内です。
kpatch_22519882 モジュールは読み込まれていません。修正プログラムパッケージ 'kernel-hotfix-22519882-5.10.134-18' をインストールする必要があります。
ドライランモードで実行中です。修正プログラムをインストールするには、2y を使用します。
ContainerOS ノード
Detected /sys/fs/bpf/tc/globals/cilium_ct4_global, proceeding with kernel version check...
Current kernel release: 5.10.134-18.0.1.lifsea8.x86_64
Detected kernel type: lifsea8
Kernel version 5.10.134-18.0 is within range 5.10.134-15 ~ 5.10.134-19.1.
WARNING: This is a lifsea8 kernel (5.10.134-18.0.1.lifsea8.x86_64).
The issue cannot be fixed by hotpatch. You must upgrade to ContainerOS 3.5.1 or later.
See official documentation or contact support for upgrade instructions.
次のいずれかの結果が返された場合、ノードに修正は不要です。
-
ノードで Terway eBPF 機能が有効になっていません。パッチのインストールはスキップされます。
Path /sys/fs/bpf/tc/globals/cilium_ct4_global does not exist, skipping check. -
パッチはすでにインストールされています。再インストールは不要です。
... kpatch_22519882 module is already loaded, no actions needed.
修正の適用
ContainerOS と Alibaba Cloud Linux 3 では、異なる修正手順が適用されます。
ContainerOS ノードの修正
ContainerOS ノードの場合、この問題は今後の ContainerOS 3.5.1 リリースで自動的に修正されます。ContainerOS イメージリリースノートをご参照ください。バージョン 3.5.1 が公開された後、バージョンをアップグレードしてください。詳細については、「オペレーティングシステムの変更」をご参照ください。
Alibaba Cloud Linux 3 ノードの修正
新しいスケールアウトノードへのカスタムデータの追加
新しいノードプールを作成する場合や既存のノードプールを編集する場合は、事前定義済みカスタムデータ フィールドに次のスクリプトを追加します。これにより、スケールアウトされた新しいノードが起動後に自動的にカーネルライブパッチをインストールできるようになります。詳細な手順については、「ノードプールの作成と管理」をご参照ください。

既存のノードへのパッチのインストール
既存の Alibaba Cloud Linux 3 ノードの場合、ECS クラウドアシスタントを使用して、修正が必要なノードで次のコマンドを実行します。
期待される出力は次のとおりです。これは、パッチのインストールが完了したことを示しています。
......
Total 1.0 MB/s | 52 kB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : kpatch-dnf-0.9.7_0.4-2.0.1.al8.noarch 1/3
Running scriptlet: kpatch-dnf-0.9.7_0.4-2.0.1.al8.noarch 1/3
To enable automatic kpatch-patch subscription, run:
$ dnf kpatch auto
Installing : kpatch-0.9.7-2.0.1.al8.noarch 2/3
Running scriptlet: kernel-hotfix-22519882-5.10.134-18-1.0-20250804154834.al8.x86_64 3/3
Installing : kernel-hotfix-22519882-5.10.134-18-1.0-20250804154834.al8.x86_64 3/3
Running scriptlet: kernel-hotfix-22519882-5.10.134-18-1.0-20250804154834.al8.x86_64 3/3
Created symlink /etc/systemd/system/multi-user.target.wants/kpatch.service → /usr/lib/systemd/system/kpatch.service.
installing /var/khotfix/5.10.134-18.al8.x86_64/22519882/kpatch-22519882.ko (5.10.134-18.al8.x86_64)
loading patch module: /var/khotfix/5.10.134-18.al8.x86_64/22519882/kpatch-22519882.ko
Verifying : kpatch-0.9.7-2.0.1.al8.noarch 1/3
Verifying : kpatch-dnf-0.9.7_0.4-2.0.1.al8.noarch 2/3
Verifying : kernel-hotfix-22519882-5.10.134-18-1.0-20250804154834.al8.x86_64 3/3
Installed:
kernel-hotfix-22519882-5.10.134-18-1.0-20250804154834.al8.x86_64 kpatch-0.9.7-2.0.1.al8.noarch kpatch-dnf-0.9.7_0.4-2.0.1.al8.noarch
Complete!
Installation successful.
参考文献
Alibaba Cloud Linux 3 における eBPF プログラムの LRU ハッシュによる高 CPU 使用率のトラブルシューティング