You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 2d129ac
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: .agents/skills/debug-openshell-cluster/SKILL.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -572,6 +572,7 @@ openshell logs <sandbox-name>
572
572
| Kubernetes gateway pod pending | PVC unbound, taint, selector, or insufficient resources |`kubectl -n openshell describe pod <pod>`|
573
573
| Kubernetes sandbox pod stuck pending, workspace PVC unbound | Cluster has no default `StorageClass` and OpenShell does not set `storageClassName` on the workspace PVC (clusters with a default `StorageClass` bind fine without it) |`kubectl -n openshell describe pvc`; set `server.workspaceStorageClass` (gateway config `workspace_storage_class`) to a valid `StorageClass`|
574
574
| Kubernetes gateway pod crash loops | Missing secret, bad DB URL, bad TLS config |`kubectl -n openshell logs deployment/openshell -c openshell-gateway` or `kubectl -n openshell logs statefulset/openshell -c openshell-gateway`|
575
+
| Gateway logs `Agent Sandbox extension APIs are unavailable` and Kubernetes creates cold sandboxes | Agent Sandbox was installed with `manifest.yaml` only while OpenShell warm pooling defaults are enabled | Apply Agent Sandbox `extensions.yaml`, or set `server.warmPooling.enabled=false`; then restart the gateway so the driver revalidates `SandboxClaim`, `SandboxTemplate`, and `SandboxWarmPool` APIs |
575
576
| CLI TLS error | Local mTLS bundle does not match server cert/CA | Check `~/.config/openshell/gateways/<name>/mtls/`|
| Gateway fails before serving health after enabling an interceptor | Interceptor endpoint unavailable or manifest/binding validation failed | Gateway and interceptor logs; interceptor socket; `binding_policy`, phases, and failure policy |
Copy file name to clipboardExpand all lines: docs/kubernetes/setup.mdx
+10-2Lines changed: 10 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,7 +22,7 @@ Make sure the following are in place before you install.
22
22
|---|---|---|
23
23
| Kubernetes 1.29+ with RBAC enabled | Yes | No additional notes. |
24
24
| Helm 3.x | Yes | No additional notes. |
25
-
| Agent Sandbox controller and CRDs | Yes | Install before the OpenShell chart. Refer to [Install Agent Sandbox](#install-agent-sandbox). |
25
+
| Agent Sandbox controller and CRDs | Yes | Install before the OpenShell chart. Refer to [Install Agent Sandbox](#install-agent-sandbox). Install `extensions.yaml` too when warm pooling is enabled. |
26
26
| cert-manager | No | Refer to [Managing Certificates](/kubernetes/managing-certificates). Use cert-manager only if you prefer it over the built-in PKI job. |
27
27
| Kubernetes Gateway API | No | Refer to [Ingress](/kubernetes/ingress). Use it only for external access without port-forwarding. |
This creates the `agent-sandbox-system` namespace, installs the `sandboxes.agents.x-k8s.io` CRD, and starts the controller.
40
40
41
+
Install the Agent Sandbox extension APIs when Kubernetes warm pooling is enabled. The OpenShell chart defaults warm pooling on, but it does not install the `SandboxClaim`, `SandboxTemplate`, or `SandboxWarmPool` CRDs:
If you do not install `extensions.yaml`, set `server.warmPooling.enabled=false`. Otherwise OpenShell disables warm pooling and template reconciliation at startup and falls back to direct `Sandbox` creation.
48
+
41
49
<Note>
42
50
**Air-gapped clusters:** mirror the manifest above and the `registry.k8s.io/agent-sandbox/agent-sandbox-controller` image referenced inside it to your internal registry, then point the manifest's image reference at your mirror before applying. You will also need to mirror the OpenShell gateway and sandbox images — see the chart's `image.repository` value for the gateway and `server.sandboxImage` / `server.supervisorImage` for the sandbox runtime.
43
51
</Note>
@@ -258,7 +266,7 @@ when `server.warmPooling.enabled=true`:
258
266
| `""` | `nodes` | get, list, watch |
259
267
| `""` | `namespaces` | get |
260
268
| `extensions.agents.x-k8s.io` | `sandboxclaims` | get, list, watch; create, delete when warm pooling is enabled |
261
-
| `extensions.agents.x-k8s.io` | `sandboxtemplates`, `sandboxwarmpools` | get, list, watch; create, patch, update, delete when profile reconciliation is enabled |
269
+
| `extensions.agents.x-k8s.io` | `sandboxtemplates`, `sandboxwarmpools` | get, list, watch; create, patch, update, delete when template reconciliation is enabled |
262
270
263
271
To use an existing ServiceAccount instead of creating one, set `serviceAccount.create=false` and supply its name:
0 commit comments