OpenShift MCP部署工具

用于在共享预置集群上使用OcpSandbox模型部署MCP与OpenShift实验室的Ansible集合,支持集群和用户级别的资源管理。

  • by rhpds
  • Jinja
  • 本地部署
  • 更新于
在 GitHub 查看 rhpds/rhpds.ocpsandbox_mcp_with_openshift

使用说明

带OpenShift的MCP-OcpSandbox部署

使用OcpSandbox(命名空间)模型在共享的预配置集群上部署MCP和OpenShift实验室的Ansible集合。

建筑

本实验室使用两个部署阶段:

群集资源调配(共享基础设施,每个群集运行一次)

剧本: tests/e2e/cluster-provision.yml

在新的OCP集群上部署共享基础设施。没有每个用户的资源。

步骤 角色/资源 它的作用
1 agnosticd.core_workloads.ocp4_workload_authentication_keycloak RHBK运营商+OAuth提供商
2 agnosticd.core_workloads.ocp4_workload_gitea_operator Gitea实例(仅限管理员,无用户)
3 agnosticd.core_workloads.ocp4_workload_pipelines OpenShift管道(泰克顿)
4 agnosticd.core_workloads.ocp4_workload_openshift_gitops ArgoCD(不允许每个用户访问)
5 agnosticd.ai_workloads.ocp4_workload_toolhive ToolHive运算符
6 冲突 cluster-monitoring-config 用户工作负载监控
7 订阅 cloudnative-pg CloudNativePG运营商

用户配置(每个用户,在每个实验室订单上运行)

剧本: tests/e2e/provision.yml AgV目录: agd_v2/mcp-with-openshift-sandbox/common.yaml

通过以下方式部署每个用户的资源 config: namespace 图案。每个角色的 main.yml 发送至 workload.yml (规定)或 remove_workload.yml (销毁)基于 ACTION 变量。

供应订单(workloads):

步骤 角色 它的作用
1 agnosticd.namespaced_workloads.ocp4_workload_ocpsandbox_keycloak_user Kubeconfig+集群发现+Keycloak用户
2 agnosticd.namespaced_workloads.ocp4_workload_ocpsandbox_gitea_user Gitea用户+仓库迁移
3 agnosticd.namespaced_workloads.ocp4_workload_ocpsandbox_argocd_user ArgoCD应用程序项目
4 rhpds.litellm_virtual_keys.ocp4_workload_litellm_virtual_keys LLM API密钥
5 rhpds.ocpsandbox_mcp_with_openshift.ocp4_workload_ocpsandbox_mcp_user MCP服务器+LibreChat+代理
6 agnosticd.showroom.ocp4_workload_showroom_ocp_integration 控制台链接
7 agnosticd.showroom.ocp4_workload_showroom 展厅实验室内容

销毁订单(remove_workloads): 与上述相反——先是展厅,最后是钥匙斗篷用户。

此集合中的角色

角色 范围
ocp4_workload_ocpsandbox_mcp_user 用户配置。 单用户MCP部署:SCC+5 ArgoCD应用程序集(MCP-openshift、MCP-gitea、librechat配置、librecht、代理)。销毁时进行全面清理。

相关转载

回购 目的
带openshift gitops的ocpsandbox mcp ArgoCD部署的Helm charts(用户配置)
命名空间_工作负载 (分支 namespace-mcp-with-openshift) 通用沙盒角色:keycloke_user、gitea_user、argocd_user(用户配置)
lb1726 mcp展厅 展厅实验室内容

E2E测试

cd tests/e2e

# Set cluster credentials in cluster-provision.yml / provision.yml
# Then run:
./run.sh cluster-provision -v   # Shared infra (run once)
./run.sh provision -v           # Per-user resources
./run.sh destroy -v             # Cleanup per-user resources