UiPath Documentation
automation-suite
2.2510
true
Guia de instalação do Automation Suite no OpenShift
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

Instalação e configuração do service mesh

Instale e configure o Istio service mesh ou o OpenShift Service Mesh para redes do Automation Suite.

Importante:

If you grant the Automation Suite installer cluster-admin privileges - or the required write permissions together with the required cluster roles - the installer configures Istio and installs the WASM plugin for routing automatically. In that case, you can skip Step 2: Configuring Istio and installing the WASM plugin for routing and Step 3: Configuring Istio for multiple installations in a single cluster. Perform these steps manually only if you cannot grant the installer those privileges.

O Automation Suite requer o service mesh do Istio para o Ingress e a rede.

A Red Hat fornece o OpenShift Service Mesh, que depende do Istio internamente.

A instalação e a configuração do service mesh é um processo em várias etapas. Qual das etapas você deve executar depende de se você pode ou não conceder privilégios de administrador ao instalador do Automation Suite sobre seu cluster. Para obter detalhes, consulte a seguinte tabela:

EtapaPrivilégios de administradorSem privilégios de administrador
Etapa 1: instalar o service meshRequiredRequired
Etapa 2: Configurando o Istio e instalando o plug-in HASM para roteamentoNão é necessárioRequired
Etapa 3: Configurando o Istio para várias instalações em um único clusterNão é necessárioRequired

Etapa 1: instalar o service mesh​

Observação:

Before selecting an installation procedure, review the OpenShift Service Mesh compatibility matrix to confirm which OSSM versions are supported for your Automation Suite on OpenShift version.

Para instalar o OpenShift Service Mesh, consulte o procedimento que se aplica à versão que você usa:

Observação:

O Automation Suite não requer aplicativos como o Kiali e o Jaeger. No entanto, você pode usá-los como quiser.

A UiPath® não tem uma opinião sobre a configuração do Operador do Service Mesh para ser executado em qualquer nó.

Instalando o OpenShift Service Mesh 2.x​

Para instalar o OpenShift Service Mesh 2.x, siga as instruções na documentação do OpenShift Service Mesh.

Para criar o Plano de controle do OpenShift Service Mesh, siga as instruções na documentação do Plano de controle do OpenShift Service Mesh. Certifique-se de executar também as seguintes etapas:

  1. Instale a nova instância do plano de controle do service mesh no namespace <istio-system> .

  2. Use o modo ClusterWide para o plano de controle do service mesh. Para o modo MultiTenant , consulte o ponto 3 nesta página. O seguinte bloco deve estar presente na seção spec do recurso ServiceMeshControlPlane :

     gateways:
       enabled: true
       openshiftRoute:
         enabled: true
     mode: ClusterWide
     gateways:
       enabled: true
       openshiftRoute:
         enabled: true
     mode: ClusterWide
    

    Para desabilitar a rota OpenShift, consulte o ponto 4 nesta página.

  3. Você pode usar o modo MultiTenant para o plano de controle da malha de serviço. Esse cenário requer que você crie explicitamente uma lista de membros da malha de serviço, conforme mostrado na seguinte amostra:

    apiVersion: maistra.io/v1
    kind: ServiceMeshMemberRoll
    metadata:
      name: default
      namespace: <istio-system>
    spec:
      members:
        - <uipath>
    apiVersion: maistra.io/v1
    kind: ServiceMeshMemberRoll
    metadata:
      name: default
      namespace: <istio-system>
    spec:
      members:
        - <uipath>
    
  4. Você também tem a opção de desabilitar a rota do OpenShift. No entanto, essa escolha vem com a responsabilidade adicional de criar manualmente uma rota para o FQDN. Para criação de rota manual, consulte o seguinte exemplo:

    kind: Route
    apiVersion: route.openshift.io/v1
    metadata:
      name: uipath-route
      namespace: <istio-system>
      labels:
        app: istio-ingressgateway
        app.kubernetes.io/part-of: istio
        app.kubernetes.io/instance: <istio-system>
        maistra.io/owner-name: basic
        release: istio
        app.kubernetes.io/version: 2.6.1-1-1
        app.kubernetes.io/component: istio-ingress
        maistra-version: 2.6.1
        istio: ingressgateway
        app.kubernetes.io/managed-by: maistra-istio-operator
        maistra.io/owner: <istio-system>
        istio.io/rev: basic
        app.kubernetes.io/name: istio-ingress
    spec:
      to:
        kind: Service
        name: istio-ingressgateway
      tls:
        termination: passthrough
        insecureEdgeTerminationPolicy: Redirect
      host: <fqdn>
      port:
        targetPort: https
      alternateBackends: []
    kind: Route
    apiVersion: route.openshift.io/v1
    metadata:
      name: uipath-route
      namespace: <istio-system>
      labels:
        app: istio-ingressgateway
        app.kubernetes.io/part-of: istio
        app.kubernetes.io/instance: <istio-system>
        maistra.io/owner-name: basic
        release: istio
        app.kubernetes.io/version: 2.6.1-1-1
        app.kubernetes.io/component: istio-ingress
        maistra-version: 2.6.1
        istio: ingressgateway
        app.kubernetes.io/managed-by: maistra-istio-operator
        maistra.io/owner: <istio-system>
        istio.io/rev: basic
        app.kubernetes.io/name: istio-ingress
    spec:
      to:
        kind: Service
        name: istio-ingressgateway
      tls:
        termination: passthrough
        insecureEdgeTerminationPolicy: Redirect
      host: <fqdn>
      port:
        targetPort: https
      alternateBackends: []
    
    AVISO:

    Desabilitar a rota OpenShift levará ao seguinte erro ao executar as verificações de pré-requisitos:

    ❌ [ISTIO_SERVICEMESH_VALIDATION_URL_ACCESS] error accessing the url. unexpected status code: 503
    ❌ [ISTIO_SERVICEMESH_VALIDATION_URL_ACCESS] error accessing the url. unexpected status code: 503
    
