Agent OS Helm Chart 实战指南:在 Kubernetes 上部署 AI Agent 治理内核
2026/9/17 5:29:17 网站建设 项目流程

Agent OS Helm Chart 实战指南:在 Kubernetes 上部署 AI Agent 治理内核

【免费下载链接】agent-governance-toolkitAI Agent Governance Toolkit — Policy enforcement, zero-trust identity, execution sandboxing, and reliability engineering for autonomous AI agents. Covers 10/10 OWASP Agentic Top 10.项目地址: https://gitcode.com/GitHub_Trending/ag/agent-governance-toolkit

Agent OS 是 agent-governance-toolkit 中面向 AI Agent 的治理内核(governance kernel)。本指南基于仓库内 charts/agent-os/README.md 展开,完整讲解如何使用其自带的 Helm Chart 在生产级 Kubernetes 集群上部署无状态治理内核、YAML 策略评估服务与审计收集器。读完本文,你将掌握一键安装、参数调优、策略挂载、高可用与监控配置等全套实战技能。

一、Chart 概览:一个 Helm Chart,三个治理组件

Agent OS 的 Helm Chart 是一个生产就绪(Production-ready)的应用部署模板,Chart 元数据定义在 Chart.yaml:apiVersion: v2(Helm 3 标准格式)、type: application、版本0.3.0,关键字为 ai、governance、agents、kernel、policy。

一次helm install会向集群下发三个相互配合的 Deployment:

组件职责默认副本数
Kernel无状态(stateless)治理内核,负责 Agent 请求的治理裁决入口2
Policy ServerYAML 策略评估服务,从 ConfigMap 挂载策略文件并执行评估2
Audit Collector审计日志聚合器,配有持久化存储用于留存审计证据1

三个组件的镜像仓库分别为agent-governance-python/agent-os/kernelagent-governance-python/agent-os/policy-serveragent-governance-python/agent-os/audit-collector,标签均为0.3.0,与 Chart 版本一致。

二、安装与升级:三步完成部署

Chart 位于 agent-governance-python/agent-os/charts/agent-os,最基础的安装命令如下:

# 直接安装(使用默认 values) helm install agent-os ./charts/agent-os # 使用自定义 values 文件安装 helm install agent-os ./charts/agent-os -f my-values.yaml # 升级已有 release helm upgrade agent-os ./charts/agent-os

安装前需确认集群已具备:

  • Kubernetes 集群且已配置好kubectl上下文,Helm 3 客户端可用;
  • 若开启auditCollector.persistence.enabled(默认开启),集群需支持动态创建 PVC(如默认 StorageClass);
  • 若启用 HPA(默认开启),集群需具备 metrics-server 以提供 CPU/内存指标。

安装完成后,Chart 自带的 NOTES.txt 会输出访问与验证指引:对于默认的ClusterIP类型 Service,可使用kubectl port-forward svc/<release>-kernel <port>:<port>访问内核;若将kernel.service.type改为NodePortLoadBalancer,则会分别输出节点 IP/端口或提示等待负载均衡 IP 就绪。验证组件运行状态:

kubectl get pods -l "app.kubernetes.io/instance=agent-os"

三、配置参数详解:一份 values.yaml 掌握全部调优点

所有可调参数集中定义在 values.yaml,下表汇总了核心参数及其默认值:

