- 概述
- 要求
- 预安装
- 安装
- 安装后
- 迁移和升级
- 监控和警示
- 集群管理
- 特定于产品的配置
- 故障排除

OpenShift 上的 Automation Suite 安装指南
The installation process generates self-signed certificates on your behalf. These certificates will expire in 90 days. You must replace them with certificates signed by a trusted Certificate Authority (CA) as soon as installation completes. If you do not update the certificates, the installation will stop working in 90 days.
uipathctl
CLI 工具在安装后更新证书。 有关详细信息,请参阅uipathctl 文档。
要生成 CSR 和私钥,请运行以下命令:
# copy the machine openssl configuration locally
cp /etc/pki/tls/openssl.cnf ./openssl.tmp.cnf
# Replace the [AUTOMATION_SUITE_FQDN] value. For example, "automationsuite.corp.com"
AS_FQDN=[AUTOMATION_SUITE_FQDN]
cat >> ./openssl.tmp.cnf <<EOF
[SAN]
subjectAltName=DNS:$AS_FQDN,DNS:alm.$AS_FQDN,DNS:monitoring.$AS_FQDN,DNS:registry.$AS_FQDN,DNS:objectstore.$AS_FQDN,DNS:insights.$AS_FQDN,DNS:apps.$AS_FQDN
EOF
# create the certificate request
openssl req -new -sha256 -newkey rsa:2048 -nodes -keyout server.key -subj "/C=xx/ST=xx/O=xx/OU=xx/CN=$AS_FQDN" -reqexts SAN -config openssl.tmp.cnf -out ${AS_FQDN}.csr
# copy the machine openssl configuration locally
cp /etc/pki/tls/openssl.cnf ./openssl.tmp.cnf
# Replace the [AUTOMATION_SUITE_FQDN] value. For example, "automationsuite.corp.com"
AS_FQDN=[AUTOMATION_SUITE_FQDN]
cat >> ./openssl.tmp.cnf <<EOF
[SAN]
subjectAltName=DNS:$AS_FQDN,DNS:alm.$AS_FQDN,DNS:monitoring.$AS_FQDN,DNS:registry.$AS_FQDN,DNS:objectstore.$AS_FQDN,DNS:insights.$AS_FQDN,DNS:apps.$AS_FQDN
EOF
# create the certificate request
openssl req -new -sha256 -newkey rsa:2048 -nodes -keyout server.key -subj "/C=xx/ST=xx/O=xx/OU=xx/CN=$AS_FQDN" -reqexts SAN -config openssl.tmp.cnf -out ${AS_FQDN}.csr
您的 IT 团队使用获取的值生成签名证书。 生成的私钥保留在本地。
要查看有关更新 TLS 证书的更多信息,请运行以下命令:
uipathctl config update-tls-certificates --help
uipathctl config update-tls-certificates --help
输出:
************************************************************************************
Manage tls certificates
Usage:
uipathctl config tls-certificates [flags]
uipathctl config tls-certificates [command]
Available Commands:
get Get the current tls certificates
update Update tls certificates
Flags:
-h, --help help for tls-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
************************************************************************************
************************************************************************************
Manage tls certificates
Usage:
uipathctl config tls-certificates [flags]
uipathctl config tls-certificates [command]
Available Commands:
get Get the current tls certificates
update Update tls certificates
Flags:
-h, --help help for tls-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
************************************************************************************
查找 TLS 证书
<istio-system>
命名空间中的 istio-ingressgateway-certs
名称下找到证书。
请参阅以下列表中的证书文件:
-
服务器 TLS 证书存储为
tls.crt
-
作为
tls.key
的服务器 TLS 私钥 -
CA 捆绑包存储为
ca.crt
您可以使用以下命令验证密码:
oc -n <istio-system> get secrets istio-ingressgateway-certs -o yaml
oc -n <istio-system> get secrets istio-ingressgateway-certs -o yaml
<uipath>
命名空间中。 这适用于需要证书信息以信任传入调用的所有 UiPath™ 产品。 有关详细信息,请参阅了解与证书相关的容器架构。
更新 TLS 证书
在更新服务器证书之前,您必须解密证书密钥。 跳过解密步骤将导致错误。
要解密证书密钥,请运行以下命令:
# replace /path/to/encrypted/cert/key to absolute file path of key
# replace /path/to/decrypt/cert/key to store decrypt key
# Once prompted, please entry the passphrase or password to decrypt the key
openssl rsa -in /path/to/encrypted/cert/key -out /path/to/decrypt/cert/key
# replace /path/to/encrypted/cert/key to absolute file path of key
# replace /path/to/decrypt/cert/key to store decrypt key
# Once prompted, please entry the passphrase or password to decrypt the key
openssl rsa -in /path/to/encrypted/cert/key -out /path/to/decrypt/cert/key
uipathctl
命令。 您需要三个证书文件中每个文件的路径。 所有证书文件均应采用pem
格式。
-
证书颁发机构捆绑包 - 此捆绑包应仅包含用于对 TLS 服务器证书进行签名的链证书。
--cacert
选项中提供的证书不应包含分支证书。链式证书上限为最多九个证书。 -
服务器证书 - 公共服务器证书
注意:server.crt
文件必须包含整个链,如以下示例所示:-----server cert----- -----root ca chain-----
-----server cert----- -----root ca chain----- -
私钥 - 服务器证书的私钥
uipathctl config tls-certificates update --cert server.crt --cacert ca.crt --key server.key
uipathctl config tls-certificates update --cert server.crt --cacert ca.crt --key server.key
--use-istio-cert
标志。 此标志允许将现有密码复制到<uipath>
命名空间。 请注意,在使用--use-istio-cert
标志时,不得使用任何其他证书标志,否则命令将失败。 如果使用其他命名空间而不是<uipath>
,则必须通过将其传递给--namespace
标志来指定。
访问 TLS 证书
要打印证书文件,请运行以下命令:
uipathctl config tls-certificates get
uipathctl config tls-certificates get
如果您希望集群信任外部软件,您可能需要提供其他受信任的 CA 证书。 例如 SQL Server CA 证书、SMTP Server CA 证书和外部 S3 兼容对象存储 CA 证书。
您必须为在安装期间需要安全 TLS 通信的任何外部软件提供 CA 证书。 但是,如果尚未启用 TLS 通信,则可以在安装后进行配置。
要查看有关其他 CA 证书的更多信息,请运行以下命令:
uipathctl config additional-ca-certificates --help
uipathctl config additional-ca-certificates --help
输出:
***************************************************************************************
Manage additional ca certificates
Usage:
uipathctl config additional-ca-certificates [flags]
uipathctl config additional-ca-certificates [command]
Available Commands:
get Get the current additional ca certificates
update Update additional ca certificates
Flags:
-h, --help help for additional-ca-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
***************************************************************************************
***************************************************************************************
Manage additional ca certificates
Usage:
uipathctl config additional-ca-certificates [flags]
uipathctl config additional-ca-certificates [command]
Available Commands:
get Get the current additional ca certificates
update Update additional ca certificates
Flags:
-h, --help help for additional-ca-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
***************************************************************************************
uipathctl config additional-ca-certificates
命令执行的操作。
更新 CA 证书
此命令可帮助您更新或替换现有的已配置 CA 证书。
uipathctl manifest apply input.json/cluster_config.json --versions versions.json
uipathctl manifest apply input.json/cluster_config.json --versions versions.json
.pem
格式,并且可以包含多个证书。
访问 CA 证书
要下载已配置的 CA 证书,请运行以下命令:
uipathctl config additional-ca-certificates get
uipathctl config additional-ca-certificates get
Automation Suite 提供了两种方法来管理身份令牌签名证书的轮换:自动和手动。
要查看有关身份令牌签名证书的更多信息,请运行以下命令:
uipathctl config token-signing-certificates --help
uipathctl config token-signing-certificates --help
输出:
************************************************************************************
Manage token signing certificates
Usage:
uipathctl config token-signing-certificates [flags]
uipathctl config token-signing-certificates [command]
Available Commands:
get Get the current token signing certificate
rotate Rotate token signing certificates
update Update future token signing certificate
Flags:
-h, --help help for token-signing-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
************************************************************************************
************************************************************************************
Manage token signing certificates
Usage:
uipathctl config token-signing-certificates [flags]
uipathctl config token-signing-certificates [command]
Available Commands:
get Get the current token signing certificate
rotate Rotate token signing certificates
update Update future token signing certificate
Flags:
-h, --help help for token-signing-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
************************************************************************************
您可以使用最大密钥长度 4096 位对证书进行签名。 作为最佳实践,我们强烈建议您使用至少 512 位(64 字节)长度的密钥。
uipathctl config token-signing-certificates
命令执行的操作。
自动证书轮换
自动证书轮换意味着 Automation Suite 管理签名密钥的生命周期。 这包括每 90 天轮换一次密钥,在轮换前 14 天宣布新密钥,轮换后将旧密钥保留 14 天,然后在 14 天的期限结束时将其删除。
如果要从旧版本升级到 2024.10,默认情况下会禁用自动证书轮换。 要启用自动密钥管理,请使用以下命令:
uipathctl config token-signing-certificates automatic-key-management enable
uipathctl config token-signing-certificates automatic-key-management enable
启用自动证书轮换可能会导致长达一小时的停机。
对于全新的 Automation Suite 安装,默认情况下启用自动证书轮换。 要禁用自动密钥管理,请使用以下命令:
uipathctl config token-signing-certificates automatic-key-management disable
uipathctl config token-signing-certificates automatic-key-management disable
如果禁用了自动管理功能,则需要手动更新和轮换签名证书。 有关手动密钥管理的详细信息,请参阅有关手动更新和轮换证书的文档。
手动更新证书
要上传新证书以对令牌进行签名,请运行以下命令:
以下命令不会替换现有令牌签名证书。
.pem
格式。
server.crt
文件必须包含整个链,如以下示例所示:
-----server cert-----
-----root ca chain-----
-----server cert-----
-----root ca chain-----
uipathctl config token-signing-certificates update --cert server.crt --key server.key
uipathctl config token-signing-certificates update --cert server.crt --key server.key
手动轮换证书
要轮换旧证书或将其替换为新证书,请运行以下命令:
uipathctl config token-signing-certificates rotate
uipathctl config token-signing-certificates rotate
轮换后,通过运行以下命令重新启动部署和状态集:
kubectl -n uipath rollout restart deploy
kubectl -n uipath rollout restart sts
kubectl -n uipath rollout restart deploy
kubectl -n uipath rollout restart sts
访问证书
要下载当前的令牌签名证书,请运行以下命令:
uipathctl config token-signing-certificates get
uipathctl config token-signing-certificates get
证书更新和轮换之间应有大约 24 到 48 小时的提前期。
我们需要这个提前期来继续支持由旧证书签名的缓存令牌的身份验证。
在缓存令牌过期之前过早轮换证书可能会导致停机。 在这种情况下,您可能必须重新启动所有机器人。