Instalação de uma versão específica do OpenShift Service Mesh​

Use um arquivo YAML para instalar uma versão específica do OpenShift Service Mesh (OSSM). O seguinte arquivo de exemplo instala a versão 2.4.5 do OSSM:

apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
  name: servicemeshoperator
  namespace: openshift-operators
spec:
  channel: stable
  installPlanApproval: Manual
  name: servicemeshoperator
  source: redhat-operators
  sourceNamespace: openshift-marketplace
  startingCSV: servicemeshoperator.v2.4.5
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
  name: servicemeshoperator
  namespace: openshift-operators
spec:
  channel: stable
  installPlanApproval: Manual
  name: servicemeshoperator
  source: redhat-operators
  sourceNamespace: openshift-marketplace
  startingCSV: servicemeshoperator.v2.4.5

Se você planeja instalar uma versão diferente do OSSM, substitua servicemeshoperator.v2.4.5 pelo valor correto para sua versão no arquivo YAML. Por exemplo, para instalar a versão 2.5.0 do OSSM, insira servicemeshoperator.v2.5.0.

Para instalar o OSSM, execute o seguinte comando:

oc apply -f <yaml>
oc apply -f <yaml>

Substitua o espaço reservado <yaml> no comando de exemplo pelo nome do seu arquivo YAML.

Importante:

Depois de instalar o OSSM, você deve aprovar manualmente a instalação.

No console do OpenShift, acesse Operadores > Operadores instalados > Serviceme Shopator > 1 requer aprovação > Visualizar Plano de Instalação > Aprovar.

Instalando o OpenShift Service Mesh 3.x​

Antes de instalar o OpenShift Service Mesh 3.x, certifique-se de que:

  • Your OpenShift Service Mesh and Automation Suite versions are compatible. For the supported combinations, refer to the Compatibility matrix.
  • Você tem permissões de administrador do cluster do OpenShift.
  • Você pode acessar o console da Web OpenShift.
  • Você tem o nome de domínio (FQDN) usado para o roteamento do Automation Suite.
  • Você tem o OpenShift CLI (oc) instalado em sua estação de trabalho.

Uma configuração completa do OpenShift Service Mesh 3.x para o Automation Suite depende dos seguintes componentes. O Operador do Service Mesh não provisiona todos eles automaticamente; portanto, certifique-se de que cada um esteja presente no cluster antes de instalar o Automation Suite:

  • Service Mesh Operator - Gerencia o ciclo de vida do service mesh. Você o instala a partir do OperatorHub.
  • Plano de controle do Istio - Fornece o plano de controle principal e a funcionalidade do plano de dados. O operador o provisiona após você criar o Istio recurso.
  • Plug-in do Istio CNI - Configura e impõe regras de rede mesh. O operador o provisiona após você criar o IstioCNI recurso.
  • Gateway de ingresso - Expõe os aplicativos do Automation Suite ao tráfego externo. Você deve implantá-lo por conta própria; o operador não o cria automaticamente.
  • Rotas - Forneça pontos de entrada para componentes do Automation Suite e o ponto de extremidade de validação. Você deve criar esses objetos Route do OpenShift por conta própria, conforme descrito nas etapas abaixo.

