docs: default RuntimeClass needs the resource admission labels
維護者通常 1 天內回覆
還沒有人認領這個 Issue。
評估
- 難度
- 1/5
- 預估耗時
- 1-3 小時
- 新手友好度
- 78/100
- Issue 類型
- 文件
- 描述清晰度
- 描述清楚
- 活躍度
- 活躍
- 技術堆疊
- docker, helm, kubernetes, rust
研究方向
從 Helm chart values 檔案中 server.defaultRuntimeClassName 的註解,以及閘道設定文件中關於資源準入(admission)的章節開始。根據 issue 反映,這兩處都沒有提到標籤要求。在 Kubernetes 驅動程式的程式碼中確認預設 RuntimeClass 在何處與準入標籤進行比對,並注意 supervisor_runtime_class_name 未被檢查。當兩處文件都說明了標籤要求與豁免情況,且措辭與重現步驟一致時,即為完成。
由索引模型根據 Issue 內容生成。
描述
User Story
I use OpenShell's Kubernetes driver and I am running its sandboxes under Kata Containers for VM-level isolation. I directly hit this while setting default_runtime_class_name to a Kata RuntimeClass on a test cluster. This affects anyone who sets a default RuntimeClass for all sandboxes.
Problem Statement
With server.defaultRuntimeClassName (default_runtime_class_name) set to the name of a RuntimeClass that has no labels, every openshell sandbox create fails with external resource not admitted by required labels. The docs for defaultRuntimeClassName and the resource admission section on the gateway configuration page do not say that the default RuntimeClass has to carry the admission label. The admission section only describes resources that a caller selects. supervisor_runtime_class_name is not subject to the same check, which is also not documented.
Impact / Why This Matters
Operators who configure a default RuntimeClass get a failing sandbox create and nothing in the chart values or the configuration docs points at the cause. The workaround is to find the label requirement in the admission section and label the RuntimeClass (openshell.ai/sandbox-attachable=true by default). Until then no sandbox can be created on that gateway.
Acceptance Criteria
- The documentation next to
defaultRuntimeClassName/default_runtime_class_namestates that the RuntimeClass needs the resource admission labels. - The resource admission section states that the check covers the default RuntimeClass and that
supervisor_runtime_class_nameis not checked.
Reproduction Steps
- Create a RuntimeClass with no labels, for example one named
my-runtimewhose handler exists on the nodes. - Install the chart with
server.defaultRuntimeClassName=my-runtime. - Run
openshell sandbox create --name t1 --no-tty -- true. - The command fails with
RuntimeClass 'my-runtime': external resource not admitted by required labels. - Run
kubectl label runtimeclass my-runtime openshell.ai/sandbox-attachable=trueand repeat step 3. It succeeds.
Suggested UX (if applicable)
Documentation only. No behavior change is requested.
Environment
- OpenShell: gateway 0.1.9-dev.30+g2e5589b21 (built from main at 2e5589b21), Kubernetes driver, Helm chart from the same commit
- OS: Fedora, kind v1.36 test cluster
- Runtime: Kata Containers 4.3.1 (QEMU), RuntimeClass handler
kata-qemu - The check was run with an AI coding agent (opencode) under my direction. I have not hit this in production.
Logs
Error: × code: 'The system is not in a state required for the operation's
│ execution', message: "RuntimeClass 'kata-qemu-unl': external resource not
│ admitted by required labels"
- 主要語言
- Rust
- 星號
- 21.5k
- 分支
- 2.1k
- 平均合併
- 2 天 21 小時
- 30 天內合併 PR
- 250
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
NVIDIA/OpenShell 的其他 Issue
-
state:triage-needed
難度 2/5 1-3 小時 新手友好度 62/100
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 84/100
維護者通常 1 天內回覆
-
bug(python): OIDC refresh drops the gateway's oidc_scopes可能重新可做 @jyotir07 於 19 天前認領,目前沒有進行中的 PR。 未關閉state:triage-needed
難度 2/5 1-3 小時 新手友好度 84/100
NVIDIA/OpenShell#4919 · 3 則留言 ·
維護者通常 1 天內回覆
-
bug: workspace access hint suggests a --subject command that fails for hyphen-leading OIDC subjects可能重新可做 關聯的 PR 已關閉且未合併。 未關閉
難度 2/5 1-3 小時 新手友好度 78/100
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 76/100
維護者通常 1 天內回覆
相似的 Issue
-
comp-formats
難度 2/5 半天 新手友好度 64/100
ClickHouse/ClickHouse#131694 ·
維護者通常 1 天內回覆
-
cli: `execCargoMetadata` decodes stdout per chunk, corrupting non-ASCII paths across pipe boundaries未關閉
難度 2/5 1-3 小時 新手友好度 68/100
維護者通常 1 天內回覆
-
enhancement
難度 2/5 1-3 小時 新手友好度 72/100
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 68/100
Copperpour/Copperpour#500 ·
維護者通常 1 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 82/100
storytold/photocraft#14822 ·
維護者通常 1 天內回覆