设置服务图

软件要求

Kubernetes 分发 Kubernetes 版本 容器网络接口 (CNI) CPX 版本 CIC 版本 NetScaler ADM 版本 NetScaler 代理版本
开源 v1.16.3 Flannel、Calico 或 Canal 13.0–41.28 或更高版本 1.5.25 或更高版本 13.0–47.22 或更高版本 13.0–47.22 或更高版本

您可以使用各种部署拓扑配置 Kubernetes 集群,下表提供了服务图支持的拓扑:

拓扑 服务图支持
单层或统一入口
双层
是,但云负载均衡器未在图中显示
服务网格精简版
服务网格
LoadBalancer 类型的服务
NodePort 类型的服务

要在 NetScaler® ADM 中完成服务图的设置,请单击您为 Kubernetes 集群配置的拓扑类型,并完成以下步骤:

注意

双层和服务网格精简版拓扑的服务图设置过程相同。

开始之前

您可以使用以下场景查看服务图:

  • NetScaler ADM 和 Kubernetes 集群位于同一网络上(例如,NetScaler ADM 和 Kubernetes 集群托管在同一 Citrix Hypervisor™ 上)。

  • NetScaler ADM 和 Kubernetes 集群位于不同的网络上。在这种情况下,您必须配置本地代理并在托管 Kubernetes 集群的网络上注册该代理。

单层或统一入口拓扑

请确保您已:

双层或服务网格精简版拓扑

请确保您已:

服务网格拓扑

请确保您已:

  • 使用以下任一服务网格拓扑配置了 Kubernetes 集群版本 1.14.0

    • NetScaler CPX 作为 Istio 的 Sidecar 代理

    • NetScaler 作为 Istio 的入口网关

  • 启用了 admissionregistration.k8s.io/v1beta1 API。您可以使用以下命令验证 API:

    kubectl api-versions | grep admissionregistration.k8s.io/v1beta1

    以下输出表示 API 已启用:

    admissionregistration.k8s.io/v1beta1

  • 安装了 Istio istio v.1.3.0

  • 安装了 Helm 版本 3.x

  • 在 NetScaler ADM 上配置了静态路由,以启用 NetScaler ADM 和 NetScaler CPX 之间的通信。

    注意

    如果您已将 NetScaler 代理作为微服务部署在同一集群中,则可以忽略此过程。

  • 配置了所需参数以填充服务网格拓扑数据。

  • 部署了示例应用程序

  • 在 NetScaler ADM 中添加了 Kubernetes 集群

  • 启用了自动选择虚拟服务器以许可虚拟服务器。

    注意

    当 CPX 作为 Sidecar 代理部署在服务网格部署中时,仅当 IP 地址与 CPX NS IP 匹配时,虚拟服务器才会被许可。

  • 将 NetScaler 代理的 Web 事务和 TCP 事务设置设置为 All,以获取 HTTP 和 TCP 事务。

  • 向微服务发送了流量

设置服务图