Skip to documentation
OrbitMeshDocs
Browse documentation
Docs/Direction

DIRECTION

Cloud Native Alignment

本文件定义 OrbitMesh 的云原生术语体系,避免系统设计停留在传统代理或机场语境。
View source

1. 目标

本文件定义 OrbitMesh 的云原生术语体系,避免系统设计停留在传统代理或机场语境。

OrbitMesh 应对标以下类型的基础设施项目:

  • Kubernetes:声明式资源、Controller、Reconcile Loop。
  • Istio / Envoy:Traffic Policy、Gateway、xDS-style configuration。
  • Cilium:网络、策略、可观测性。
  • Crossplane:Desired State、Provider、Managed Resource。
  • Tailscale:设备身份、控制平面、数据面分离。

2. 正式术语

Control Plane

控制平面,负责:

  • Resource 管理。
  • Desired State。
  • Policy。
  • Controller。
  • Configuration Compiler。
  • API。
  • 多租户和权限。

Data Plane

数据平面,负责实际流量转发。

MVP 使用 sing-box,但系统抽象不绑定 sing-box。

Node

加入 OrbitMesh 的主机、设备、VPS、NAS 或托管节点。

Edge Runtime

Node 侧运行时,负责:

  • 拉取 Desired State。
  • 应用 Runtime Configuration。
  • 管理 Runtime。
  • 上报状态和指标。

Capability

产品能力抽象:

  • Traffic。
  • Mesh。
  • Gateway。
  • Tunnel。

Traffic Role

Traffic Capability 内部角色:

  • traffic.entry
  • traffic.exit
  • traffic.relay
  • traffic.subscription
  • traffic.route

Runtime Plugin

具体网络软件适配层,例如:

  • sing-box。
  • Xray。
  • EasyTier。
  • Traefik。
  • frp。
  • NGINX。
  • Envoy。

Desired State

控制平面声明的期望状态。

示例:

kind: RuntimeDesiredState
node: tencent-hk
capabilities:
  - capability: traffic
    role: traffic.entry
runtimeBindings:
  - runtime: sing-box
    capabilityRole: traffic.entry

Actual State

Edge Runtime 实际上报的运行状态。

Reconciler

持续比较 Desired State 和 Actual State,并推动实际状态收敛。

3. 资源模型

OrbitMesh 采用资源化建模:

Tenant
User
Membership
Node
EdgeRuntime
CapabilityBinding
RuntimeBinding
Endpoint
Domain
Certificate
Subscription
TrafficPolicy
DesiredState
RuntimeConfiguration
HealthCheck
UsageRecord
AuditEvent

4. 控制循环

Desired State
      |
      v
Controller / Reconciler
      |
      v
Runtime Configuration
      |
      v
Edge Runtime
      |
      v
Actual State
      |
      v
Status Update

5. 架构原则

  • Control Plane 声明期望。
  • Edge Runtime 执行期望。
  • Runtime Adapter 适配不同数据平面。
  • Traffic Policy Engine 只输出策略结果,不直接生成 Runtime 配置。
  • Configuration Compiler 负责从平台模型编译到 Runtime 配置。
  • Health Engine 为 Traffic Policy Engine 提供信号。
  • Observability 覆盖控制流和数据流。

6. 开发约定

代码命名建议:

  • Node
  • EdgeRuntime
  • CapabilityBinding
  • RuntimeBinding
  • Endpoint
  • Subscription
  • TrafficPolicy
  • RuntimeAdapter
  • ConfigurationCompiler
  • DesiredState
  • RuntimeConfiguration

数据库约定:

  • role 使用 traffic.entrytraffic.exit 等 capability role。
  • runtime-specific 配置只存在于编译结果中。
  • Gateway 只用于 Gateway Capability,不作为所有 Node 的通用名称。

API 约定:

  • Node resource 使用 /nodes
  • Subscription resource 使用 /subscriptions
  • Runtime binding 使用 /runtime-bindings
  • Capability binding 使用 /capability-bindings
OrbitMesh DocumentationContent follows the repository's main branch.