This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
设置服务网格拓扑的详细步骤
部署服务网格拓扑的先决条件可在 设置服务图中找到。
在 Citrix ADM 中配置静态路由
在 Kubernetes 群集中,所有容器化的容器舱都使用覆盖网络。无法直接使用这些专用 IP 地址建立通信。要启用从 Citrix ADM 到 Kubernetes 群集的通信,必须在 Citrix ADM 中配置静态路由。
注意
如果您使用的是本地代理,请确保在代理上配置静态路由。使用 SSH 客户端,登录 Citrix ADM 代理并配置静态路由。
请考虑您的 Kubernetes 群集具有以下 IP 地址:
-
Kubernetes master – 101.xx.xx.112
-
Kubernetes worker 1 – 101.xx.xx.111
-
Kubernetes worker 2 – 101.xx.xx.110
在 Kubernetes master 上,运行以下命令来标识要进行静态路由的 pod 网络:
kubectl get nodes -o jsonpath="{range .items[*]}{'podNetwork: '}{.spec.podCIDR}{'\t'}{'gateway: '}{.status.addresses[0].address}{'\n'}{end}"
以下是运行命令后的示例输出:
-
使用 SSH 客户端登录到 Citrix ADM
-
使用命令配置静态路由
route add -net <public IP address range> <Kubernetes IP address>
例如:
route add -net 192.168.0.0/24 101.xx.xx.112
route add -net 192.168.1.0/24 101.xx.xx.111
route add -net 192.168.2.0/24 101.xx.xx.110
-
使用
netstat -rn
验证配置 -
将这些路由命令附加到
/mpsconfig/svm.conf
文件中。-
在 Citrix ADM 中,使用以下命令访问 svm.conf 文件:
vim /mpsconfig/svm.conf
-
在 svm.conf 文件中添加静态路由。
例如,
route add -net 192.168.0.0/24 101.xx.xx.112
。
-
配置所需的参数
在 Kubernetes 大师中:
-
在部署 CPX 作为入口网关/sidecar 的每个命名空间中使用 ADM Agent 凭据创建密钥。
kubectl create secret generic admlogin --from-literal=username=<username> --from-literal=password=<password> -n <namespace>
-
helm repo add citrix https://citrix.github.io/citrix-helm-charts/
-
将 Citrix ADC CPX 部署为入口网关
helm install citrix-adc-istio-ingress-gateway citrix/citrix-adc-istio-ingress-gateway --version 1.2.1 --namespace <namespace> --set ingressGateway.EULA=YES,citrixCPX=true,ADMSettings.ADMFingerPrint=XX:00:X1:00:XX:0X:X0,ADMSettings.ADMIP=<xx.xx.xx.xx>, ingressGateway.image=quay.io/citrix/citrix-k8s-cpx-ingress,ingressGateway.tag=13.0-58.30
下表列出了 Helm 控制图中的可配置参数及其默认值:
参数 说明 默认 可选/强制 (Helm) citrixCPX Citrix ADC CPX FALSE Citrix ADC CPX 必须使用 xDSAdaptor.image Citrix xDS 适配器容器的示意图 quay.io/citrix/citrix-istio-adaptor: 1.2.1 强制 ADMSettings.ADMIP Citrix ADM IP 地址 空值 Citrix ADC CPX 必须使用 ADMSettings.ADMFingerPrint Citrix ADM 指纹。导航到 系统 > 管理员,然后单击 系统配置 下的 查看指纹 空值 可选 ingressGateway.EULA 最终用户许可协议 (EULA) 条款和条件。如果是,则用户同意最终用户许可协议的条款和条件。 否 Citrix ADC CPX 必须使用 ingressGateway.image 被指定为入口网关运行的 Citrix ADC CPX 的映像 quay.io/citrix/citrix-k8s-cpx-ingress: 13.0—58.30 Citrix ADC CPX 必须使用 -
部署 Citrix SideCar 注射器。
helm install cpx-sidecar-injector citrix/citrix-cpx-istio-sidecar-injector --version 1.2.1 --namespace <namespace> set cpxProxy.EULA=YES,ADMSettings.ADMFingerPrint=xx:xx:xx:xx,ADMSettings.ADMIP=<xx.xx.xx.xx>,cpxProxy.image=quay.io/citrix/citrix-k8s-cpx-ingress,cpxProxy.tag=13.0-58.30
下表列出了 Helm 控制图中的可配置参数及其默认值:
参数 说明 默认值 ADMSettings.ADMIP Citrix ADM IP 地址 NIL cpxProxy.image Citrix ADC CPX 映像用作侧车代理 quay.io/citrix/citrix-k8s-cpx-ingress: 13.0—58.30 cpxProxy.imagePullPolicy Citrix ADC 的图像拉取策略 IfNotPresent cpxProxy.EULA 最终用户许可协议 (EULA) 条款和条件。如果是,则用户同意最终用户许可协议的条款和条件。 否 cpxProxy.cpxSidecarMode Citrix ADC CPX 的环境变量。它表示 Citrix ADC CPX 是否作为侧车模式运行。 是 -
在任何需要 CPX Sidecar 注入的命名空间上设置标签。
kubectl label namespace <app-namespace> cpx-injection=enabled
执行步骤 3 和 5 后,您可以看到 Citrix ADC CPX 已在 Citrix ADM 中注册。
部署示例应用程序
考虑您想部署以下应用程序:
请执行以下步骤来部署示例应用程序:
-
kubectl create namespace citrix-system
-
kubectl create namespace bookinfo
-
kubectl label namespace bookinfo cpx-injection=enabled
-
kubectl create secret generic admlogin --from-literal=username=<uername> --from-literal=password=<password> -n citrix-system
注意
您可以提供自己选择的用户名和密码。
-
kubectl create secret generic admlogin --from-literal=username=<username> --from-literal=password=<password> -n bookinfo
注意
您可以提供自己选择的用户名和密码。
-
helm install citrix-adc-istio-ingress-gateway citrix/citrix-adc-istio-ingress-gateway --version 1.2.1 --namespace citrix-system --set ingressGateway.EULA=YES,citrixCPX=true,ADMSettings.ADMFingerPrint=xx:xx:xx:xx,ADMSettings.ADMIP=<ADM agent IP address>,ingressGateway.image=quay.io/citrix/citrix-k8s-cpx-ingress,ingressGateway.tag=13.0-58.30
注意
您必须提供您的 ADM 指纹和 ADM 代理或 ADM IP 地址
-
helm install cpx-sidecar-injector citrix/citrix-cpx-istio-sidecar-injector --namespace citrix-system --set cpxProxy.EULA=YES,ADMSettings.ADMFingerPrint=xx:xx:xx:xx,ADMSettings.ADMIP=<ADM agent IP address>,cpxProxy.image=quay.io/citrix/citrix-k8s-cpx-ingress,cpxProxy.tag=13.0-58.30
注意
您必须提供您的 ADM 指纹和 ADM 代理或 ADM IP 地址
-
helm install bookinfo bookinfo/ --namespace bookinfo --set citrixIngressGateway.namespace=citrix-system
在 Citrix ADM 中添加 Kubernetes 群集
要添加库伯内特斯群集,请执行以下操作:
-
使用管理员凭据登录到 Citrix ADM。
-
导航到调配 > Kubernetes > 群集。 屏幕上将显示“群集”页面。
-
单击添加。
-
在“添加群集”页中,指定以下参数:
-
名称 -指定您选择的名称。
-
API 服务器 URL -您可以从 Kubernetes 主节点获取 API 服务器 URL 的详细信息。
-
在 Kubernetes 主节点上,运行命令
kubectl cluster-info
。 -
输入为 Kubernetes 主服务器的运行地址显示的 URL。
-
-
身份验证令牌 -指定身份验证令牌。需要身份验证令牌才能验证 Kubernetes 群集与 Citrix ADM 之间通信的访问权限。要生成身份验证令牌,请执行以下操作:
在库贝内特斯主节点上:
-
使用以下 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>
。
-
-
从列表中选择座席。
注意
如果您使用的是 ADM 代理,请确保选择与在 CPX YAML 中添加的相同代理。
-
单击创建。
-
为许可启用自动选择虚拟服务器
注意
确保您有足够的虚拟服务器许可证。有关详细信息,请参阅许可。
在 Citrix ADM 中添加 Kubernetes 群集后,必须确保自动选择虚拟服务器进行许可。虚拟服务器必须获得许可才能在服务图中显示数据。要自动选择虚拟服务器,请执行以下操作:
-
导航到系统 > 许可和分析。
-
在“虚拟服务器许可证摘要”下,启用 自动选择虚拟服务器 并 自动选择不可寻址的虚拟服务器。
启用 Web 事务和 TCP 事务设置
添加 Kubernetes 群集并启用自动选择虚拟服务器后,将 Web 事务设置和 TCP 事务设置更改为全部。
-
导航到“分析”>“设置”。
屏幕上将显示“设置”页面。
-
单击启用分析功能。
-
在 Web 事务设置下,选择 全部。
-
在 TCP 事务设置下,选择 全部。
-
单击确定。
向微服务发送流量
接下来,您必须向微服务发送流量,以便在 Citrix ADM 中填充服务图表。
-
确定入口 IP 和端口
export INGRESS_HOST=$(kubectl get pods -l app=citrix-ingressgateway -n citrix-system -o 'jsonpath={.items[0].status.hostIP}')
export INGRESS_PORT=$(kubectl -n citrix-system get service citrix-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="http2")].nodePort}')
export SECURE_INGRESS_PORT=$(kubectl -n citrix-system get service citrix-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="https")].nodePort}')
-
使用 cURL 访问 Bookinfo 前端应用程序。
productpage
服务必须返回 200 OK 响应。curl -kv https://$INGRESS_HOST:$SECURE_INGRESS_PORT/productpage
curl -v http://$INGRESS_HOST:$INGRESS_PORT/productpage
-
从浏览器访问
https://$INGRESS_HOST:$SECURE_INGRESS_PORT/productpage
。此时将显示 Bookinfo 页面。
-
确保 $INGRESS_HOST 和 $SECURE_INGRESS_PORT 被 IP 地址和端口值替换。
向微服务发送流量后,服务图将在大约 10 分钟内填充。
使用服务图表,您可以分析各种服务详细信息,例如指标、错误等。有关详细信息,请参阅 服务图。
共享
共享
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.