- Visão geral
- Requisitos
- Pré-instalação
- Preparação da instalação
- Baixando os pacotes de instalação
- Configuração do registro compatível com OCI
- Concessão de permissões de instalação com funções de cluster
- Concessão de permissões de instalação sem funções de cluster
- Instalação e configuração do service mesh
- Instalando e configurando a ferramenta GitOps
- Instalando o operador de segredos externos
- Implantação do Redis pelo OperatorHub
- Aplicação de configurações diversas
- Executando o uipathctl
- Instalação
- Pós-instalação
- Migração e atualização
- Monitoramento e alertas
- Administração de cluster
- Configuração específica do produto
- Configuração avançada do Orchestrator
- Configuração de parâmetros do Orchestrator
- Configuração do AppSettings
- Configuração do tamanho máximo da solicitação
- Substituição da configuração de armazenamento no nível do cluster
- Configuração do NLog
- Salvando logs do robô no Elasticsearch
- Configuração dos repositórios de credenciais
- Configuração da chave de criptografia por tenant
- Limpeza do banco de dados do Orchestrator
- Ignorar a instalação da biblioteca do host
- AI Trust Layer
- Solução de problemas
- Como desinstalar o Automation Suite
- Como resolver a falha de verificação de conectividade pré-requisito no OpenShift 4.16–4.18
- Como implantar o Insights em um cluster habilitado para FIPS
- Como desabilitar a habilitação automática do CDI no operador de GPU Nvidia
- Como codificar para URL uma senha da string de conexão do PostgreSQL
- 500 erros e limitação de taxa em solicitações do S3 no ODF
- Solução de problemas de segredos externos
- Configurando tolerâncias de driver CSI para ODF 4.20
- Solução de problemas de Temporal como um serviço
- Os pods do AI Center e do Document Understanding falham ao iniciar com a verificação do certificado TLS habilitada
- O Studio Desktop não pode carregar conectores e atividades do Integration Service
- Erros de validação de certificado TLS
- Migreção manual do ArgoCD NetworkPolicy (GHSA-47m3-95c7-g2g8)
- Configuração de solicitações e limites de recursos para cargas de trabalho criadas pelo uipathctl
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.
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:
| Etapa | Privilégios de administrador | Sem privilégios de administrador |
|---|---|---|
| Etapa 1: instalar o service mesh | Required | Required |
| Etapa 2: Configurando o Istio e instalando o plug-in HASM para roteamento | Não é necessário | Required |
| Etapa 3: Configurando o Istio para várias instalações em um único cluster | Não é necessário | Required |
Etapa 1: instalar o service mesh
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:
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:
-
Instale a nova instância do plano de controle do service mesh no namespace
<istio-system>. -
Use o modo
ClusterWidepara o plano de controle do service mesh. Para o modoMultiTenant, consulte o ponto 3 nesta página. O seguinte bloco deve estar presente na seçãospecdo recursoServiceMeshControlPlane:gateways: enabled: true openshiftRoute: enabled: true mode: ClusterWidegateways: enabled: true openshiftRoute: enabled: true mode: ClusterWidePara desabilitar a rota OpenShift, consulte o ponto 4 nesta página.
-
Você pode usar o modo
MultiTenantpara 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> -
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.
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
Istiorecurso. - Plug-in do Istio CNI - Configura e impõe regras de rede mesh. O operador o provisiona após você criar o
IstioCNIrecurso. - 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
Routedo 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:
-
Instale o operador do Service Mesh a partir do OperatorHub seguindo as instruções fornecidas na documentação do OpenShift Service Mesh.
-
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> -
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 - Ponto de extremidade do Automation Suite:
-
Aplique as definições de rota:
oc apply -f routes.yamloc apply -f routes.yaml -
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-httpsuipath-route-appsuipath-route-insightsistio-validation-route
-
Se seu Istio CR configurar
meshConfig.discoverySelectors, rotule cada namespace do Automation Suite para corresponder ao valor do seletor. Por exemplo, se o seletor foristio-discovery=enabled:oc label namespace <uipath> istio-discovery=enabled --overwriteoc label namespace <uipath> istio-discovery=enabled --overwriteSem esse rótulo, o istiod não pode reconhecer o namespace como um membro do mesh ou gravar o ConfigMap
istio-ca-root-certnele. Repita para<uipath>-installer,<uipath>-check,<uipath>-argocd, e quaisquer outros namespaces do Automation Suite.
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âmetro | Valor |
|---|---|
ingress.gateway_selector.istio | Esse é 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_secret | O nome do segredo que contém os arquivos de certificado. O valor padrão é istio-ingressgateway-certs. |
ingress.namespace | O 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
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:
-
Baixe e instale os binários do Helm em sua máquina. Para obter detalhes, consulte a documentação do Helm.
-
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:
-
Crie um
imagepullsecretno namespace onde você instalou o service mesh. Para criar oimagepullsecret, 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 - -
Crie o certificado
Secretno namespace<istio-system>. O nomeSecretdeve corresponder ao valor deingress.ingress_gateway_secretem seuinput.json(o padrão éistio-ingressgateway-certs) e deve conter três chaves:tls.crt,tls.keyeca.crt. A chaveca.crté necessária quando seu certificado TLS é assinado por uma Autoridade de Certificação particular ou autoassinada.O bloco
ingresscorrespondente eminput.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
Secretusando 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>
- Usando
-
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 protocolfqdn: <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 -
Instale
istio-configureno 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ão2.2510.0,2.2510.1,2.2510.2e2.2510.3. Você também pode encontrar o valor exato no arquivoversions.jsonincluído em seus pacotes de instalação baixados (a entradaistio-configure). -
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 doistio-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"}}]' -
Add
istio-configureto theexclude_componentssection in yourinput.jsonfile. For details, refer to Configuring input.json. -
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
RunningouCompleted.
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:
- Update the parameter values file mentioned in Step 3 with the new FQDN.
- 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>
- Etapa 1: instalar o service mesh
- Instalando o OpenShift Service Mesh 2.x
- Instalando o OpenShift Service Mesh 3.x
- Fornecimento da configuração do Istio
- Etapa 2: Configurando o Istio e instalando o plug-in HASM para roteamento
- Visão geral
- Pré-requisitos
- Configuração e instalação
- Opcional: instalação de
istio-configurecom um único script - Etapa 3: Configurando o Istio para várias instalações em um único cluster