Para instalar o OpenShift Service Mesh 3.x, siga as instruções para instalar o operador do OperatorHub usando o console da Web OpenShift. Para obter detalhes, consulte a documentação do OpenShift Service Mesh.

Certifique-se de executar também as seguintes etapas:

  1. Instale o operador do Service Mesh a partir do OperatorHub seguindo as instruções fornecidas na documentação do OpenShift Service Mesh.

  2. Certifique-se de que o gateway de entrada inclua os rótulos corretos. Os rótulos devem corresponder aos valores que você passa como o seletor de gateway no arquivo input.json . Para verificar o rótulo do gateway de ingresso, execute:

    oc get pods -l istio=ingressgateway -n <istio-system>
    oc get pods -l istio=ingressgateway -n <istio-system>
    
  3. Crie as rotas necessárias usando um arquivo YAML. O arquivo YAML deve definir caminhos para o ponto de extremidade principal do Automation Suite, o ponto de extremidade do Apps, o ponto de extremidade do Insights e o ponto de extremidade de validação. Para obter detalhes, consulte os seguintes exemplos:

    • Ponto de extremidade do Automation Suite:
      ---
      kind: Route
      apiVersion: route.openshift.io/v1
      metadata:
        name: uipath-route-https
        namespace: <istio-system>
      spec:
        host: <FQDN>
        to:
          kind: Service
          name: istio-ingressgateway # Istio Ingress gateway Service
        port:
          targetPort: https
        tls:
          termination: passthrough
          insecureEdgeTerminationPolicy: Redirect
      ---
      kind: Route
      apiVersion: route.openshift.io/v1
      metadata:
        name: uipath-route-https
        namespace: <istio-system>
      spec:
        host: <FQDN>
        to:
          kind: Service
          name: istio-ingressgateway # Istio Ingress gateway Service
        port:
          targetPort: https
        tls:
          termination: passthrough
          insecureEdgeTerminationPolicy: Redirect
      
    • Ponto de extremidade do Apps:
      ---
      kind: Route
      apiVersion: route.openshift.io/v1
      metadata:
        name: uipath-route-apps
        namespace: <istio-system>
      spec:
        host: apps.<FQDN>
        to:
          kind: Service
          name: istio-ingressgateway # Istio Ingress gateway Service
        port:
          targetPort: https
        tls:
          termination: passthrough
          insecureEdgeTerminationPolicy: Redirect
      ---
      kind: Route
      apiVersion: route.openshift.io/v1
      metadata:
        name: uipath-route-apps
        namespace: <istio-system>
      spec:
        host: apps.<FQDN>
        to:
          kind: Service
          name: istio-ingressgateway # Istio Ingress gateway Service
        port:
          targetPort: https
        tls:
          termination: passthrough
          insecureEdgeTerminationPolicy: Redirect
      
    • Ponto de extremidade do Insights:
      ---
      kind: Route
      apiVersion: route.openshift.io/v1
      metadata:
        name: uipath-route-insights
        namespace: <istio-system>
      spec:
        host: insights.<FQDN>
        to:
          kind: Service
          name: istio-ingressgateway # Istio Ingress gateway Service
        port:
          targetPort: https
        tls:
          termination: passthrough
          insecureEdgeTerminationPolicy: Redirect
      ---
      kind: Route
      apiVersion: route.openshift.io/v1
      metadata:
        name: uipath-route-insights
        namespace: <istio-system>
      spec:
        host: insights.<FQDN>
        to:
          kind: Service
          name: istio-ingressgateway # Istio Ingress gateway Service
        port:
          targetPort: https
        tls:
          termination: passthrough
          insecureEdgeTerminationPolicy: Redirect
      
    • ponto de extremidade de validação:
      ---
      kind: Route
      apiVersion: route.openshift.io/v1
      metadata:
        name: istio-validation-route
        namespace: <istio-system>
      spec:
        host: istio-validation.<FQDN> # Istio Ingress gateway Service
        to:
          kind: Service
          name: istio-ingressgateway
        port:
          targetPort: http2
      ---
      kind: Route
      apiVersion: route.openshift.io/v1
      metadata:
        name: istio-validation-route
        namespace: <istio-system>
      spec:
        host: istio-validation.<FQDN> # Istio Ingress gateway Service
        to:
          kind: Service
          name: istio-ingressgateway
        port:
          targetPort: http2
      

    Esta rota é necessária para o PreReq Run. Se ausente, o OpenShift pode retornar o seguinte erro:

    ❌ [ISTIO_SERVICEMESH_VALIDATION_URL_ACCESS] error accessing the url. unexpected status code: 503

  4. Aplique as definições de rota:

    oc apply -f routes.yaml
    oc apply -f routes.yaml
    
  5. Verifique se as rotas foram criadas com sucesso:

    oc get routes -n <istio-system>
    oc get routes -n <istio-system>
    

    Você deve ver as seguintes rotas:

    • uipath-route-https
    • uipath-route-apps
    • uipath-route-insights
    • istio-validation-route
  6. Se seu Istio CR configurar meshConfig.discoverySelectors, rotule cada namespace do Automation Suite para corresponder ao valor do seletor. Por exemplo, se o seletor for istio-discovery=enabled:

    oc label namespace <uipath> istio-discovery=enabled --overwrite
    oc label namespace <uipath> istio-discovery=enabled --overwrite
    

    Sem esse rótulo, o istiod não pode reconhecer o namespace como um membro do mesh ou gravar o ConfigMap istio-ca-root-cert nele. Repita para <uipath>-installer, <uipath>-check, <uipath>-argocd, e quaisquer outros namespaces do Automation Suite.