参数说明默认值
kernel.replicasKernel 副本数2
kernel.image.repositoryKernel 镜像仓库agent-governance-python/agent-os/kernel
kernel.image.tagKernel 镜像标签0.3.0
kernel.image.pullPolicy镜像拉取策略IfNotPresent
kernel.resources.requests.cpuCPU 请求250m
kernel.resources.requests.memory内存请求256Mi
kernel.resources.limits.cpuCPU 上限1
kernel.resources.limits.memory内存上限512Mi
kernel.portKernel 容器端口8080
kernel.service.typeKernel Service 类型ClusterIP
kernel.service.portKernel Service 端口80
kernel.autoscaling.enabled启用 HPAtrue
kernel.autoscaling.minReplicasHPA 最小副本2
kernel.autoscaling.maxReplicasHPA 最大副本10
kernel.autoscaling.targetCPUUtilizationCPU 利用率目标70
kernel.autoscaling.targetMemoryUtilization内存利用率目标80
policyServer.replicasPolicy Server 副本数2
policyServer.image.repositoryPolicy Server 镜像仓库agent-governance-python/agent-os/policy-server
policyServer.policyMount.enabled从 ConfigMap 挂载策略true
policyServer.policyMount.configMapName策略 ConfigMap 名称agent-os-policies
policyServer.portPolicy Server 容器端口8081
auditCollector.replicasAudit Collector 副本数1
auditCollector.portAudit Collector 容器端口8082
auditCollector.persistence.enabled启用持久化存储true
auditCollector.persistence.sizePVC 容量10Gi
auditCollector.persistence.storageClass指定 StorageClass""(使用默认)
auditCollector.persistence.accessModesPVC 访问模式ReadWriteOnce
monitoring.enabled启用 Prometheus 注解true
monitoring.prometheus.scrape开启抓取注解true
monitoring.prometheus.port指标端口9090
monitoring.prometheus.path指标路径/metrics
podDisruptionBudget.enabled启用 PDBtrue
podDisruptionBudget.minAvailablePDB 最小可用数1
networkPolicy.enabled启用 NetworkPolicytrue
serviceAccount.create创建 ServiceAccounttrue
imagePullSecrets镜像拉取密钥列表[]
nodeSelector/tolerations/affinity节点调度约束{}/[]/{}

几点值得注意的细节:

  • 资源预留:Kernel 被设计为治理核心,默认预留250m CPU + 256Mi 内存,上限放宽到1 CPU + 512Mi,保证高负载下的稳定性;Policy Server 与 Audit Collector 则更轻量(请求100m/128Mi,上限500m/256Mi);
  • 镜像拉取策略IfNotPresent在本地已有镜像时不再重复拉取,适合内网/离线集群,也可按需改为Always
  • 全局覆盖nameOverridefullnameOverride用于覆盖 Chart 生成的资源名称前缀,imagePullSecrets支持私有镜像仓库。

四、策略挂载与默认策略 ConfigMap

Policy Server 的职责是执行 YAML 策略评估,而策略本身通过 ConfigMap 以只读卷的形式注入容器,挂载路径为/etc/agent-governance-python/agent-os/policies。这一逻辑在 deployment-policy-server.yaml 中体现:当policyServer.policyMount.enabledtrue时,Deployment 会挂载名为agent-os-policies(可用policyServer.policyMount.configMapName覆盖)的 ConfigMap 卷。

Chart 内置的 configmap.yaml 提供了一个开箱即用的默认策略default-policy.yaml,其结构如下:

version: "1.0" name: default description: Default governance policy rules: - name: block-dangerous-actions condition: field: action operator: in value: - file_delete - system_exec action: deny priority: 100 message: Dangerous actions are blocked by default policy - name: allow-read condition: field: action operator: in value: - read_file - database_query - web_search action: allow priority: 50 message: Read operations are permitted defaults: action: audit

该策略文件体现了清晰的治理语义:

  • 优先级裁决block-dangerous-actionspriority: 100优先匹配,对file_deletesystem_exec等危险动作直接deny,并返回阻断提示消息;
  • 白名单放行allow-readpriority: 50放行read_filedatabase_queryweb_search等只读操作;
  • Fail-safe 默认defaults.action: audit表示未被显式规则覆盖的动作默认进入审计(audit)而非静默放行,保证默认收敛。

如需定制策略,可将修改后的default-policy.yaml内容放入自定义 ConfigMap,并在 values 中指定policyServer.policyMount.configMapName,随后执行helm upgrade agent-os ./charts/agent-os -f my-values.yaml

五、高可用设计:HPA + PDB + 健康探针三重保障

Chart 默认即具备高可用(HA)能力,其核心机制在三份模板中清晰可见:

1. Kernel 的 HPA 自动扩缩容。 hpa.yaml 使用autoscaling/v2API,同时监听 CPU(目标利用率 70%)与内存(目标利用率 80%)两个资源指标,在minReplicas: 2maxReplicas: 10之间弹性伸缩,且仅在kernel.autoscaling.enabled为真时渲染。

2. Kernel 与 Policy Server 的 PDB 保护。 pdb.yaml 为 kernel 和 policy-server 各创建一个PodDisruptionBudget,默认minAvailable: 1,保证集群维护(节点排空等)期间始终有可用副本。

3. 全组件健康探针。 三个 Deployment 模板统一配置了:

