UiPath Documentation
automation-suite
2.2510
true
EKS/AKS 上的 Automation Suite 安装指南
重要 :
请注意,此内容已使用机器翻译进行了部分本地化。 新发布内容的本地化可能需要 1-2 周的时间才能完成。

安装和配置服务网格

在 EKS/AKS 上为 Automation Suite 安装和配置 Istio 服务网格。

重要提示:

仅当您无法为 Automation Suite 安装程序提供管理员权限时,安装权限才有意义。 如果您可以为安装程序提供所需的管理员权限,则无需遵循本部分中的说明。

Automation Suite 需要 Istio 服务网格用于入口和网络。

服务网格的安装和配置是一个多步骤过程。您必须执行的步骤取决于您是否可以向 Automation Suite 安装程序授予对集群的管理员权限。有关详细信息,请参阅下表:

步骤管理员权限没有管理员权限
步骤 1:安装服务网格步骤非必填必需步骤
步骤 2:配置 Istio 并安装 WASM 路由插件步骤非必填必需步骤

步骤 1:安装服务网格​

要安装 Istio,请参阅Istio 官方文档。

备注:

Automation Suite 不需要 Kiale 和 Jaeger 等应用程序。 但是,您可以自行决定使用它们。

提供 Istio 配置​

要提供 Istio 配置,必须在input.json文件中设置以下参数:

"ingress": {
  "gateway_selector": {
    "istio": "ingressgateway"
  },
  "ingress_gateway_secret": "istio-ingressgateway-certs",
  "namespace": "<istio-system>",
  "istio_gateway_service_name": "istio-ingressgateway"
},
"ingress": {
  "gateway_selector": {
    "istio": "ingressgateway"
  },
  "ingress_gateway_secret": "istio-ingressgateway-certs",
  "namespace": "<istio-system>",
  "istio_gateway_service_name": "istio-ingressgateway"
},

下表介绍了 Istio 配置参数:

参数值
ingress.gateway_selector.istio这是 Automation Suite 内部使用的默认标签。但是,您的环境可能会对 Istio 入口网关使用不同的标签,具体取决于集群的配置方式。
默认值为 ingressgateway。
ingress.ingress_gateway_secret包含证书文件的密码的名称。
默认值为 istio-ingressgateway-certs。
ingress.namespace在其中安装服务网格的命名空间。
ingress.istio_gateway_service_name*Istio 入口网关服务的名称。
默认值为 istio-ingressgateway。

* 从 Automation Suite 2.2510.2 开始可用。

要检查 Istio 入口网关使用的标签,请运行以下命令:

kubectl -n <istio-system> get deploy istio-ingressgateway -o jsonpath="{.metadata.labels.istio}"; echo
kubectl -n <istio-system> get deploy istio-ingressgateway -o jsonpath="{.metadata.labels.istio}"; echo

步骤 2:配置 Istio 并安装 WASM 路由插件​

概述​

重要提示:

此步骤需要管理员权限才能在 Istio 命名空间中进行安装。

有两种方法可以执行安装:

  • 选项 A:如果您无法提供 Automation Suite 安装程序所需的权限,则必须在安装 Automation Suite 之前执行此步骤。
  • 选项 B:在安装 Automation Suite 期间。此方法要求您在 Automation Suite 安装期间使用的 Kubeconfig 文件具有必要的权限。要查看权限,请参阅“授予安装权限”部分。如果您可以提供所有必要的权限,则跳过此步骤。

配置与安装​

