服务图-简化的登录流程
简化了服务图的入门流程,您可以通过以下方式载入服务图:
自动将代理部署为 Kubernetes 作业
您可以自动执行服务图的入门流程,并自动执行此过程:
-
下载代理所需的 YAML。
-
配置代理。
-
在 NetScaler 控制台中注册 Kubernetes 群集。
-
执行所需的设置以在 NetScaler 控制台中填充服务图。
必备条件
请确保您具有:
-
一个 Citrix Cloud 帐户。
-
已安装 Kubernetes 版本 1.19 或更高版本。
-
已安装 HELM 版本 3.x。
-
已打开所需的 端口。
-
通过配置静态路由建立了连接。要使用代理在 NetScaler 控制台中注册 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 文件:
-
登录 citrix.cloud.com
-
单击主页图标,然后选择身份和访问管理
-
在 API 访问 选项卡中,输入安全客户端名称,然后单击 创建客户端。
-
生成 ID 和密钥。单击“下载”并保存 CSV 文件。
-
在 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 控制台
使用 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 控制台。当您使用自动密钥创建代理时,它还允许您部署 ,以及可adm-agent-helper
以创建包含代理凭据的 Kubernetes 密钥的代理。
当命名空间被标记为 citrix-cpx=enabled
时,此过程会自动发生。在 Kubernetes 主节点上运行以下命令:
kubectl label namespace <namespace> citrix-cpx=enabled
注意:如
果您不想部
adm-agent-helper
署 ,可以手动为代理创建登录密钥。
使用 NetScaler 控制台注册 NetScaler VPX/MPX
注意
您只能在 NetScaler 控制台中注册 NetScaler VPX/MPX 以获得额外好处。
要在 NetScaler 控制台中注册 NetScaler VPX/MPX,必须通过配置静态路由在 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.mgmthtport 和 HTTPS 端口 adc.mgmthtport as 80 和 443 处于打开状态。
通过创建手动密钥来配置代理
NetScaler CPX 需要代理登录凭据才能将自己注册到 NetScaler 控制台。您可以手动设置命名空间以部署 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 控制台注册 NetScaler VPX/MPX
要在 NetScaler 控制台中注册 NetScaler VPX/MPX,必须通过配置静态路由在 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.mgmthtport 和 HTTPS 端口 adc.mgmthtport as 80 和 443 处于打开状态。
配置上述步骤后,服务图表将在 15 分钟持续时间内开始填充。在 NetScaler 控制台中,导航 到“应用程序”>“服务 图”,然后 单击“**微服务”以查看服务图。
示例:
-
要使用服务网格精简版生成服务图,请参阅 服务图示例。
-
要生成 Citrix 与 Istio Service Mesh 集成的服务图,请参见使用 NetScaler 可观测性和 NetScaler 控制台的服务图。
手动配置服务图
您可以通过以下方式手动填充服务图:
-
在 Kubernetes 群集中将代理配置为微服务。
-
完成其他工作流程,例如注册群集、添加实例、启用许可和详细的 TCP 和 Web 事务。
注意
如果要使用现有代理或使用虚拟机管理程序配置本地 NetScaler 代理,请按照 设置服务图中的步骤填充服务 图。
-
导航到“应用程序”>“服务图”,然后选择“微服务”选项卡。
您可以查看微服务群集未配置。点击选项进行配置。
-
选择 自定义部署。
-
选择部署类型。
-
选择 微服务 作为应用程序类型。
-
单击“下一步”设置代理。
-
在“下 载代理微服务”页中,指定以下参数:
-
应用程序 ID — 一个字符串 ID,用于为 Kubernetes 群集中的代理定义服务并将此代理与同一群集中的其他代理区分开来。
-
密码— 指定一个密码,让 CPX 使用此密码通过代理将 CPX 载入 NetScaler 控制台。
-
确认密码 — 指定相同的密码进行确认。
注意
不得使用默认密码 (
nsroot
)。 -
单击 Submit(提交)。
-
-
单击“下载 YAML 文件”或“下载 Helm Chart”。
-
在 Kubernetes 主模式下,保存下载的 YAML 文件并运行以下命令来注册代理:
kubectl create -f <yaml file>
例如,
kubectl create -f testing.yaml
代理已成功创建。
-
单击 注册代理。
页面加载几秒钟并显示已注册的代理。
-
确保该代理是否在列表中,然后单击“下一步”。
-
您必须注册群集。单击“添加更多群集”并指定以下参数:
-
名称 -指定您选择的名称。
-
API 服务器 URL -您可以从 Kubernetes 主节点获取 API 服务器 URL 详细信息。
-
在 Kubernetes 主节点上,运行命令
kubectl cluster-info
。 -
输入显示的 Kubernetes main 正在运行的 URL。
-
-
身份验证令牌 -指定身份验证令牌。验证令牌是验证 Kubernetes 群集和 NetScaler 控制台之间通信的访问权限所必需的。要生成身份验证令牌,请执行以下操作:
在 Kubernetes 主节点上:
-
使用以下 YAML 创建服务帐户:
apiVersion: v1 kind: ServiceAccount metadata: name: <name> namespace: <namespace> <!--NeedCopy-->
-
运行
kubectl create -f <yaml file>
。服务帐户即被创建。
-
运行
kubectl create clusterrolebinding <name> --clusterrole=cluster-admin --serviceaccount=<namespace>:<name>
以将群集角色绑定到服务帐户。服务帐户现在拥有群集范围的访问权限。
令牌是在创建服务帐户时自动生成的。
-
运行
kubectl describe sa <name>
以查看令牌。 -
要获取密钥字符串,请运行
kubectl describe secret <token-name>
。
-
-
-
从列表中选择座席。
-
单击创建。
-
在 群集 页面中,显示群集信息。单击下一步。
-
配置 CPX 和 VPX 实例,然后单击“下一步”。
-
单击“下一步”启用详细的 Web 和 TCP 事务。
-
配置已完成。选择“服务图”,然后单击“完成”。
服务图表将在大约 15 分钟内填充。导航到“应用程序”>“服务图”,然后选择“微服务”选项卡以查看服务图。