livenessProbe: httpGet: path: /healthz port: http initialDelaySeconds: 10 periodSeconds: 15 readinessProbe: httpGet: path: /readyz port: http initialDelaySeconds: 5 periodSeconds: 10

即 liveness 探针每 15 秒检查/healthz,readiness 探针每 10 秒检查/readyz,异常容器会被自动重启或从 Service 端点摘除。

默认的 HA 基线是:Kernel 2 副本 + HPA(可扩至 10)+ PDB,Policy Server 2 副本 + PDB,Audit Collector 1 副本 + 持久化存储。原文档还给出了提高可用性的配置示例:

kernel: replicas: 3 autoscaling: minReplicas: 3 maxReplicas: 20 policyServer: replicas: 3 podDisruptionBudget: minAvailable: 2

六、审计持久化:PVC 与只读策略卷

审计是 AI Agent 治理的合规基石。 deployment-audit-collector.yaml 在同一个文件中同时渲染 Deployment 与 PersistentVolumeClaim:

  • auditCollector.persistence.enabled为真时,容器将审计数据卷挂载到/data/audit
  • PVC 名为<release>-audit,默认请求10Gi存储,访问模式ReadWriteOnce,可通过storageClass指定特定存储类(默认留空走集群默认);
  • 该文件同时定义了 Deployment 与 PVC,二者被---分隔符隔离,是 Helm 模板中常见的“关联资源同文件”组织方式。

与之呼应,Policy Server 的策略卷以readOnly: true挂载,审计侧则以可写卷收集日志,读写路径分离,符合最小权限原则。

七、网络安全与身份:NetworkPolicy、ServiceAccount、Secret

Chart 默认开启networkPolicy.enabled: true,由 networkpolicy.yaml 生成隔离策略:

  • Ingress:仅允许带 Chart selector 标签的同 Chart Pod 访问 kernel(8080)、policy-server(8081)、audit-collector(8082)三个端口;
  • Egress:仅允许访问同 Chart Pod,以及 DNS(53 端口 UDP/TCP),其余出站流量默认被拒。

同时 Chart 还会创建:

  • ServiceAccount:由 serviceaccount.yaml 渲染,serviceAccount.create默认true,三个 Deployment 均通过serviceAccountName绑定该身份;
  • Opaque Secret: secret.yaml 预置一个空的OpaqueSecret(data: {}),为接入镜像拉取凭证或注入敏感配置预留了挂载点;
  • Service:三个组件各有独立的 ClusterIP Service(默认kernel.service.port: 80映射容器kernel.port: 8080),实现组件间稳定寻址。

八、监控与指标采集

monitoring.enabled默认开启,三个 Deployment 的 Pod 模板都会注入 Prometheus 抓取注解(见各 Deployment 模板):

annotations: prometheus.io/scrape: "true" prometheus.io/port: "9090" prometheus.io/path: /metrics

即所有 Pod 的9090端口暴露/metrics端点,供 Prometheus 自动发现抓取。若集群内的 Prometheus 未开启注解发现(annotation-based service discovery),需在 Prometheus 配置中启用kubernetes_sd_configs的相应 role 与注解过滤,或手动配置抓取目标。指标覆盖范围包括 Kernel 的治理请求吞吐与延迟、Policy Server 的评估结果分布、Audit Collector 的写入积压等,可作为后续 SLO 追踪与告警的数据源。

九、小结

Agent OS Helm Chart 以"一个命令部署完整治理栈"的方式,将无状态 Kernel、YAML 策略评估服务与持久化审计收集器打包为生产就绪的 Kubernetes 工作负载,并通过 HPA、PDB、健康探针、NetworkPolicy、Prometheus 注解等内置能力将高可用、安全与可观测性沉淀为默认配置。无论是快速体验治理内核,还是将其嵌入企业级 Agent 平台,都可以从本 Chart 出发,结合实际策略与资源需求进行定制。

如需深入理解策略语言与评估引擎,可继续阅读 agent-os/src 下的源码实现及其测试用例,或参考 agent-os/README.md 与 agent-os/ARCHITECTURE.md 了解整体设计。

【免费下载链接】agent-governance-toolkitAI Agent Governance Toolkit — Policy enforcement, zero-trust identity, execution sandboxing, and reliability engineering for autonomous AI agents. Covers 10/10 OWASP Agentic Top 10.项目地址: https://gitcode.com/GitHub_Trending/ag/agent-governance-toolkit

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询