AVISO:

A rota de validação é necessária. Se a rota estiver ausente, as verificações de pré-requisitos falharão com:

❌ [ISTIO_SERVICEMESH_VALIDATION_URL_ACCESS] error accessing the url. unexpected status code: 503
❌ [ISTIO_SERVICEMESH_VALIDATION_URL_ACCESS] error accessing the url. unexpected status code: 503
Migrando do OpenShift Service Mesh 2.x para 3.x​

Before starting the migration process, make sure you have installed or upgraded to a supported Automation Suite version. For details, refer to the Compatibily matrix.

Para migrar do OpenShift Service Mesh 2.x para 3.x, siga as etapas fornecidas no guia de migração oficial da Red Hat.

After completing the migration, review the OpenShift Service Mesh 3.x installation procedure to ensure that all required configuration steps, such as gateway labeling, route creation, and validation endpoint setup, are in place.

Fornecimento da configuração do Istio​

Para fornecer a configuração do Istio, você deve definir os seguintes parâmetros no arquivo 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"
},

A tabela a seguir descreve os Parâmetros de configuração do Istio:

ParâmetroValor
ingress.gateway_selector.istioEsse é o rótulo padrão usado internamente pelo Automation Suite. No entanto, seu ambiente pode usar um rótulo diferente para o gateway do Istio ingress, dependendo de como o cluster foi configurado.
O valor padrão é ingressgateway.
ingress.ingress_gateway_secretO nome do segredo que contém os arquivos de certificado.
O valor padrão é istio-ingressgateway-certs.
ingress.namespaceO namespace onde você instalou o service mesh.
ingress.istio_gateway_service_name*O nome do serviço de gateway do Istio Ingress.
O valor padrão é istio-ingressgateway.

* Disponível a partir do Automation Suite 2.2510.2.

Para verificar o rótulo usado por seu gateway do Istio ingress, execute o seguinte comando:

oc -n <istio-system> get deploy istio-ingressgateway -o jsonpath="{.spec.selector.matchLabels.istio}"; echo
oc -n <istio-system> get deploy istio-ingressgateway -o jsonpath="{.spec.selector.matchLabels.istio}"; echo

Etapa 2: Configurando o Istio e instalando o plug-in HASM para roteamento​

Visão geral​

Importante:

Esta etapa requer privilégios de administrador para instalação no namespace do Istio.

