Lnjoying Open NextStack总体架构
Lnjoying Open NextStack是秒如科技自主研发的新一代开源AI云计算IaaS平台,采用轻量化架构设计,管理平面基于Java微服务,能力层基于Go语言模块化开发。平台支持CPU/GPU/TPU管理、虚拟化、存储网络等核心功能,最低仅需4G内存即可运行,资源消耗仅为传统方案的10%。技术栈涵盖Go/Java/Python多语言,集成Echo框架、etcd存储、libvirt虚拟化、O
Lnjoying Open NextStack总体架构
Lnjoying Open NextStack是秒如科技自主研发的新一代开源人工智能云计算 IaaS(基础设施即服务)平台。整体架构分为管理平面,基于JAVA语言开发,采用微服务组件化架构设计;能力层:执行Agent,基于 Go 语言开发,采用模块化、微服务架构设计,支持CPU/GPU/TPU管理、裸金属/虚拟机管理、快照管理、VPC/Subnet/安全组管理、块存储/对象存储管理和自动热迁移等多种AI云计算基础设施管理功能。
整个架构完全**“去OpenStack”**,抛弃了OpenStack冗余臃肿的架构,整个设计极简架构、极致轻量化,最小可在单台工控机进行完整部署,最低运行资源4G内存即可以完整运行,仅需10%的资源消耗实现90%的人工智能云计算能力。既适合在云端智算中心场景进行大规模部署,也适合在边缘数据中心、端侧机器人、太空/卫星等场景部署。
✅ 架构概览图

✅ 核心模块架构

✅核心技术栈
• 编程语言: Go 1.22.2 (主服务),Java(管理平面),Python (部署脚本)
• Web 框架: Echo v3.3.10
• CLI 框架: Cobra + Viper
• 分布式存储: etcd v3.5.13
• 虚拟化: libvirt + KVM
• 网络虚拟化: Open vSwitch
• 日志系统: zap + lumberjack
• 配置管理: YAML 格式配置
• 容器技术: Docker (NFS 服务)
1. 编程语言
• Go 1.22.2 - 项目的核心开发语言
• Python - 用于部署脚本 (gnext_deploy.py)
• C/C++ - 用于第三方模块 (third_party/fm)
• Java - 管理平面
• Perl - 用于部署脚本中的某些配置任务
• Shell Script - 用于各种自动化脚本
2. Web 框架与 API
• Echo v3.3.10 - 高性能的 Go Web 框架,用于构建 HTTP API 服务
• gRPC - 用于微服务间的高性能通信
• RESTful API - 标准的 HTTP API 设计
3. 数据库与存储
• ObjectBox - 高性能的本地数据库,主要用于 DPU Agent 模块
• etcd v3.5.13 - 分布式键值存储,用于配置管理和服务发现
4. 虚拟化与容器技术
• libvirt-go v7.4.0 - Go 语言的 libvirt 绑定,用于 KVM 虚拟机管理
• Docker - 容器化技术支持
• KVM - 内核虚拟机技术
5. 网络技术栈
网络协议
• OpenFlow - SDN 控制协议
• VXLAN - 虚拟扩展局域网
• BGP - 边界网关协议
网络组件
• GoBGP - Go 实现的 BGP 协议栈
• Open vSwitch (OVS) 3.2.0 - 虚拟交换机
• OpenvSwitch - 支持 CentOS 和 Ubuntu 的 OVS 部署
6. 硬件管理
BMC 支持
• 华为 BMC 接口 - 华为服务器基板管理控制器
• 惠普 BMC 接口 - 惠普服务器基板管理控制器
• IPMI 协议 - 智能平台管理接口
GPU 管理
• NVIDIA GPU - 支持 NVIDIA 显卡管理
• VFIO - 虚拟功能 I/O,用于 GPU 直通
7. 日志与监控
日志系统
• zap v1.27.0 - 高性能结构化日志库
• loguru - Python 日志库(部署脚本使用)
• lumberjack - 日志轮转支持
监控组件
• Node Exporter - 系统指标收集
• Libvirt Exporter - 虚拟化监控
• GPU Exporter - GPU 资源监控
• Prometheus - 指标收集与存储
• Grafana - 监控数据可视化
8. 命令行工具
• Cobra v1.8.0 - 强大的 CLI 命令行工具框架
• viper - 配置文件管理(通常与 Cobra 配合使用)
9. 操作系统支持
Linux 发行版
• CentOS - 使用 yum 包管理器
• Ubuntu - 使用 apt 包管理器
系统服务
• systemd - 系统服务管理
• nginx - Web 服务器,用于代理和负载均衡
• SSH - 远程访问和文件传输
10. 存储与文件系统
• NFS - 网络文件系统
• ISO9660 v0.4.0 - ISO 镜像文件格式支持
• Loop 设备 - 用于卷管理
11. 网络服务
• dnsmasq - DNS 和 DHCP 服务
• squid - 代理服务器
• VNC - 远程桌面访问
• NoVNC - 基于 Web 的 VNC 客户端
12. 构建与部署工具
• Make - 构建工具(用于 third_party/fm 模块)
• Go Modules - Go 依赖管理
• RPM/DEB - 软件包管理
• YAML - 配置文件格式
13. 网络配置工具
• netplan - Ubuntu 网络配置
• ifcfg - CentOS 网络配置
• NetworkManager - 网络管理服务
14. 安全组件
• SELinux - 安全增强型 Linux
• firewalld/ufw - 防火墙管理
• SSH 密钥认证 - 无密码登录
这个技术栈体现了Open NextStack项目作为一个企业级虚拟化和基础设施管理平台的复杂性和完整性,涵盖了从底层硬件管理到上层应用服务的全栈技术。项目采用了现代化的 Go 语言生态,同时集成了成熟的底层技术,具有良好的可扩展性和维护性。
📜 许可证(License)
NextStack 采用 Apache 2.0 修改开源协议
📣 联系我们
- GitHub:https://github.com/lnjoying-ai
- 官网:https://91gpu.cloud
- 邮箱:service@lnjoying.com
- 社区:微信交流群+v:lnjoying-ai
更多推荐

所有评论(0)