- 概述
- 要求
- 安装
- 问答:部署模板
- 发行说明
- Azure 部署架构
- 步骤 1:准备 Azure 部署
- 步骤 2:将 Automation Suite 部署到 Azure
- 步骤 3:部署后步骤
- 安装后
- 集群管理
- 监控和警示
- 迁移和升级
- 特定于产品的配置
- 最佳实践和维护
- 故障排除
- 无法获取沙盒映像
- Pod 未显示在 ArgoCD 用户界面中
- Redis 探测器失败
- RKE2 服务器无法启动
- 在 UiPath 命名空间中找不到密码
- 初始安装后,ArgoCD 应用程序进入“进行中”状态
- MongoDB Pod 处于 CrashLoopBackOff 状态或在删除后处于“等待 PVC 配置”状态
- 意外错误:不一致;手动运行 fsck
- 集群还原后 MongoDB 或业务应用程序降级
- 缺少 Self-heal-operator 和 Sf-k8-utils 存储库
- 集群还原或回滚后服务不正常
- RabbitMQ Pod 卡在 CrashLoopBackOff 中
- Prometheus 处于 CrashLoopBackoff 状态,并出现内存不足 (OOM) 错误
- 监控仪表板中缺少 Ceph-rook 指标
- Pod 无法在代理环境中与 FQDN 通信
- 使用 Automation Suite 诊断工具
- 使用 Automation Suite 支持包工具
- 探索日志
步骤 1:准备 Azure 部署
部署需要访问 Azure 订阅和具有 RBAC 角色所有者的资源组。 需要“所有者” 角色才能创建用户分配的托管身份,并在“资源组” 作用域分配“参与者” 角色。 管理虚拟机(执行缩减和横向扩展操作、应用 实例保护、更新操作系统)需要托管标识。
您可以通过以下步骤检查角色分配:
资源组 → 访问控制 (IAM) → 检查访问权限 → 查看我的访问权限
该部署配置了许多 Standard_D(通用)、Standard_E 和/或 Standard_NC(使用 GPU)虚拟机。Azure 订阅对可为虚拟机系列配置的核心数量设有配额。
转到 Azure 门户中的“使用情况 + 配额”,检查订阅配额。
作为安装过程的一部分,我们将规模集操作中的实例保护添加到服务器规模集的所有节点。由于这些操作是从 Azure 执行的,因此无需服务器上下文,因此可以防止集群出现故障。我们为集群管理操作提供 Runbook。有关规模集实例保护的更多信息,请参阅 Azure 文档。
我们为代理虚拟机实例提供实例终止支持。 这意味着,当代理虚拟机实例终止时,我们会从 Automation Suite 集群中封锁、排空和删除该节点。
我们在池中用于终止事件的 实例元数据服务 的每个代理虚拟机实例上运行脚本。 每当接收到事件时,我们都会在相应的节点上触发警戒线和排水命令,并且服务器还会针对该特定节点运行删除节点命令。
logs
容器的部署主存储帐户下找到每个节点终止操作的日志。 每个日志文件都包含节点的名称,并具有-termination.log
后缀。
确保虚拟机 SKU 在您部署的区域中可用。
您可以在以下位置查看可用性: 按区域列出的 Azure 产品。
.crt
证书之前对其进行 Base64 编码。
.pfx
证书(服务器证书)生成 Base64 编码的字符串。 然后,您可以在填写模板参数时使用这些字符串。 您可以使用适用于 Linux 的 Windows 子系统在 Windows 计算机上运行此 bash 脚本。 它使用openssl
转换证书。 请记住,服务器证书 ( .pfx
) 应满足一些 [要求 (doc:multi-node-configuring-the-certificates#server-certificate-requirements)。
.pfx
证书密码:
pfxFile=<path of the pfx file>
# Key
openssl pkcs12 -in $pfxFile -nocerts -out serverCertKeyEncrypted.key
openssl rsa -in serverCertKeyEncrypted.key -out serverCertKeyDecrypted.key
# Server cert
openssl x509 -in $pfxFile -clcerts -nokeys -out serverCert.crt
# CA Bundle:
openssl pkcs12 -in $pfxFile -cacerts -nokeys -chain | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > caBundle.crt
# Converting to base64 and removing newlines
cat serverCertKeyDecrypted.key | base64 | tr -d '\n' > base64CertKey
cat serverCert.crt | base64 | tr -d '\n' > base64Cert
cat caBundle.crt | base64 | tr -d '\n' > base64CABundle
pfxFile=<path of the pfx file>
# Key
openssl pkcs12 -in $pfxFile -nocerts -out serverCertKeyEncrypted.key
openssl rsa -in serverCertKeyEncrypted.key -out serverCertKeyDecrypted.key
# Server cert
openssl x509 -in $pfxFile -clcerts -nokeys -out serverCert.crt
# CA Bundle:
openssl pkcs12 -in $pfxFile -cacerts -nokeys -chain | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > caBundle.crt
# Converting to base64 and removing newlines
cat serverCertKeyDecrypted.key | base64 | tr -d '\n' > base64CertKey
cat serverCert.crt | base64 | tr -d '\n' > base64Cert
cat caBundle.crt | base64 | tr -d '\n' > base64CABundle
默认情况下,模板会在尽可能多的 Azure 可用区中部署虚拟机,以在多节点 HA 就绪生产集群中实现区域故障的恢复。
并非所有 Azure 区域都支持可用性区域。有关详细信息,请参阅 Azure 地理位置。
虚拟机 SKU 具有其他可用性区域限制,您可以使用 CLI cmdlet 进行检查。有关详细信息,请参阅 Get-AzComputeResourceSku。
如果服务器分布在三个 Azure 可用性区域,则该集群可应对区域故障。如果 Azure 区域不支持为服务器选择的虚拟机类型的可用性区域,则部署将在没有区域故障恢复能力的情况下继续进行。
该模板为 Azure 负载均衡器配置公共 IP 和 DNS 标签以访问服务。
<dnsName>.<regionName>.cloudapp.azure.com
。
Azure-provided
或 168.63.129.16
。
如果要通过互联网访问集群,可以查看步骤 3:部署后步骤。
该模板允许您在现有虚拟网络中部署节点。但是,虚拟网络必须具有满足以下要求的子网:
- 有足够的可用地址空间来容纳所有节点和内部负载均衡器;
- 出站连接;最好根据 Microsoft 的建议通过 NAT 网关 进行配置;
- 允许端口
443
上的 HTTPS 流量; - 可选: 为
Microsoft.Storage
配置了服务端点。 如果您在部署时启用备份,则需要这样做。
部署到现有虚拟网络时,您必须具有所有者 RBAC 角色,才能在其作用域内创建参与者角色分配。 横向扩展时,实例刷新操作需要执行此操作。
该模板允许您在部署时启用备份。这意味着创建一个具有 10TiB 存储容量的 Microsoft 存储帐户用作 NFS 共享,并为集群配置备份。备份间隔设置为 12 小时,以匹配 Azure SQL 数据库备份频率。