Abonnieren

UiPath Automation Suite

Die Anleitung für die UiPath Automation Suite

Anleitung: Erweiterte Installation

Auf dieser Seite wird erklärt, wie Sie die cluster_config.json-Konfigurationsdatei der Automation Suite verwenden.

Die Datei cluster_config.json definiert die Parameter, Einstellungen und Präferenzen, die auf die über die Automation Suite bereitgestellten UiPath-Produkte angewendet werden. Sie müssen diese Datei aktualisieren, wenn Sie Standardeinstellungen ändern und eine erweiterte Konfiguration für Ihren Cluster verwenden möchten.

Um die cluster_config.json zu bearbeiten, können Sie Folgendes machen:

  • Entweder Sie verwenden einen Linux-Texteditor, wie z. B. Vi oder GNU Nano, direkt auf der Linux-Maschine über SSH (z. B. mit dem Befehl: vi cluster_config.json);
  • Oder Sie nutzen Ihren bevorzugten Texteditor und kopieren dann die Datei auf die Maschine.

The cluster_config.json file allows you to configure the UiPath products you want to deploy. There are two types of UiPath products:

  • mandatory products: these are installed by default and do not have the enabled flag available on them;
  • optional products: these are not required to complete the install. However, be aware that products may have dependencies. Please see Product dependencies for more details on this.

To enable or disable a product via the cluster_config.json file, use true or false for the enabled flag.

cluster_config.json Beispiel

{
  "fqdn": "PLACEHOLDER",
  "fixed_rke_address": "PLACEHOLDER",
  "multinode": "false",
  "admin_username": "PLACEHOLDER",
  "admin_password": "PLACEHOLDER",
  "profile": "ha",
  "telemetry_optout": "true",
  "rke_token": "PLACEHOLDER",
  "server_certificate": {
    "ca_cert_file": "/absolute/path/to/rootCA.crt",
    "tls_cert_file": "/absolute/path/to/server.crt",
    "tls_key_file": "/absolute/path/to/server.key"
  },
  "infra": {
    "docker_registry": {
      "username": "PLACEHOLDER",
      "password": "PLACEHOLDER"
    },
    "custom_dns_resolver": "/path/to/custom-resolv.conf"
  },
  "identity_certificate": {
    "token_signing_cert_file": "/absolute/path/to/identity.pfx",
    "token_signing_cert_pass": ""
  },
  "sql": {
    "server_url": "PLACEHOLDER",
    "username": "PLACEHOLDER",
    "password": "PLACEHOLDER",
    "port": "PLACEHOLDER",
    "create_db": "PLACEHOLDER"
  },
  "sql_connection_string_template": "PLACEHOLDER",
  "sql_connection_string_template_jdbc": "PLACEHOLDER",
  "sql_connection_string_template_odbc": "PLACEHOLDER",
  "orchestrator": {
    "testautomation": {
      "enabled": true
    },
    "updateserver": {
      "enabled": true
    }
  },
  "aicenter": {
    "enabled": true,
    "sql_connection_str": "PLACEHOLDER"
  },
  "documentunderstanding": {
    "enabled": true,
    "datamanager": {
      "sql_connection_str": "PLACEHOLDER"
    },
    "handwriting": {
      "enabled": true,
      "max_cpu_per_pod": 2
    }
  },
  "insights": {
    "enabled": true
  },
  "test_manager": {
    "enabled": true
  },
  "automation_ops": {
    "enabled": true
  },
  "automation_hub": {
    "enabled": true
  },
  "apps": {
    "enabled": true
  },
  "action_center": {
    "enabled": true
  },
  "task_mining": {
    "enabled": true
  },
  "dataservice": {
    "enabled": true
  }
}

 

Allgemeine Konfiguration


Mandatory parametersDescription
fqdnThe load balancer (multi-node HA-ready production mode) or machine (single-node evaluation mode) domain name.
fixed_rke_addressFixed address used to load balance node registration and kube API requests. This should be fqdn if load balancer is configured as recommended. Otherwise FQDN of 1st Server Node. Refer to Configuring the load balancer.


