K8sHelper
public class K8sHelper
io/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:50–407K 8 s Helper,在隔离环境中安全执行代码和工具。位于 io.agentscope.extensions.sandbox.kubernetes.client.internal 包。核心成员包括 getClient、createSandboxClaim、deleteSandboxClaim、getSandboxClaim、listSandboxClaims、getSandbox。
Encapsulates Kubernetes CRD operations for agent-sandbox lifecycle management.
Mirrors the Python SDK's K8sHelper.
构造器摘要Constructor Summary
| 构造器Constructor | 说明Description |
|---|---|
public K8sHelper(KubernetesClient client) | 初始化 `K8sHelper` 实例。 Creates a new instance. |
方法摘要Method Summary
构造器详情Constructor Detail
K8sHelper
public K8sHelper(KubernetesClient client)
初始化 K8sHelper 实例。
Creates a new instance.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
client | KubernetesClient | 客户端(类型 `KubernetesClient`)。The client. |
io/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:56–58方法详情Method Detail
getClient
public KubernetesClient getClient()
获取客户端。
Returns the client.
KubernetesClientio/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:60–62createSandboxClaim
public SandboxClaim createSandboxClaim(String name, String warmPool, String namespace, Map<String, String> labels, Long shutdownAfterSeconds, Map<String, String> podLabels, Map<String, String> podAnnotations)
创建 createSandboxClaim。
Creates a SandboxClaim referencing the given warm pool.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
name | String | 名称(类型 `String`)。claim name |
warmPool | String | warm 连接池(类型 `String`)。warm pool name |
namespace | String | 命名空间(类型 `String`)。Kubernetes namespace |
labels | Map<String, String> | labels(类型 `Map`)。optional claim labels |
shutdownAfterSeconds | Long | shutdown 之后秒(类型 `Long`)。optional TTL; when set, populates `spec.lifecycle` |
podLabels | Map<String, String> | pod Labels(类型 `Map`)。optional labels for `spec.additionalPodMetadata` |
podAnnotations | Map<String, String> | 用于`spec.additionalPodMetadata`的可选注解。optional annotations for `spec.additionalPodMetadata` |
SandboxClaimio/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:76–125deleteSandboxClaim
public void deleteSandboxClaim(String name, String namespace)
删除 deleteSandboxClaim。
Deletes a SandboxClaim.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
name | String | 名称(类型 `String`)。claim name |
namespace | String | 命名空间(类型 `String`)。namespace |
io/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:133–146getSandboxClaim
public SandboxClaim getSandboxClaim(String name, String namespace)
获取 getSandboxClaim。
Gets a SandboxClaim, or null if not found.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
name | String | 名称(类型 `String`)。claim name |
namespace | String | 命名空间(类型 `String`)。namespace |
SandboxClaimio/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:155–157listSandboxClaims
public List<String> listSandboxClaims(String namespace, String labelSelector)
列出 listSandboxClaims。
Lists SandboxClaim names in a namespace, optionally filtered by label selector.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
namespace | String | 命名空间(类型 `String`)。namespace |
labelSelector | String | 标签 Selector(类型 `String`)。optional label selector |
List<String>io/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:166–181getSandbox
public SandboxResource getSandbox(String name, String namespace)
获取沙箱。
Gets a Sandbox resource, or null if not found.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
name | String | 名称(类型 `String`)。sandbox name |
namespace | String | 命名空间(类型 `String`)。namespace |
SandboxResourceio/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:190–192resolveSandboxName
public String resolveSandboxName(String claimName, String namespace, long timeoutSeconds) throws Exception
解析沙箱名称。
Watches the SandboxClaim until the sandbox name is resolved in its status.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
claimName | String | claim 名称(类型 `String`)。claim name |
namespace | String | 命名空间(类型 `String`)。namespace |
timeoutSeconds | long | 超时秒(类型 `long`)。timeout |
StringException可能抛出 `Exception`。Thrown when the operation cannot be completed.
io/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:202–264waitForSandboxReady
public SandboxResource.SandboxIdentity waitForSandboxReady(String sandboxName, String namespace, long timeoutSeconds) throws Exception
等待用于沙箱就绪。
Waits for a Sandbox resource to become Ready.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
sandboxName | String | 沙箱名称(类型 `String`)。sandbox name |
namespace | String | 命名空间(类型 `String`)。namespace |
timeoutSeconds | long | 超时秒(类型 `long`)。timeout |
SandboxResource.SandboxIdentityException可能抛出 `Exception`。Thrown when the operation cannot be completed.
io/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:274–321selectPodIp
public static String selectPodIp(List<String> podIPs)
设置该参数。
Selects a preferred pod IP (first IPv4 if present, otherwise first entry).
| 名称Name | 类型Type | 说明Description |
|---|---|---|
podIPs | List<String> | pod I Ps(类型 `List`)。pod IP list |
Stringio/agentscope/extensions/sandbox/kubernetes/client/internal/K8sHelper.java:329–340