Há duas maneiras de realizar a instalação:

  • Opção A: se você não puder fornecer as permissões que o instalador do Automation Suite requer, você deverá executar essa etapa antes da instalação do Automation Suite.
  • Option B: During the Automation Suite installation. This method requires the Kubeconfig file that you use during the Automation Suite installation to have the necessary permissions. To review the permissions, refer to the Granting installation permissions section. If you can provide all the necessary permissions, then skip this step.

Pré-requisitos​

Antes de configurar o Istio e instalar o plug-in do HASM para roteamento, você deve atender aos seguintes pré-requisitos:

  • Use uma máquina Linux, Windows ou macOS com acesso ao servidor da API OpenShift Kubernetes.

  • Install the OpenShift CLI client on your machine. For details, refer to Openshift CLI (oc).

  • Instale o Helm 3.14 ou mais recente na máquina na qual você planeja instalar o plug-in do HASM e autentique o Helm em seu registro privado. Para instalar e autenticar o Helm, execute as seguintes etapas:

    1. Baixe e instale os binários do Helm em sua máquina. Para obter detalhes, consulte a documentação do Helm.

    2. Autentique o Helm em seu registro seguindo as instruções na documentação do Helm. Como alternativa, use o seguinte comando, substituindo os valores de exemplo por sua URL e credenciais de registro reais:

      helm registry login my.registry.io:443 --username "admin" --password "secret"
      helm registry login my.registry.io:443 --username "admin" --password "secret"
      

Configuração e instalação​

Para configurar o Istio e instalar o plug-in do HASM para roteamento, siga as seguintes etapas:

  1. Crie um imagepullsecret no namespace onde você instalou o service mesh. Para criar o imagepullsecret, use seu fluxo de trabalho típico ou siga as seguintes etapas:

    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
    
    oc create secret docker-registry uipathpullsecret --namespace=${namespace} \
      --docker-server=${registry} --docker-username=${username} \
      --docker-password=${password} --dry-run=client -o yaml \
      | oc 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
    
    oc create secret docker-registry uipathpullsecret --namespace=${namespace} \
      --docker-server=${registry} --docker-username=${username} \
      --docker-password=${password} --dry-run=client -o yaml \
      | oc apply -f -
    
  2. Crie o certificado Secret no namespace <istio-system>. O nome Secret deve corresponder ao valor de ingress.ingress_gateway_secret em seu input.json (o padrão é istio-ingressgateway-certs) e deve conter três chaves: tls.crt, tls.key e ca.crt. A chave ca.crt é necessária quando seu certificado TLS é assinado por uma Autoridade de Certificação particular ou autoassinada.

    O bloco ingress correspondente em input.json é passado da seguinte forma:

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

    Crie o Secret usando um dos seguintes métodos. Substitua os caminhos e valores do certificado de espaço reservado pelos seus próprios.

    • Usando oc (de arquivos de certificado):
      oc create secret generic istio-ingressgateway-certs \
        --namespace <istio-system> \
        --from-file=tls.crt=<path-to-tls.crt> \
        --from-file=tls.key=<path-to-tls.key> \
        --from-file=ca.crt=<path-to-ca.crt>
      oc create secret generic istio-ingressgateway-certs \
        --namespace <istio-system> \
        --from-file=tls.crt=<path-to-tls.crt> \
        --from-file=tls.key=<path-to-tls.key> \
        --from-file=ca.crt=<path-to-ca.crt>
      
    • Usando um manifesto YAML (os valores são codificados em base64):
      apiVersion: v1
      kind: Secret
      metadata:
        name: istio-ingressgateway-certs
        namespace: <istio-system>
      type: Opaque
      data:
        tls.crt: <base64-encoded-tls.crt>
        tls.key: <base64-encoded-tls.key>
        ca.crt: <base64-encoded-ca.crt>
      apiVersion: v1
      kind: Secret
      metadata:
        name: istio-ingressgateway-certs
        namespace: <istio-system>
      type: Opaque
      data:
        tls.crt: <base64-encoded-tls.crt>
        tls.key: <base64-encoded-tls.key>
        ca.crt: <base64-encoded-ca.crt>
      
  3. Crie um arquivo de valores de parâmetros para aplicar durante a instalação do Helm de istio-configure. Use o exemplo a seguir como modelo para o arquivo e substitua os placeholders <fqdn>, <pullsecret>, <registry> e <uipath_namespace> pelos valores apropriados:

    fqdn: <fqdn>    #the FQDN of the Automation Suite
    gateway:
      selector:
        istio: ingressgateway
    global:
      cluster_type: openshift    # REQUIRED
      kubernetesDistribution: openshift  # REQUIRED
      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: openshift    # REQUIRED
      kubernetesDistribution: openshift  # REQUIRED
      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. Instale istio-configure no namespace do Istio diretamente do registro OCI, usando o Helm. No comando a seguir, substitua o placeholder <docker-registry> por seu registro, <istio-configure-version> pela versão do gráfico, <istio_namespace> pelo namespace no qual o Istio está instalado e <path_to_the_values.yaml> pelo local do arquivo de valores de parâmetros:

    helm upgrade --debug --install --wait custom-istio-configure \
      oci://<docker-registry>/helm/istio-configure --version <istio-configure-version> \
      --namespace <istio_namespace> -f <path_to_the_values.yaml>
    helm upgrade --debug --install --wait custom-istio-configure \
      oci://<docker-registry>/helm/istio-configure --version <istio-configure-version> \
      --namespace <istio_namespace> -f <path_to_the_values.yaml>
    

    Defina <istio-configure-version> como a versão que corresponda à sua versão do Automation Suite. As versões disponíveis são 2.2510.0, 2.2510.1, 2.2510.2 e 2.2510.3. Você também pode encontrar o valor exato no arquivo versions.json incluído em seus pacotes de instalação baixados (a entrada istio-configure).

  5. Se você usar um registro que não esteja assinado por uma autoridade conhecida, você deve adicionar a variável de ambiente WASM_INSECURE_REGISTRIES à implantação do istio-ingressgateway , para que o Istio possa extrair a imagem que o plug-in do WCS usa. Para adicionar a variável de ambiente, execute o comando a seguir:

    oc -n <istio-system> patch deployment istio-ingressgateway --type="json" --patch='[{"op":"add", "path": "/spec/template/spec/containers/0/env/-", "value": {"name": "WASM_INSECURE_REGISTRIES", "value": "customer-registry.com"}}]'
    oc -n <istio-system> patch deployment istio-ingressgateway --type="json" --patch='[{"op":"add", "path": "/spec/template/spec/containers/0/env/-", "value": {"name": "WASM_INSECURE_REGISTRIES", "value": "customer-registry.com"}}]'
    
  6. Add istio-configure to the exclude_components section in your input.json file. For details, refer to Configuring input.json.

  7. Verifique se a configuração foi concluída com sucesso verificando os pods no <istio-system> namespace:

    oc get pods -n <istio-system>
    oc get pods -n <istio-system>
    

    Os pods do plug-in WASM devem estar no estado Running ou Completed.