要配置 Istio 并安装用于路由的 WASM 插件,请执行以下步骤:

  1. 在安装服务网格的命名空间中创建imagepullsecret 。 要创建imagepullsecret ,请使用典型工作流或执行以下步骤:

    registry= <registry_url> #provide the registry where the UiPath images are hosted
    username= <user_name> #provide the username which will be used for the authentication
    password= <password> #provide the password which will be used for the authentication
    namespace= <namespace> #namespace where you want to create a secret
    
    kubectl create secret docker-registry uipathpullsecret --namespace=${namespace} \
      --docker-server=${registry} --docker-username=${username} \
      --docker-password=${password} --dry-run=client -o yaml \
      | kubectl apply -f -
    registry= <registry_url> #provide the registry where the UiPath images are hosted
    username= <user_name> #provide the username which will be used for the authentication
    password= <password> #provide the password which will be used for the authentication
    namespace= <namespace> #namespace where you want to create a secret
    
    kubectl create secret docker-registry uipathpullsecret --namespace=${namespace} \
      --docker-server=${registry} --docker-username=${username} \
      --docker-password=${password} --dry-run=client -o yaml \
      | kubectl apply -f -
    
  2. 将 Helm 图表拉取到本地目录<uipath-istio-configure> :

    helm pull oci://<docker-registry>/helm/istio-configure --version <istio-configure-version> \
    --untar --untardir <uipath-istio-configure>
    helm pull oci://<docker-registry>/helm/istio-configure --version <istio-configure-version> \
    --untar --untardir <uipath-istio-configure>
    

    以下示例显示了将占位符替换为实际值后的命令:

    helm pull oci://registry.mycompany.com/helm/istio-configure --version 2.2510.0 \
    --untar --untardir uipath-istio-configure
    helm pull oci://registry.mycompany.com/helm/istio-configure --version 2.2510.0 \
    --untar --untardir uipath-istio-configure
    
  3. 创建要在 Helm 安装istio-configure期间应用的参数值文件。使用以下示例作为文件的模板,并将<fqdn> 、 <cluster_type> 、 <pullsecret> 、 <registry>和<uipath_namespace>占位符替换为适当的值:

    fqdn: <fqdn>    #the FQDN of the Automation Suite
    gateway:
      selector:
        istio: ingressgateway
    global:
      cluster_type: <cluster_type>    # REQUIRED. Example: eks, aks, openshift
      kubernetesDistribution: <cluster_type>  # REQUIRED. Example: eks, aks, openshift
      imagePullSecret:
        name: <pullsecret>    #name of pull secret which you had create earlier
    minProtocolVersion: TLSV1_2   #TLS versions
    uipath:
      registry: <registry>    #registry url without the protocol 
    uipathServiceNamespace: <uipath_namespace>   #namespace where the uipath application is deployed
    patchIstioService: false
    istioGatewayServiceName: "istio-ingressgateway"
    wasm:
      image:
        pullSecret: <pullsecret>    #name of pull secret which you had create earlier
        registry: oci://<registry>   #registry url without the protocol
    fqdn: <fqdn>    #the FQDN of the Automation Suite
    gateway:
      selector:
        istio: ingressgateway
    global:
      cluster_type: <cluster_type>    # REQUIRED. Example: eks, aks, openshift
      kubernetesDistribution: <cluster_type>  # REQUIRED. Example: eks, aks, openshift
      imagePullSecret:
        name: <pullsecret>    #name of pull secret which you had create earlier
    minProtocolVersion: TLSV1_2   #TLS versions
    uipath:
      registry: <registry>    #registry url without the protocol 
    uipathServiceNamespace: <uipath_namespace>   #namespace where the uipath application is deployed
    patchIstioService: false
    istioGatewayServiceName: "istio-ingressgateway"
    wasm:
      image:
        pullSecret: <pullsecret>    #name of pull secret which you had create earlier
        registry: oci://<registry>   #registry url without the protocol
    
  4. 使用 Helm 在 Istio 命名空间中安装istio-configure 。 在以下命令中,将<istio_namespace>占位符替换为安装 Istio 的命名空间,并将<path_to_the_values_yaml>替换为包含参数值的 YAML 文件的位置:

    helm upgrade --debug --install --wait custom-istio-configure \
      uipath-istio-configure/istio-configure --version 2.2510.0 \
      --namespace <istio_namespace> -f <path_to_the_values.yaml>
    helm upgrade --debug --install --wait custom-istio-configure \
      uipath-istio-configure/istio-configure --version 2.2510.0 \
      --namespace <istio_namespace> -f <path_to_the_values.yaml>
    
  5. 如果使用未经已知授权机构签名的注册表,则必须将WASM_INSECURE_REGISTRIES环境变量添加到istio-ingressgateway部署中,以便 Istio 可以拉取 WASM 插件使用的映像。 要添加环境变量,请运行以下命令:

    kubectl -n <istio-system> patch deployment istio-ingressgateway --type json -p='[{"op": "add", "path": "/spec/template/spec/containers/0/env", "value": [{"name": "WASM_INSECURE_REGISTRIES", "value": "registry.mycompany.com"}]}]'
    kubectl -n <istio-system> patch deployment istio-ingressgateway --type json -p='[{"op": "add", "path": "/spec/template/spec/containers/0/env", "value": [{"name": "WASM_INSECURE_REGISTRIES", "value": "registry.mycompany.com"}]}]'
    
  6. 将istio-configure添加到input.json文件的exclude_components部分。有关详细信息,请参阅配置 input.json 。

  7. 使用<istio-system>命名空间中的ingress.ingress_gateway_secret中提供的名称创建证书密码。

重要提示:

如果在安装后更新 FQDN,则必须重新配置 Istio 和 WASM 插件,除非 Automation Suite 安装程序具有管理权限。要重新配置,您必须执行以下步骤:

  1. 使用新的 FQDN 更新步骤 3中提到的参数值文件。
  2. 重复配置 Istio 并安装 WASM 路由插件的所有步骤。
  • 步骤 1:安装服务网格​
  • 提供 Istio 配置​
  • 步骤 2:配置 Istio 并安装 WASM 路由插件​
  • 概述​
  • 配置与安装​

此页面有帮助吗?

连接

需要帮助? 支持

想要了解详细内容? UiPath Academy

有问题? UiPath 论坛

保持更新