Can be the IP/FQDN of the first rke2 server in your setup.
multinodeSet to true when choosing a multi-node HA-ready production profile. The value of this flag is set automatically by the interactive install wizard. It is used for internal purposes only and should not be modified manually.
admin_usernameThe username that you would like to set as admin (such as: admin ) for the host organization.
admin_passwordThe host admin password to be set.
rke_tokenUse a newly generated GUID here. This is a pre-shared, cluster-specific secret. It is needed for all the nodes joining the cluster.
profileSets the profile of the installation. The available profiles are:
default: single-node evaluation profile.
ha: multi-node HA-ready production profile.
The value of this flag is set automatically by the interactive install wizard. It is used for internal purposes only and should not be modified manually.
infra.docker_registry.usernameThe username that you would like to set for the docker registry installation.
infra.docker_registry.passwordThe password that you would like to set for the docker registry installation.
Optional parametersDescription
telemetry_optouttrue or false - used to opt-out of sending telemetry back to UiPath. It is set to false by default.

If you wish to opt out, then set to true.

 

Einrichten von Zertifikaten


Bitte beachten Sie die Dokumente, die für den Erhalt des Zertifikats erforderlich sind:

Wenn zum Zeitpunkt der Installation kein Zertifikat bereitgestellt wird, erstellt das Installationsprogramm ein selbst ausgestelltes Zertifikat und konfiguriert es im Cluster. Die Gültigkeit des Zertifikats beträgt 90 Tage.

📘

Hinweis:

Stellen Sie sicher, dass Sie den absoluten Pfad für die Zertifikatsdateien angeben. Führen Sie pwd aus, um den Pfad des Verzeichnisses abzurufen, in dem die Dateien gespeichert sind, und hängen Sie den Namen der Zertifikatsdatei an cluster_config.json an.


In HA-fähigen Produktionsinstallationen mit mehreren Knoten ist ein Zertifikat nur auf dem ersten Knoten erforderlich.

ParameterDescription
server_certificate.ca_cert_fileAbsolute path to the Certificate Authority (CA) certificate. This CA is the authority that signs the TLS certificate. A CA bundle should contain only the chain certificates used to sign the TLS certificate. The chain limit is up to nine certificates.
If you are using a self-signed certificate, you need to specify the path to the rootCA.crt, which you previously created. Leave blank if you want the installer to generate.
server_certificate.tls_cert_fileAbsolute path to TLS certificate (server.crt for self-signed created in earlier steps). Leave blank if you want the installer to generate.
server_certificate.tls_key_fileAbsolute path to certificate key (server.key for self-signed created in earlier steps). Leave blank if you want the installer to generate.
identity_certificate.token_signing_cert_fileAbsolute path to the Identity Service certificate used to sign tokens (identity.pfx for self-signed created in earlier steps). Leave blank if you want the installer to generate an identity certificate using the server certificate.
identity_certificate.token_signing_cert_passPlain text password set when it was exported.
additional_ca_certsAbsolute path to the file containing additional CA certificates that you want to be trusted by all the products running as part of Automation Suite. All certificates in the file should be valid PEM format.

For example, you need to provide the file containing the SQL server CA certificate if the certificate is not issued by a public certificate authority.

 

Datenbankkonfiguration


Automatisches Erstellen der erforderlichen Datenbanken

Wenn das Installationsprogramm die Datenbanken erstellen soll, füllen Sie die folgenden Felder aus:

ParameterDescription
sql.create_dbSet to true.
sql.server_urlFQDN of the SQL server, where you want the installer to configure database.
sql.portPort number on which a database instance should be hosted in the SQ: server.
sql.usernameUsername / userid to connect to the SQL server.
sql.passwordPassword of the username provided earlier to connect to the SQL server.

📘

Wichtig:

Stellen Sie sicher, dass der Benutzer über die dbcreator-Rolle verfügt. Dadurch erhalten sie die Berechtigung zum Erstellen der Datenbank im SQL-Server. Andernfalls schlägt die Installation fehl.