Observação:

Se você atualizar o FQDN após a instalação, você deve reconfigurar o Istio e o plug-in do Warm, a menos que o instalador do Automation Suite tenha privilégios administrativos. Para reconfigurar, você deve seguir as seguintes etapas:

  1. Update the parameter values file mentioned in Step 3 with the new FQDN.
  2. Repita todas as etapas para configurar o Istio e instalar o plug-in do HASM para o roteamento.

Opcional: instalação de istio-configure com um único script​

Conclua as etapas 1 e 2 primeiro (criar o segredo de pull da imagem e o certificado Secret). Em seguida, em vez de executar as etapas 3 e 4 individualmente, você pode preencher as variáveis na parte superior do script a seguir e executá-lo. O script gera o arquivo de valores de parâmetros e instala istio-configure diretamente do registro do OCI em uma etapa. Após a conclusão, continue a partir da etapa 5.

#!/usr/bin/env bash
set -euo pipefail

# ---- Fill in these values ----
REGISTRY="registry.mycompany.com"      # registry host, without protocol
ISTIO_CONFIGURE_VERSION="2.2510.0"     # available: 2.2510.0, 2.2510.1, 2.2510.2, 2.2510.3 (match your Automation Suite version)
FQDN="autosuite.mycompany.com"         # Automation Suite FQDN
PULL_SECRET="uipathpullsecret"         # pull secret created earlier
UIPATH_NAMESPACE="uipath"              # namespace where Automation Suite is deployed
ISTIO_NAMESPACE="istio-system"         # namespace where Istio is installed
# ------------------------------

cat > istio-configure-values.yaml <<EOF
fqdn: ${FQDN}
gateway:
  selector:
    istio: ingressgateway
