Kubernetes MCP服务器Helm Chart

通过Helm Chart在Kubernetes集群上部署Kubernetes MCP服务器,提供容器管理功能。

  • by frenoid
  • Smarty
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 frenoid/kubernetes-mcp-server-helmchart

使用说明

Kubernetes MCP服务器掌舵图

部署 Kubernetes MCP服务器 使用此Helm Chart将其添加到集群中

先决条件

  • 库贝内特斯>=1.24
  • Helm>=3.9

安装

克隆仓库

git clone git@github.com:frenoid/kubernetes-mcp-server-helmchart.git

输入目录

cd kubernetes-mcp-server

将图表部署为 myrelease

 helm install myrelease . -f values.yaml

卸载

卸载 myrelease 部署使用

helm uninstall myrelease

该命令删除名为的版本 myrelease 并释放与该版本相关的所有kubernetes资源。

提示:指定 --purge 上述命令的参数,用于从存储中删除该版本并使其名称可供以后使用。

配置

公用参数

名称 描述 默认值
kubeVersion 覆盖Kubernetes版本 ""
nameOverride 部分覆盖 kubernetes-mcp.fullname 带有字符串的模板(将在发布名称前添加) ""
fullnameOverride 完全覆盖 kubernetes-mcp.fullname 带字符串的模板 ""
namespaceOverride 完全覆盖 common.names.namespace 带字符串的模板 ""
commonAnnotations 要添加到所有已部署对象的注释 {}
commonLabels 要添加到所有已部署对象的标签 {}
extraDeploy 随版本一起部署的额外对象数组 []

参数

名称 描述 默认值
enableWriteDelete 向MCP服务器添加创建、修补、更新和删除权限 false
replicaCount 副本数量 1
image.repository 图像存储库 docker.io/frenoid/kubernetes-mcp-server
image.tag 图像标签 v0.0.53
image.pullPolicy 图像拉取策略 IfNotPresent
serviceAccount.create 指定是否应创建服务帐户 true
serviceAccount.annotations 服务帐户注释 {}
serviceAccount.name 要使用的服务帐户的名称(使用 kubernetes-mcp.fullname 模板(如果未设置) kubernetes-mcp-server
serviceAccount.automount 指示是否自动装载ServiceAccount的API凭据 false
deploymentAnnotations 其他部署注释 {}
podAnnotations 附加pod注释 {}
podLabels 附加吊舱标签 {}
podSecurityContext Pod安全上下文
podSecurityContext.seccompProfile.type 设置pod的安全上下文seccomp配置文件 RuntimeDefault
priorityClassName 优先级类名 nil
runtimeClassName 运行时类名 ""
securityContext 容器安全上下文
securityContext.allowPrivilegeEscalation 设置容器的安全上下文allowPrivilegeEscalation false
securityContext.capabilities.drop 要删除的功能列表 ["ALL"]
securityContext.readOnlyRootFilesystem 设置容器的安全上下文readOnlyRootFilesystem true
securityContext.runAsNonRoot 容器是否必须以非root用户身份运行 true
securityContext.runAsUser 运行容器进程入口点的UID 65534
securityContext.runAsGroup 运行容器进程入口点的GID 65534
containerPorts.http HTTP的容器端口 8080
service.annotations 服务注释 {}
service.type 服务类型 ClusterIP
service.clusterIP 当服务类型为ClusterIP时,无头服务的静态群集IP地址或无 nil
service.loadBalancerIP 服务类型为LoadBalancer时的静态负载平衡器IP地址 nil
service.loadBalancerSourceRanges 服务类型为LoadBalancer时的源IP地址范围 nil
service.externalTrafficPolicy 当服务类型为LoadBalancer或NodePort时的外部流量路由策略 Cluster
service.ports.http HTTP服务端口 8080
service.nodePorts.http 当服务类型为LoadBalancer或NodePort时,HTTP的服务节点端口 nil
ingress.enabled 启用入口控制器资源 false
ingress.ingressClassName 将用于实现Ingress的IngressClass ""
ingress.pathType 入口路径类型 ImplementationSpecific
ingress.annotations 入口注释 {}
ingress.hosts[0].host Kubernetes MCP服务器安装的主机名 kubernetes-mcp.local
ingress.hosts[0].paths url结构中的路径 ["/"]
ingress.tls TLS配置 []
resources CPU/内存资源请求/限制 {}
nodeSelector pod分配的节点标签 {}
tolerations 吊舱分配公差 []
affinity 节点/吊舱亲和力图 {}
extraArgs 其他容器参数 {}
extraEnvVars 其他容器环境变量 []
extraEnvVarsCM 包含其他容器环境变量的现有ConfigMap的名称 nil
extraEnvVarsSecret 包含其他容器环境变量的现有Secret的名称 nil
extraVolumes 可选地指定附加卷的额外列表 []
extraVolumeMounts (可选)指定附加卷装载的额外列表 []

设置参数

使用指定要自定义的参数 --set 争论到 helm install 命令。例如,

$ helm install myrelease \
    --set nameOverride=my-name .

上述命令设置 nameOverride 到 my-name.

或者,在安装图表时,可以提供一个指定上述参数值的YAML文件。例如,

$ helm install myrelease \
    --values values.yaml .

提示:您可以使用默认值 values.yaml.