架构
系统架构
SPIRE 采用分布式架构,由以下核心组件组成:
graph TB
subgraph "控制平面"
Server[SPIRE Server]
DS[(数据存储)]
CA[CA 管理器]
end
subgraph "数据平面 - 节点 1"
Agent1[SPIRE Agent]
W1[工作负载 A]
W2[工作负载 B]
end
subgraph "数据平面 - 节点 2"
Agent2[SPIRE Agent]
W3[工作负载 C]
end
Server --> DS
Server --> CA
Agent1 <-->|gRPC| Server
Agent2 <-->|gRPC| Server
W1 <-->|Workload API| Agent1
W2 <-->|Workload API| Agent1
W3 <-->|Workload API| Agent2
组件职责
组件 |
职责 |
|---|---|
SPIRE Server |
中央授权机构,管理身份和信任 |
SPIRE Agent |
节点级代理,提供 Workload API |
数据存储 |
持久化存储注册条目和证明数据 |
CA 管理器 |
管理签名密钥和证书颁发 |
通信模式
Server-Agent 通信
协议:gRPC over mTLS
端口:默认 8081
认证:Agent SVID
Agent-Workload 通信
协议:gRPC over Unix Domain Socket
路径:默认
/tmp/spire-agent/public/api.sock认证:基于进程 PID 的工作负载证明
高可用性
SPIRE Server 支持高可用部署:
多实例部署
共享数据存储(PostgreSQL/MySQL)
负载均衡