global:
  cluster_type: openshift
  kubernetesDistribution: openshift
  imagePullSecret:
    name: ${PULL_SECRET}
minProtocolVersion: TLSV1_2
uipath:
  registry: ${REGISTRY}
uipathServiceNamespace: ${UIPATH_NAMESPACE}
patchIstioService: false
istioGatewayServiceName: "istio-ingressgateway"
wasm:
  image:
    pullSecret: ${PULL_SECRET}
    registry: oci://${REGISTRY}
EOF

helm upgrade --debug --install --wait custom-istio-configure \
  "oci://${REGISTRY}/helm/istio-configure" --version "${ISTIO_CONFIGURE_VERSION}" \
  --namespace "${ISTIO_NAMESPACE}" -f istio-configure-values.yaml
#!/usr/bin/env bash
set -euo pipefail

# ---- Fill in these values ----
REGISTRY="registry.mycompany.com"      # registry host, without protocol
ISTIO_CONFIGURE_VERSION="2.2510.0"     # available: 2.2510.0, 2.2510.1, 2.2510.2, 2.2510.3 (match your Automation Suite version)
FQDN="autosuite.mycompany.com"         # Automation Suite FQDN
PULL_SECRET="uipathpullsecret"         # pull secret created earlier
UIPATH_NAMESPACE="uipath"              # namespace where Automation Suite is deployed
ISTIO_NAMESPACE="istio-system"         # namespace where Istio is installed
# ------------------------------

cat > istio-configure-values.yaml <<EOF
fqdn: ${FQDN}
gateway:
  selector:
    istio: ingressgateway
global:
  cluster_type: openshift
  kubernetesDistribution: openshift
  imagePullSecret:
    name: ${PULL_SECRET}
minProtocolVersion: TLSV1_2
uipath:
  registry: ${REGISTRY}
uipathServiceNamespace: ${UIPATH_NAMESPACE}
patchIstioService: false
istioGatewayServiceName: "istio-ingressgateway"
wasm:
  image:
    pullSecret: ${PULL_SECRET}
    registry: oci://${REGISTRY}
EOF

helm upgrade --debug --install --wait custom-istio-configure \
  "oci://${REGISTRY}/helm/istio-configure" --version "${ISTIO_CONFIGURE_VERSION}" \
  --namespace "${ISTIO_NAMESPACE}" -f istio-configure-values.yaml

Etapa 3: Configurando o Istio para várias instalações em um único cluster​

Para configurar o Istio para várias instalações do Automation Suite em um único cluster do OpenShift, você deve adicionar vários custom-istio-configure que contêm o FQDN e recursos para diferentes instâncias do Automation Suite. Você deve preencher os valores do helm que correspondam à sua segunda ou qualquer instalação subsequente.

Você deve criar valores istio-configure diferentes para cada instalação:

 fqdn: <fqdn-for-second-installation>    #the FQDN of the Automation Suite
gateway:
  selector:
    istio: ingressgateway
global:
  cluster_type: openshift    # REQUIRED
  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: <second-installation-namespace>   #namespace where the uipath application is deployed
patchIstioService: false
wasm:
  image:
    pullSecret: <pullsecret>    #name of pull secret which you had create earlier
    registry: oci://<registry>   #registry url without the protocol
 fqdn: <fqdn-for-second-installation>    #the FQDN of the Automation Suite
gateway:
  selector:
    istio: ingressgateway
global:
  cluster_type: openshift    # REQUIRED
  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: <second-installation-namespace>   #namespace where the uipath application is deployed
patchIstioService: false
wasm:
  image:
    pullSecret: <pullsecret>    #name of pull secret which you had create earlier
    registry: oci://<registry>   #registry url without the protocol

Você deve alterar o nome de custom-istio-configure para <namespace>-custom-istio-configure. Ele deve ser instalado no namespace replicado no qual a segunda instalação é executada.

 helm upgrade --debug --install --wait <namespace>-custom-istio-configure \
  oci://<docker-registry>/helm/istio-configure --version <istio-configure-version> \
  --namespace <istio_namespace> -f <path_to_the_values.yaml>
 helm upgrade --debug --install --wait <namespace>-custom-istio-configure \
  oci://<docker-registry>/helm/istio-configure --version <istio-configure-version> \
  --namespace <istio_namespace> -f <path_to_the_values.yaml>

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades