跳到主要内容

资源投射

AISIX Cloud 会将已保存的资源变更发布到连接该环境的网关。每个网关都会验证新修订版本,并将接受的配置应用于新请求。发布是异步的,因此各网关实例可能会暂时报告不同的修订版本。

控制台或 API 返回成功,只能确认控制面接受了变更。要验证变更已生效,请依次追踪控制面修订版本、网关快照和实时请求。

资源作用域

资源所有权和策略作用域决定哪些网关会接收资源,以及哪些请求会使用该资源。

资源投射规则
模型和调用方 API Key投射到连接其所属环境的网关。
模型服务提供方密钥仅投射到允许使用该密钥的环境。模型还必须引用该模型服务提供方密钥。
安全护栏随所属环境投射,并挂载到环境、模型、调用方 API Key 或团队。
缓存策略随所属环境投射,并应用于全部流量、某个模型别名或某个调用方 API Key。
限流策略随所属环境投射,并以调用方 API Key、模型、团队、成员或团队成员为目标。

验证投射的变更

按顺序检查控制面、网关和实时请求。

1. 比较已发布和已应用的修订版本

设置控制面 API URL、具有 read 权限范围的 Admin Token 和环境 ID:

export AISIX_CP="https://<your-cp-api-host>/api"
export AISIX_TOKEN="YOUR_ADMIN_TOKEN"
export ENV_ID="YOUR_ENVIRONMENT_ID"

比较 store_revision 与各节点的 applied_revision

curl -sS "${AISIX_CP}/environments/${ENV_ID}/dp_nodes" \
-H "Authorization: Bearer ${AISIX_TOKEN}" \
| jq '{
store_revision,
nodes: [
.data[] |
{
hostname,
last_heartbeat_at,
applied_revision,
config_hash
}
]
}'

当节点的 applied_revision 大于或等于 store_revision 时,该节点即为最新状态。config_hash 相同表示各网关实例接受了相同的配置。

可选的修订版本字段

当修订跟踪不可用,或网关尚未上报相关字段时,控制面可能会省略 store_revisionapplied_revisionconfig_hash。此时,请使用下一步中的网关状态端点。心跳按周期上报,因此网关的直接状态也可能比控制面视图更新。

如果网关没有最新心跳,请先排查其管理连接,再检查资源投射。请参阅连接 AISIX 网关

2. 检查网关快照

查询正在处理流量的网关实例上的指标和状态监听器:

curl -sS "http://127.0.0.1:9090/status/config" \
| jq '{
state,
source,
applied,
rejected,
last_failure
}'

statesyncedsource.connectedtrueapplied.applied_revision 反映预期修订版本且 rejected 为空时,变更即已完全应用。

如果 source.connectedfalse,请恢复配置连接。中断期间,网关可以继续使用最近一次接受的快照提供服务,但无法接收新变更。请参阅离线韧性

如果 statedegradedout_of_sync,请使用 rejectedlast_failure 识别无效资源。有关状态定义、完整响应和 Prometheus 指标,请参阅配置状态

将状态监听器保持在私有网络中

状态监听器不需要身份认证。请确保端口 9090 仅对监控网络开放。

3. 验证调用方可见行为

网关应用变更后,请通过应用实际使用的同一个网关端点和调用方身份进行验证。

对于模型或调用方访问权限变更,先查询模型发现端点:

export AISIX_PROXY="http://127.0.0.1:3000"
export AISIX_API_KEY="YOUR_CALLER_API_KEY"

curl -sS "${AISIX_PROXY}/v1/models" \
-H "Authorization: Bearer ${AISIX_API_KEY}" \
| jq -r '.data[].id'

确认预期的模型别名已出现,然后按照相应模型服务提供方或功能指南发送请求。

如果修订版本匹配后结果仍不符合预期,请先确认请求到达了所检查的网关,再检查环境、模型别名、调用方 API Key、模型服务提供方密钥的环境访问权限和策略作用域。

下一步

如果尚未发送实时流量,请选择模型服务提供方上游,并按照相应的设置指南操作。在将多个网关实例置于生产负载均衡器之前,请阅读高可用