Die ODBC-Verbindung unterstützt keine Benutzernamen, die Sonderzeichen enthalten. Verwenden Sie bei Datenbankbenutzernamen für AI Center und Document Understanding nur Groß- und Kleinbuchstaben.

 

Mitbringen Ihrer eigenen Datenbank

Wenn Sie Ihre eigene Datenbank mitbringen, müssen Sie die SQL-Verbindungszeichenfolgen für jede Datenbank angeben. Die Automation Suite unterstützt die folgenden Formate für SQL-Verbindungszeichenfolgen:

ParameterDescriptionProducts
sql_connection_string_templateFull ADO.NET connection string where Catalog name is set to DB_NAME_PLACEHOLDER. The installer will replace this placeholder with the default database names for the installed suite services.Platform, Orchestrator, Test Manager, Automation Hub, Automation Ops, Insights, Task Mining, Data Service
sql_connection_string_template_jdbcFull JDBC connection string where database name is set to DB_NAME_PLACEHOLDER. The installer will replace this placeholder with the default database names for the installed suite services.AI Center
sql_connection_string_template_odbcFull ODBC connection string where database name is set to DB_NAME_PLACEHOLDER. The installer will replace this placeholder with the default database names for the installed suite services.Document Understanding

🚧

Wichtig!

Stellen Sie sicher, dass das in den Verbindungszeichenfolgen angegebene SQL-Konto die Rollen db_securityadmin und db_owner für alle Automation Suite-Datenbanken erhält. Wenn die Sicherheitsbeschränkungen die Verwendung von db_owner nicht zulassen, sollte das SQL-Konto über die folgenden Rollen und Berechtigungen für alle Datenbanken verfügen:

  • db_ddladmin
  • db_datawriter
  • db_datareader
  • Berechtigung EXECUTE für das Schema „dbo“

🚧

Wichtig!

Wenn Sie die Verbindungszeichenfolgen manuell in der Konfigurationsdatei festlegen, können Sie SQL-, JDBC- oder ODBC-Kennwörter wie folgt maskieren:

  • für SQL: Fügen Sie ' am Anfang und Ende des Kennworts hinzu und verdoppeln Sie alle anderen ' .
  • für JDBC/ODBC: Fügen Sie { am Anfang des Kennworts und } am Ende hinzu, und verdoppeln Sie alle anderen } .

📘

Hinweis:

Wenn Sie TrustServerCertificate=False festlegen, müssen Sie möglicherweise ein zusätzliches Zertifizierungsstellenzertifikat für den SQL-Server bereitstellen. Dies ist erforderlich, wenn das SQL Server-Zertifikat selbstsigniert oder von einer internen Zertifizierungsstelle signiert wurde.

Weitere Informationen finden Sie unter Einrichten von Zertifikaten.

Beispiel: sql_connection_string_template
Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net:1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=***;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;
Beispiel: sql_connection_string_template_jdbc
jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=***;encrypt=true;trustServerCertificate=false;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
Beispiel: sql_connection_string_template_odbc
SERVER=sfdev1804627-c83f074b-sql.database.windows.net,1433;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=testadmin;PWD=***;MultipleActiveResultSets=False;Encrypt=YES;TrustServerCertificate=NO;Connection Timeout=30;"
Standardmäßige und optionale DB-Namen für die Automation Suite-Dienste
{
  "orchestrator": "AutomationSuite_Orchestrator",
  "orchestrator_ta": "AutomationSuite_Orchestrator",
  "orchestrator_upd": "AutomationSuite_Platform",
  "platform": "AutomationSuite_Platform",
  "test_manager": "AutomationSuite_Test_Manager",
  "automation_ops": "AutomationSuite_Platform",
  "automation_hub": "AutomationSuite_Automation_Hub",
  "insights": "AutomationSuite_Insights",
  "task_mining": "AutomationSuite_Task_Mining",
  "dataservice": "AutomationSuite_DataService", 
  "aicenter": "AutomationSuite_AICenter",
  "documentunderstanding": "AutomationSuite_DU_Datamanager",
}

