Halo MCP演示头盔图
一个简单的“Hello World”演示Helm图表,展示了用于测试ArgoCD MCP服务器功能的各种Kubernetes资源类型。
概述
此图表部署了一个包含以下组件的简单演示应用程序:
- 前端:Nginx提供“Hello World”页面
- 后端:Node.js API返回演示JSON响应
- 数据库:PostgreSQL(演示配置)
- 瑞迪斯:Redis缓存(演示配置)
- 工人:后台工作者(演示日志)
- 工作:迁移和清理作业(演示脚本)
⚠️ 这是一个具有虚拟配置的演示应用程序。请勿在生产中使用!
包括Kubernetes资源
此图表展示了各种各样的Kubernetes资源类型:
核心资源
NamespaceConfigMapSecretPersistentVolumeClaimService(集群IP,无头)
工作量资源
Deployment(前端、后端、Redis、Worker)StatefulSet(数据库)Job(移民)CronJob(清理)
网络
IngressNetworkPolicy
扩展和可用性
HorizontalPodAutoscalerPodDisruptionBudget
安全
ServiceAccountRole/ClusterRoleRoleBinding/ClusterRoleBindingPodSecurityPolicy
监控
ServiceMonitor(普罗米修斯操作员)PrometheusRule(警报规则)
安装
先决条件
- Kubernetes集群(1.19+)
- Helm 3.x
- 可选:普罗米修斯操作员用于监控
- 可选:用于外部访问的入口控制器
安装演示图表
# Install from local directory
helm install halo-mcp ./halo-mcp --namespace halo-mcp --create-namespace
# Check the deployment
kubectl get all -n halo-mcp
# Access the frontend (port-forward)
kubectl port-forward -n halo-mcp svc/halo-mcp-frontend 8080:80
# Access the backend API
kubectl port-forward -n halo-mcp svc/halo-mcp-backend 3000:3000
# Upgrade
helm upgrade halo-mcp ./halo-mcp --namespace halo-mcp
# Uninstall
helm uninstall halo-mcp --namespace halo-mcp配置
关键配置选项
| 参数 | 说明 | 默认值 |
|---|---|---|
frontend.enabled | 启用前端部署 | true |
frontend.replicaCount | 前端副本数量 | 3 |
frontend.autoscaling.enabled | 为前端启用HPA | true |
backend.enabled | 启用后端部署 | true |
database.enabled | 启用PostgreSQL数据库 | true |
database.persistence.enabled | 启用持久存储 | true |
redis.enabled | 启用Redis缓存 | true |
worker.enabled | 启用工作部署 | true |
monitoring.enabled | 启用监控资源 | true |
security.rbac.enabled | 启用RBAC资源 | true |
security.networkPolicy.enabled | 启用网络策略 | true |
ingress.enabled | 启用入口 | true |
自定义值示例
# custom-values.yaml
app:
name: my-halo-mcp
environment: staging
frontend:
replicaCount: 2
autoscaling:
minReplicas: 1
maxReplicas: 5
database:
persistence:
size: 20Gi
storageClass: fast-ssd
ingress:
hosts:
- host: my-app.example.com
paths:
- path: /
pathType: Prefix
monitoring:
enabled: true
serviceMonitor:
enabled: true测试ArgoCD MCP服务器
此图表专门用于测试各种ArgoCD MCP服务器功能:
可用资源操作
不同的资源类型支持不同的操作:
- 部署:重新启动、缩放、暂停、恢复
- 容器组:重新启动、删除、日志
- 有状态副本集:重新启动,缩放
- 工作:删除、挂起(适用于CronJobs)
- 服务:删除
- ConfigMaps/Secrets:删除
测试场景
- 应用管理
# List applications
# Get application details
# Sync application- 资源操作
# Scale frontend deployment
kubectl scale deployment/my-halo-mcp-frontend --replicas=5
# Restart backend deployment
kubectl rollout restart deployment/my-halo-mcp-backend
# View logs
kubectl logs -l app.kubernetes.io/component=backend- 监控和事件
# Check events
kubectl get events --sort-by='.lastTimestamp'
# View resource tree
# Get application events故障排除
常见问题
- 数据库连接问题
# Check database pod status
kubectl get pods -l app.kubernetes.io/component=database
# Check database logs
kubectl logs -l app.kubernetes.io/component=database
# Verify service name (should match your release name)
kubectl get svc | grep database- 服务名称问题
数据库服务名称取决于您的Helm版本名称:
- 发布名称 halo-mcp → 服务: halo-mcp-database - 发布名称 my-app → 服务: my-app-halo-mcp-database
如果您看到连接错误,请检查实际的服务名称:
kubectl get svc -l app.kubernetes.io/component=database- 前端权限问题
如果nginx启动失败,请检查日志:
kubectl logs -l app.kubernetes.io/component=frontend -c frontend有用的命令
# Get all resources
kubectl get all -l app.kubernetes.io/instance=my-halo-mcp
# Check resource usage
kubectl top pods -l app.kubernetes.io/instance=my-halo-mcp
# Port forward to access services locally
kubectl port-forward svc/my-halo-mcp-frontend 8080:80
kubectl port-forward svc/my-halo-mcp-backend 3000:3000
# Execute into database
kubectl exec -it my-halo-mcp-database-0 -- psql -U halo_user -d halo_mcp贡献
这是一个用于测试的演示图。您可以根据测试需求自由修改和扩展它。
许可证
此图表按原样提供用于演示目的。#mcp测试图
