源码深度学习 · 零基础友好 · higress-group 4/5

Higress Console 源码学习

20 天 · 每天 30 分钟 · 逐层读懂 Higress 的 Web 管理控制台——一个全栈应用(Java Spring Boot 后端 + React 前端)。它让你在界面上管理路由、服务、插件、AI 供应商,背后翻译成 Higress 配置(Ingress + 注解 + CRD)。

00

开篇 · 这是个什么项目

Higress Console 是 Higress(上一站的 AI 网关)的Web 管理控制台——一个全栈应用:Java Spring Boot 后端 + React/TypeScript 前端。用户在浏览器界面上点点点管理路由、服务源、域名、证书、Wasm 插件、AI 供应商、消费者,控制台把这些操作翻译成 Higress 认识的配置(K8s Ingress + higress.io/* 注解 + CRD),写进 K8s。

🎯 一句话:Console = React 前端(管理界面) + Spring Boot 后端(REST API) + SDK(配置抽象) + K8s 客户端(读写 Ingress/CRD/ConfigMap/Secret)。你在界面操作 → 前端调后端 REST → Service 处理 → SDK 写 K8s CRD → Higress 控制器(上一站)读到并生效。

🖥️

React 前端

ice.js + antd 管理界面,动态渲染插件配置表单。

Spring Boot 后端

REST API + Service 分层,274 个 Java 文件。

🔌

SDK + K8s 客户端

配置抽象 + 读写 Ingress/CRD/ConfigMap。

🤖

AI 供应商管理

配置 LLM provider、插件、消费者。

与上一站的关系(承上):上一站 Higress 是"控制器/数据面"(读配置生效流量);Console 是"给人用的管理界面"——它生成那些 Higress 配置(Ingress + 注解)。你在 Console 建一条路由,最终变成 Higress 控制器(上一站 Day 04)翻译的那个 Ingress。建议先学完 Higress。源码在 higress-console/backend/(Java)+ frontend/(React)。
01

架构全景(动起来看)

下图那颗发光小球是"用户在界面操作 → 变成 Higress 配置"的旅程。从上到下:前端 → 后端 API → SDK → K8s。

L1 · React 前端(浏览器)
页面路由/插件/AI
动态表单插件配置
API 层axios
L2 · Spring Boot 后端
ControllerREST API
Service业务逻辑
Model领域实体
L3 · SDK(配置抽象)
ConfigService配置管理
注解生成higress.io/*
存储抽象K8s/单机
L4 · Kubernetes(存储)
Ingress路由
CRDMcpBridge/WasmPlugin
ConfigMap/Secret

Console 的心智模型是"界面操作 → REST API → SDK → K8s 配置 →(Higress 控制器读到)":

界面点击建路由 后端 Service处理 SDK写 Ingress+注解 Higress 控制器读到生效
Console 和 Higress 控制器怎么协作? Console 不直接控制 Envoy——它只是把用户操作写成 K8s 里的 Ingress/CRD/ConfigMap。然后上一站的 Higress 控制器 watch 到这些资源,翻译成 Istio 配置喂 istiod、生成 xDS 给 Envoy。Console 是"人机接口",Higress 控制器是"配置引擎"——通过 K8s 资源解耦。
02

怎么用这份教程

⏱️

每天 30 分钟

一天一个独立页面,跟着"今日小结 + 动手"收尾。

👶

零基础友好

不假设你懂 Spring Boot/React/K8s,术语首次出现都有大白话解释。

📍

精确到行号

关键代码标 文件:行号,可在真源码里跳转对照。

一条主线:从"控制台是什么、后端怎么分层",到"SDK 怎么把操作翻译成 K8s 配置",到"AI/插件/消费者怎么管理",最后是"前端怎么渲染、怎么部署"。建议先学完 Higress。
W1

第 1 周 · 后端架构

全景、Spring Boot 启动、分层、REST API、Service
01

项目全景(网关控制台)

控制台是什么、全栈架构、和 Higress 的关系。

≈30 min开始学 →
02

后端启动(Spring Boot)

main 类、Maven 模块、配置加载。

≈30 min开始学 →
03

后端分层

Controller/Service/SDK 三层职责。

≈30 min开始学 →
04

REST API 层

@RestController 暴露的端点(路由/服务/插件…)。

≈30 min开始学 →
05

Service 业务层

@Service 怎么编排业务操作。

≈30 min开始学 →
W2

第 2 周 · SDK 与配置存储

SDK、配置存储、K8s 客户端、领域模型、操作流转
06

SDK 抽象

backend/sdk 提供的配置管理抽象。

≈30 min开始学 →
07

配置存储(K8s vs 单机)

ConfigService 抽象 + 两种实现。

≈30 min开始学 →
08

K8s 客户端

读写 Ingress/CRD/ConfigMap/Secret。

≈30 min开始学 →
09

领域模型

Route/Service/Domain/Certificate/Consumer 等实体。

≈30 min开始学 →
10

一次操作的流转

创建路由 → Ingress+注解,端到端追踪。

≈30 min开始学 →
W3

第 3 周 · AI/插件/消费者

AI 供应商、插件、消费者、路由/服务、MCP
11

AI 供应商管理

配置 LLM provider → ai-proxy 插件配置。

≈30 min开始学 →
12

插件管理

WasmPlugin 管理 + jsonschema 校验。

≈30 min开始学 →
13

消费者/鉴权管理

consumer(API key/JWT)配置。

≈30 min开始学 →
14

路由/服务源管理

route 和 service source(注册中心)管理。

≈30 min开始学 →
15

MCP 管理

mcp-server 配置管理。

≈30 min开始学 →
W4

第 4 周 · 前端/部署

前端栈、页面、动态表单、部署、收官
16

前端技术栈

ice.js/React、antd、i18n、构建配置。

≈30 min开始学 →
17

前端结构与页面

pages/components/services、关键页面拆解。

≈30 min开始学 →
18

动态插件配置表单 + API 层

从 jsonschema 渲染表单 + axios 调后端。

≈30 min开始学 →
19

部署

Dockerfile/helm,怎么和 Higress 一起部署。

≈30 min开始学 →
20

收官串讲

全栈回顾 + higress-group 四站串讲。

≈30 min开始学 →

全部 20 天已就绪(higress-group 系列 4/5)。建议先学 Higress 再学本课。