📘

Hinweis:

Wenn Sie die Verbindungszeichenfolge für einen der oben genannten Dienste überschreiben möchten, legen Sie sql_connection_str für den spezifischen Dienst fest.

Sie müssen diese Datenbanken weiterhin manuell erstellen, bevor Sie das Installationsprogramm ausführen.

Überschreiben der Standardverbindungszeichenfolge für Orchestrator und die Plattform
{
  "orchestrator": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=CustomOrchDB;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=***;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"
  },
  "platform": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=CustomIDDB;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=***;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"
  }
}

Um die Datenbankverbindungszeichenfolgen für andere Produkte zu überschreiben, legen Sie sql_connection_str in den entsprechenden Produktblöcken fest. Die Verbindungszeichenfolge muss ein vom jeweiligen Produkt unterstütztes Format haben.

Beispiel zum Festlegen der Datenbankverbindungszeichenfolge für das AI Center
ParameterDescription
aicenter.sql_connection_strAICenter JDBC connection string (Refer below for the JDBC format)

📘

Hinweis:

Bitte überprüfen Sie, ob die JDBC-Verbindungszeichenfolge das Format im folgenden Beispiel hat.

"aicenter": {
    "enabled": true,
    "sql_connection_str": "jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net;database=aicenter;user=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;password=TFgID_9GsE7_P@srCQp0WemXX_euHQZJ"
}
Beispiel für die DU-Verbindungszeichenfolge
"documentunderstanding": {
    "enabled": true,
  {
  "datamanager": {
    "sql_connection_str": "mssql+pyodbc://testadmin:myPassword@mydev-sql.database.windows.net:1433/datamanager?driver=ODBC+Driver+17+for+SQL+Server",
  }
}

Hinweis: Die SQL-Verbindungszeichenfolge vom Data Manager ist nur optional, wenn Sie die Standardzeichenfolge mit Ihrer eigenen überschreiben möchten.
Die Handschrift ist für die Online-Installation immer aktiviert.
Der Standardwert für max_cpu_per-pod ist 2, Sie können ihn jedoch an Ihre Anforderungen anpassen. Weitere Informationen finden Sie in der Document Understanding-Konfigurationsdatei.

 

Spezifische Orchestrator-Konfiguration


Der Orchestrator kann Roboterprotokolle auf einem Elasticsearch-Server speichern. Sie können diese Funktion im Abschnitt orchestrator.orchestrator_robot_logs_elastic konfigurieren. Wenn nicht angegeben, werden Roboterprotokolle in der Orchestrator-Datenbank gespeichert.

In der folgenden Tabelle sind die orchestrator.orchestrator_robot_logs_elastic-Felder aufgeführt:

ParameterDescription
elastic_uriThe address of the Elasticsearch instance that should be used. It should be provided in the form of a URI. If provided, then username and password are also required.
elastic_auth_usernameThe Elasticsearch username, used for authentication.
elastic_auth_passwordThe Elasticsearch password, used for authentication.
Klicken, um ein Beispiel anzuzeigen
"orchestrator": {
    "orchestrator_robot_logs_elastic": {
        "elastic_uri": "https://elastic.example.com:9200",
        "elastic_auth_username": "elastic-user",
        "elastic_auth_password": "elastic-password"
    }
}

 

Insights-spezifische Konfiguration


Wenn sie Insights aktivieren, können Benutzer die SMTP-Serverkonfiguration einschließen, die zum Senden geplanter E-Mails/Warnungs-E-Mails verwendet wird. Wenn sie fehlt, funktionieren die geplanten E-Mails und die Warnungs-E-Mails nicht.

Details zu den insights.smtp_configuration-Feldern:

ParameterDescription
tls_versionValid values are TLSv1_2, TLSv1_1, SSLv23. Omit key altogether if not using TLS.
from_emailAddress that alert/scheduled emails will be sent from.
hostHostname of the SMTP server.
portPort of the SMTP server.
usernameUsername for SMTP server authentication.
passwordPassword for SMTP server authentication.
Klicken, um ein Beispiel anzuzeigen
"insights": {
    "enabled": true,
    "smtp_configuration": {
      "tls_version": "TLSv1_2",
      "from_email": "test@test.com",
      "host": "smtp.sendgrid.com",
      "port": 587,
      "username": "login",
      "password": "password123"
    }
  }

 

Konfiguration der Überwachung


To provision enough resources for monitoring (see Using the monitoring stack), you should consider the number of vCPUs in the cluster and the amount of desired metric retention. See below for how to set the following monitoring resource configurations.

In der folgenden Tabelle werden die Details des Überwachungsfelds beschrieben:

ParameterDescription
prometheus_retentionIn days.
This is the amount of days that metrics will be retained for the purpose of visualization in Grafana and manual querying via the Prometheus console.

Default value is 7.
prometheus_storage_sizeIn GB.
Amount of storage space to reserve per Prometheus replica.
A good rule of thumb is to set this value to:
0.65 * vCPU cores * (prometheus_retention / 7)

Example:
If you set prometheus_retention to 14 days, and your cluster has 80 cores spread across 5 machines, this becomes:
0.65 * 80 * (14 / 7)
52 * (2)
104

Default value is 45 and should not be set lower.

If Prometheus starts to run out of storage space, an alert will be triggered with specific remediation instructions. See here.
prometheus_memory_limitIn MB.
Amount of memory to limit each Prometheus replica to.
A good rule of thumb is to set this value to:
100 * vCPU cores * (prometheus_retention / 7)

Example:
If you've set prometheus_retention to 14 days, and your cluster has 80 cores spread across 5 machines, this becomes:
100 * 80 * (14 / 7)
8000 * (2)
16000

Default value is 3200 for the single-node evaluation mode, and 6000 for the multi-node HA-ready production mode, and should not be set lower.

If Prometheus starts to run out of memory, an alert will be triggered with specific remediation instructions. See here.
Klicken, um ein Beispiel anzuzeigen
"monitoring": {
  "prometheus_retention": 14,
  "prometheus_memory_limit": 16000,
  "prometheus_storage_size": 104
}

 

Optional: Konfigurieren des Proxyservers


📘

Hinweis:

Stellen Sie sicher, dass Sie die Proxyserveranforderungen erfüllen, bevor Sie den Proxyserver während der Installation konfigurieren.
For details, see Step 2: Adding proxy configuration to each node.

Beim Ausführen des interaktiven Installationsassistenten müssen Sie ihn beenden und die cluster_config.json während des erweiterten Konfigurationsschritts aktualisieren.

Sie müssen mit vim oder Ihrem bevorzugten Editor für die Konfigurationsdatei Folgendes in die Konfigurationsdatei einfügen:

"proxy": {
  "enabled": "true",
  "http_proxy": "http://<PROXY-SERVER-IP>:<PROXY-PORT>",
  "https_proxy": "http://<PROXY-SERVER-IP>:<PROXY-PORT>",
  "no_proxy": "alm.<fqdn>,<fixed_rke_address>:9345,<fixed_rke_address>:6443,<named server address>,<metadata server address>,<k8s address range>,<private_subnet_ip>,<sql server host>,<Comma separated list of ips that should not go through proxy server>"
}
Mandatory parametersDescription
enabledUse true or false to enable or disable proxy settings.
http_proxyUsed to route HTTP outbound requests from the cluster. This should be the proxy server FQDN and port.
https_proxyUsed to route HTTPS outbound requests from the cluster. This should be the proxy server FQDN and port.
no_proxyComma-separated list of hosts, IP addresses, or IP ranges in CIDR format that you do not want to route via the proxy server. This should be a private subnet range, sql server host, named server address, metadata server address: *.<fqdn>,<fixed_rke_address>:9345,<fixed_rke2_address>:6443.

fqdn - the cluster FQDN defined in cluster_config.json
fixed_rke_address - the fixed_rke_address defined in cluster_config.json
named server address - the IP address from /etc/resolv.conf
private_subnet_ip - the cluster VNet
sql server host - sql server host
metadata server address - the IP address 169.254.169.254 used to fetch machine metadata by cloud services such as Azure and AWS
k8s address range - the IP address ranges used by the Kubernetes nodes, i.e. 10.0.0.0/8.

 

Optional: Aktivieren der Widerstandsfähigkeit gegen zonale Ausfälle in einem HA-fähigen Produktionscluster mit mehreren Knoten

Um Widerstandsfähigkeit gegen zonale Ausfälle in einem Cluster mit mehreren Knoten zu ermöglichen, führen Sie die folgenden Schritte aus:

  1. Stellen Sie sicher, dass Knoten gleichmäßig über drei Verfügbarkeitszonen verteilt sind. Für einen Bare-Metal-Server oder eine VM, die von einem beliebigen Anbieter mit Ausnahme von AWS, Azure oder GCP bereitgestellt wird, müssen die Zonen-Metadaten über die Konfigurationsdatei unter /etc/default/k8s-node-labels auf jeder Maschine in folgendem Format bereitgestellt werden.
NODE_REGION_LABEL=<REGION_NAME>
NODE_ZONE_LABEL=<ZONE_NAME>
cat > /etc/default/k8s-node-labels <<EOF
EXTRA_K8S_NODE_LABELS="topology.kubernetes.io/region=$NODE_REGION_LABEL,topology.kubernetes.io/zone=${NODE_ZONE_LABEL}"
EOF
  1. Aktualisieren Sie die cluster_config.json-Datei während des erweiterten Konfigurationsschritts.

Um die cluster_config.json mithilfe des interaktiven Installationsassistenten zu aktualisieren, beenden Sie den erweiterten Konfigurationsschritt und fügen Sie Folgendes mithilfe von vim oder Ihrem bevorzugten Editor zur Konfigurationsdatei hinzu:

"zone_resilience": true
Mandatory parametersDescription
zone_resilienceUse true or false to enable or disable resilience to zonal failure.

🚧

Wenn Sie die Widerstandsfähigkeit gegen Zonenausfälle aktivieren, ist die Übergabe der Argumente --zone und --region:

  • empfohlen, wenn Sie Ihre Maschinen in AWS, Azure oder GCP bereitstellen und Metadatendienste aktiviert sind, während das Installationsprogramm die Zonen- und Regionsdetails ausfüllt.
  • obligatorisch, wenn Sie Ihre Maschinen auf AWS, Azure oder GCP bereitstellen und Metadatendienste deaktiviert sind oder wenn Sie sich für einen anderen Cloud-Anbieter entscheiden.

 

Optional: Übergeben einer benutzerdefinierten resolv.conf

Der in der Automation Suite bereitgestellte Kubernetes-Cluster verwendet die in /etc/resolv.conf konfigurierten Nameserver. Kubernetes funktioniert nicht mit lokalen DNS-Resolvern (127.0.0.1 oder 127.0.0.0/8). Wenn Sie solche Nameserver in der /etc/resolv.conf-Datei konfiguriert haben, müssen Sie daher einen Dateiverweis mit den richtigen Nameserver-Einträgen übergeben, auf die von jeder Stelle der VM im Parameter .infra.custom_dns_resolver in cluster_config.json zugegriffen werden kann.
For details on a known limitation, see Kubernetes documentation.

Optional ParametersDescription
.infra.custom_dns_resolverPath to the file with correct name server entries that can be accessed from anywhere on the VM. These name server entries must not be from 127.0.0.0/8.

 

Vor etwa einem Monat aktualisiert


Anleitung: Erweiterte Installation


Auf dieser Seite wird erklärt, wie Sie die cluster_config.json-Konfigurationsdatei der Automation Suite verwenden.

Auf API-Referenzseiten sind Änderungsvorschläge beschränkt

Sie können nur Änderungen an dem Textkörperinhalt von Markdown, aber nicht an der API-Spezifikation vorschlagen.