项目简介

Qubinode Navigator 是一个现代化的企业基础设施自动化平台,采用容器优先和模块化插件架构设计。它通过集成AI驱动的Model Context Protocol (MCP) 服务器,实现了LLM(大型语言模型)驱动的基础设施管理能力。这使得LLM能够以标准化的方式直接执行复杂的自动化任务,如虚拟机部署与管理、自动化工作流编排,以及利用RAG(检索增强生成)技术进行文档搜索和提供AI智能助手。

主要功能点

  • AI驱动的MCP服务器: Qubinode Navigator 包含两个核心MCP服务器,作为LLM与基础设施交互的桥梁:
    • Airflow MCP服务器: 专注于Apache Airflow工作流的DAG(有向无环图)管理和虚拟机操作,提供了9个工具供LLM调用。
    • AI助手MCP服务器: 提供基于RAG(检索增强生成)的文档搜索、智能聊天互动以及系统诊断功能,提供了3个工具。
  • 模块化插件架构: 平台采用可插拔设计,支持操作系统、云提供商和特定部署的插件,确保高度灵活性和可扩展性。
  • 容器优先执行: 所有基础设施部署和管理任务都在标准化的容器化执行环境中运行,确保一致性和隔离性。
  • 多云支持: 广泛支持Equinix、Hetzner、AWS等主流云平台,同时也兼容裸金属(Bare-metal)部署。
  • 企业级安全: 集成了Ansible Vault,并支持HashiCorp Vault进行敏感凭证和配置的加密管理。
  • 智能更新管理 (规划中): 计划实现自动化更新检测、兼容性验证和风险评估,以确保系统始终保持最新和安全。

安装步骤

在开始之前,请确保您的系统满足以下先决条件:

  • 基于Linux的操作系统(推荐RHEL 8+、CentOS Stream、Rocky Linux 或 Fedora)
  • Git
  • Podman 或 Docker
  • 至少4GB RAM(建议8GB+以获得最佳AI功能体验)
  1. 克隆仓库: 打开您的Linux终端,执行以下命令克隆Qubinode Navigator仓库并进入目录:
    git clone https://github.com/Qubinode/qubinode_navigator.git
    cd qubinode_navigator
  2. 运行现代化安装脚本: 执行仓库提供的现代化安装脚本。此脚本将自动化安装所有必要的依赖项(如Python包),并设置平台运行所需的环境:
    ./setup_modernized.sh
    此过程可能需要一些时间,具体取决于您的系统和网络速度。

MCP服务器配置

Qubinode Navigator 平台包含多个MCP服务器,用于向MCP客户端(如LLM应用)提供上下文信息和功能。MCP客户端通常需要以下JSON格式的配置信息,以了解如何连接和使用这些服务器。

1. Qubinode Airflow MCP 服务器

这个MCP服务器专注于Apache Airflow工作流的DAG管理和虚拟机操作。

{
  "server_name": "Qubinode Airflow MCP Server",
  "command": "python3",
  "args": ["-m", "qubinode.mcp_servers.airflow", "--port", "8889", "--protocol", "sse"],
  "description": "用于与Apache Airflow交互,管理DAG和虚拟机操作。MCP客户端连接时通常使用其HTTP/SSE地址,例如 http://localhost:8889/sse。"
}
  • server_name: 服务器的友好名称。
  • command: 启动MCP服务器进程的命令。
  • args: 传递给启动命令的参数。'"-m qubinode.mcp_servers.airflow"' 表示运行 'qubinode.mcp_servers.airflow' 模块;'"--port 8889"' 指定服务器监听端口;'"--protocol sse"' 表示服务器支持SSE传输协议。
  • description: 服务器功能的简要描述。

2. Qubinode AI Assistant MCP 服务器

这个MCP服务器提供了AI驱动的文档搜索、智能聊天互动和系统诊断功能。

{
  "server_name": "Qubinode AI Assistant MCP Server",
  "command": "python3",
  "args": ["-m", "qubinode.mcp_servers.ai_assistant", "--port", "8081", "--protocol", "sse"],
  "description": "提供AI驱动的文档搜索、聊天和智能诊断功能。MCP客户端连接时通常使用其HTTP/SSE地址,例如 http://localhost:8081/sse。"
}
  • server_name: 服务器的友好名称。
  • command: 启动MCP服务器进程的命令。
  • args: 传递给启动命令的参数。'"-m qubinode.mcp_servers.ai_assistant"' 表示运行 'qubinode.mcp_servers.ai_assistant' 模块;'"--port 8081"' 指定服务器监听端口;'"--protocol sse"' 表示服务器支持SSE传输协议。
  • description: 服务器功能的简要描述。

基本使用方法

在成功安装Qubinode Navigator并启动其MCP服务器后,您可以按照以下步骤进行操作:

  1. 确认MCP服务器运行状态: Qubinode Navigator的部署脚本通常会在后台自动启动其MCP服务器。您可以使用以下命令检查它们是否正在监听端口(需要安装 'curl' 或 'httpx'):

    # 检查Airflow MCP服务器
    curl -s http://localhost:8889/sse
    # 检查AI助手MCP服务器
    curl -s http://localhost:8081/sse

    如果服务器正在运行,您会看到一些输出。

  2. 通过CLI与AI助手互动: Qubinode Navigator提供了一个命令行界面 ('qubinode_cli.py') 来直接与AI助手互动,利用其RAG能力进行文档检索和答案生成:

    python3 qubinode_cli.py ask "如何部署RHEL 10虚拟机?"
    # 或者询问部署状态
    python3 qubinode_cli.py ask "最近的部署任务状态如何?"

    AI助手将处理您的问题并返回智能响应。

  3. 执行基础设施自动化任务: 使用 'qubinode_cli.py' 结合插件来执行自动化部署任务。这些操作可能在内部调用MCP服务器提供的工具来编排复杂的底层逻辑:

    # 列出可用的插件
    python3 qubinode_cli.py list
    
    # 部署指定操作系统(例如RHEL 10)
    python3 qubinode_cli.py execute --plugins rhel10 --inventory my_host_group
    
    # 查看插件管理器状态
    python3 qubinode_cli.py status

    这将触发Qubinode Navigator的核心自动化流程,并可能通过MCP服务器调用相关的工具来执行实际的基础设施操作。

信息

分类

开发者工具