Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Bug]: Precompiled node pools drop kernels that sanitize to the same name

オープン
#3,098 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@SebTardif がすでに取り組んでいます。

2026年10月20日 から。

  • #3099 @SebTardif による — オープン

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
20/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
停滞
技術スタック
go, kubernetes

調査の方向性

Read internal/state/nodepool.go and the existing TestGetSanitizedKernelVersion test. Run the reported command, go test -count=1 -run TestGetNodePoolsKeepsPrecompiledKernelsThatSanitizeTogether ./internal/state/, to see the failing case. Done means nodes with the same raw kernel share a pool, while kernels that sanitize to the same name get separate pools with their own selectors and image tags; a linked pull request is already open.

索引モデルが issue の本文から書いたものです。

説明

Describe the bug

With spec.usePrecompiled: true, getNodePools keeps one node pool per sanitized kernel name. getSanitizedKernelVersion strips x86_64, aarch64, and an optional _64k. Two nodes whose raw feature.node.kubernetes.io/kernel-version.full values differ only by architecture or page size collapse into one pool.

The surviving pool's node selector and driver image tag use the first node's raw kernel. The other nodes get no driver DaemonSet. The NVIDIADriver can still become Ready.

This was found by reading internal/state/nodepool.go on main (operator v26.7.2). It is not a live cluster repro.

To reproduce

From the code path. TestGetSanitizedKernelVersion already expects these two strings to become 5.14.0-427.37.1.el9.4:

  • 5.14.0-427.37.1.el9_4.x86_64
  • 5.14.0-427.37.1.el9_4.aarch64

Put one GPU node on each kernel, with the same OS, under one NVIDIADriver that sets usePrecompiled: true.

On current main, getNodePools returns one pool. The unit test is:

go test -count=1 -run TestGetNodePoolsKeepsPrecompiledKernelsThatSanitizeTogether ./internal/state/

That test fails with 1 pool instead of 2.

Expected behavior

One pool per raw kernel. Nodes with the same raw kernel still share a pool. The sanitized name can stay shared. The selector and the image tag for each pool must keep that pool's own raw kernel.

I will open a pull request with that change.

主要言語
Go
スター
2.9k
フォーク
576
平均マージ
1日 14時間
マージ済み PR(30日)
69

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

NVIDIA/gpu-operator のほかの issue

NVIDIA/gpu-operator の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。