列出“Route”资源
本文档适用于使用服务路由 API 的网格管理员 来配置服务网格
在服务路由 API 模型中,Route
资源挂接到 Mesh
或
Gateway
项资源。在其配置中,Mesh
或 Gateway
资源
引用一个或多个 Route
资源。
如果您是 Mesh
或 Gateway
资源的所有者,则可以列出与 Mesh
或 Gateway
关联的 Route
资源。
每个 Mesh
或 Gateway
资源都有一个合成子集合,即 RouteView
资源。每个 RouteView
对应一个 Route
。RouteView
个对象
与 Route
对象一起创建。
在下图中,Gateway
A 的 RouteView
由项目 A 中的 TCPRoute
资源组成。Gateway
B 的 RouteView
由项目 B 中的 HTTPRoute
资源和项目 C 中的 GRPCRoute
资源组成。
此功能的范围限定为 Mesh
或 Gateway
级别。Gateway
或 Mesh
的 RouteView
会列出附加到该 Gateway
或 Mesh
的路由,而不是附加到关联范围的所有路由。
如需列出 RouteView
资源,请发出以下命令:
gcloud alpha network-services route-views list \ --location=global \ --[mesh | gateway]=[ MESH_NAME | GATEWAY_NAME ]
要获取有关 Route 本身的更多信息,请发出以下命令:
gcloud alpha network-services route-views describe --route-view=ROUTEVIEW_FULLNAME
常见的工作流是列出网格或网关的 RouteViews
然后对每个路由进行介绍,以便全面了解附加的路由。
您无法创建、更新或删除 RouteView
资源。它们是创建好的
会在相应 Route
资源创建完毕后更新和删除,
更新和删除
问题排查
如果 route-views 命令未能为 Listed 0 items.
等路由列出 RouteView,或者未列出所有已知路由,请执行以下操作:
- 使用以下命令验证
route-views list
中使用的 Mesh 或网关是否分别在路线的meshes
或gateways
字段中引用: gcloud network-services [http-routes|grpc-routes|tcp-routes|tls-routes] describe \ --location global ROUTE_ID
- 对于拥有大量资源的客户,请创建支持服务工单以获取帮助。
- 手动触发路线更新
- 重新导入路由
gcloud network-services http-routes export my-route --location=global \ --destination=export.yaml
gcloud network-services http-routes import my-route --location=global \ --source=export.yaml
- 对于使用生成的 NetworkServices 客户端的客户,请调用适当的 NetworkServices.Update*Route API。
- 修改说明以触发 Terraform 自动化。