服务图 - 简化载入

Last published : Oct 06, 2026
服务图的载入过程已简化,您可以通过以下方式载入服务图:
  • 自动将代理部署为 Kubernetes 作业(#automatically-deploying-an-agent-as-a-kubernetes-job)。
  • 手动配置服务图(#manually-configuring-service-graph)。

自动将代理部署为 Kubernetes 作业

您可以自动化服务图的载入过程,此过程会自动执行以下操作:
  • 下载代理所需的 YAML。
  • 配置代理。
  • 在 NetScaler Console 中注册 Kubernetes 集群。
  • 执行所需设置,以在 NetScaler Console 中填充服务图。

先决条件

请确保您已具备:
  • 已安装 Kubernetes 1.19 或更高版本。
  • 已安装 HELM 3.x 版本。
  • 已打开所需的端口。
  • 通过配置静态路由建立连接。要使用代理在 NetScaler Console 中注册 NetScaler MPX 或 VPX,您必须确保在群集节点与 NetScaler MPX 或 VPX 之间建立连接。
    注意:
    如果您不想配置静态路由,可以配置节点控制器。有关详细信息,请参阅 https://github.com/citrix/citrix-k8s-node-controller 和 https://github.com/citrix/citrix-helm-charts/tree/master/citrix-node-controller。

从 Citrix Cloud™ 获取客户端和密钥 CSV 文件

配置代理后,从 Citrix Cloud 页面获取客户端和密钥 CSV 文件:
  1. 登录 citrix.cloud.com
  2. 单击 主页 图标并选择 身份和访问管理
    身份和访问管理
  3. 在 API 访问 选项卡中,输入安全的客户端名称,然后单击 创建客户端。
    API 访问
  4. ID 和密钥已生成。单击 下载 并保存 CSV 文件。
    ID 和密钥文件
  5. 在 Kubernetes 主节点上,运行以下命令以使用 ID 和密钥创建授权令牌: wget https://raw.githubusercontent.com/citrix/citrix-helm-charts/master/generate_token.py
    python3 generate_token.py --accessID=<accessID> --accessSecret=<accessSecret>
    注意
    授权令牌仅在 1 小时内有效。
您可以配置:
  • 通过创建自动密钥配置 NetScaler 代理
或
  • 通过创建手动密钥配置 NetScaler 代理

通过创建自动密钥配置 NetScaler Console

使用 Helm Chart 部署代理
在 Kubernetes 主节点中运行以下命令以部署代理:
helm repo add citrix https://citrix.github.io/citrix-helm-charts
helm install citrix-adm citrix/adm-agent-onboarding --namespace <namespace> --set token=<Token>
代理已部署,并且集群已注册到 NetScaler Console。当您使用自动密钥创建代理时,它还允许您部署 adm-agent-helper,以及可以创建包含代理凭据的 Kubernetes Secret 的代理。
当命名空间被标记为 citrix-cpx=enabled 时,此过程会自动发生。在 Kubernetes 主节点上运行以下命令:
kubectl label namespace <namespace> citrix-cpx=enabled
注意
如果您不想部署 adm-agent-helper,可以为代理手动创建登录密钥。
将 NetScaler VPX/MPX 注册到 NetScaler Console
注意
您可以在 NetScaler Console 中注册 NetScaler VPX/MPX,以获得额外的好处。
要将 NetScaler VPX/MPX 注册到 NetScaler Console,您必须通过配置静态路由来建立 NetScaler VPX 或 MPX 与集群节点之间的连接。如果您已配置 Citrix-node-controller,则可以忽略此过程。
您必须在命名空间中创建一个包含 NetScaler VPX/MPX 登录凭据的 Kubernetes 密钥。此过程完成后,代理将开始载入。
kubectl create secret generic nslogin --from-literal=username=<username> --from-literal=password=<adc-password> -n <namespace>
您必须将 NetScaler VPX/MPX 的管理 IP 地址设置为环境变量:adc.IP。
helm repo add citrix https://citrix.github.io/citrix-helm-charts
helm install citrix-adm citrix/adm-agent-onboarding --namespace <namespace> --set adc.IP=<ADC ManagementIP>,adc.loginSecret=nslogin --set token=<Token>
注意
确保管理 HTTP 端口 adc.mgmtHTTPPort 和 HTTPS 端口 adc.mgmtHTTPSPort(分别为 80 和 443)已打开。

通过创建手动密钥配置代理

NetScaler CPX 需要代理登录凭据才能注册到 NetScaler Console。您可以手动设置命名空间来部署 NetScaler CPX。
kubectl create secret generic admlogin --from-literal=username=nsroot --from-literal=password=<adm-agent-password> -n <namespace>
创建密钥后,您可以使用以下命令配置代理。
helm install citrix-adm citrix/adm-agent-onboarding --namespace <namespace> --set admAgent.loginSecret=admlogin --set token=<Token>
将 NetScaler VPX/MPX 注册到 NetScaler Console
要将 NetScaler VPX/MPX 注册到 NetScaler Console,您必须通过配置静态路由来建立 NetScaler VPX 或 MPX 与集群节点之间的连接。如果您已配置 Citrix-node-controller,则可以忽略此过程。
配置静态路由后,您必须在命名空间中创建一个包含 NetScaler VPX/MPX 登录凭据的 Kubernetes 密钥。此过程完成后,代理载入将开始。
kubectl create secret generic nslogin --from-literal=username=<username> --from-literal=password=<adc-password> -n <namespace>
您必须将 NetScaler VPX/MPX 的管理 IP 地址设置为环境变量:adc.IP。
helm repo add citrix https://citrix.github.io/citrix-helm-charts
helm install citrix-adm citrix/adm-agent-onboarding --namespace <namespace> --set adc.IP=<ADC ManagementIP>,adc.loginSecret=nslogin --set token=<Token>
注意
确保管理 HTTP 端口 adc.mgmtHTTPPort 和 HTTPS 端口 adc.mgmtHTTPSPort(分别为 80 和 443)已打开。
配置上述步骤后,服务图将在 15 分钟内开始填充。在 NetScaler Console 中,导航到 Applications > Service Graph,然后单击 Microservices 以查看服务图。
示例:

手动配置服务图

您可以通过以下方式手动填充服务图:
  • 将代理配置为 Kubernetes 集群中的微服务。
  • 完成其他工作流,例如注册集群、添加实例以及启用许可和详细的 TCP 和 Web 事务。
    注意
    如果您想使用现有代理或使用虚拟机管理程序配置本地 NetScaler 代理,请按照 (/zh-cn/netscaler-console-service/application-analytics-and-management/service-graph/service-graph-begin.html#single-tier-or-unified-ingress-topology) 中的步骤设置服务图以填充服务图。
  1. 导航到 Applications > Service Graph 并选择 Microservices 选项卡。
    您可以查看微服务集群未配置。单击选项进行配置。
    配置服务图
  2. 选择 自定义部署。
  3. 选择部署类型。
  4. 选择 Microservices 作为应用程序类型。
  5. 单击 Next 以设置代理。
  6. 在 Download Agent Microservice 页面中,指定以下参数:
    1. Application ID – 一个字符串 ID,用于定义 Kubernetes 集群中代理的服务,并将此代理与同一集群中的其他代理区分开来。
    2. 密码 – 指定一个密码,供 CPX 通过代理使用此密码将 CPX 加入 NetScaler Console。
    3. 确认密码 – 指定相同的密码进行确认。
      注意
      您不得使用默认密码 (nsroot)。
    4. 单击提交。
  7. 单击下载 YAML 文件或下载 Helm Chart。
  8. 在 Kubernetes 主模式下,保存下载的 YAML 文件并运行以下命令注册代理:
    kubectl create -f <yaml file>
    例如,kubectl create -f testing.yaml
    代理已成功创建。
  9. 单击注册代理。
    注册代理
    页面加载几秒钟后,将显示已注册的代理。
  10. 确保代理在列表中,然后单击下一步。
    已注册代理列表
  11. 您必须注册集群。点击 添加更多集群 并指定以下参数:
    1. 名称 - 指定您选择的名称。
    2. API 服务器 URL - 您可以从 Kubernetes 主节点获取 API 服务器 URL 详细信息。
      1. 在 Kubernetes 主节点上,运行命令 kubectl cluster-info。
        API 服务器 URL
      2. 输入显示为 “Kubernetes main is running at.” 的 URL。
    3. 身份验证令牌 - 指定身份验证令牌。身份验证令牌用于验证 Kubernetes 集群与 NetScaler Console 之间通信的访问权限。要生成身份验证令牌:
      在 Kubernetes 主节点上:
      1. 使用以下 YAML 创建服务帐户:
        apiVersion: v1
        kind: ServiceAccount
        metadata:
          name: <name>
          namespace: <namespace>
      2. 运行 kubectl create -f <yaml file>。
        服务帐户已创建。
      3. 运行 kubectl create clusterrolebinding <name> --clusterrole=cluster-admin --serviceaccount=<namespace>:<name> 将集群角色绑定到服务帐户。
        服务帐户现在具有集群范围的访问权限。
        在创建服务帐户时会自动生成一个令牌。
      4. 运行 kubectl describe sa <name> 查看令牌。
      5. 要获取密钥字符串,请运行 kubectl describe secret <token-name>。
        生成令牌
  12. 从列表中选择代理。
  13. 单击“创建”。
  14. 在“集群”页面中,将显示集群信息。单击“下一步”。
    集群
  15. 配置 CPX 和 VPX 实例,然后单击“下一步”。
    配置实例
  16. 单击“下一步”以启用详细的 Web 和 TCP 事务。
    配置许可证和 Web 事务
  17. 配置已完成。选择“服务图”,然后单击“完成”。
    服务图配置完成
服务图将在大约 15 分钟内填充。导航到“应用程序 > 服务图”,然后选择“微服务”选项卡以查看服务图。