- 概述
- 要求
- 安装
- 安装后
- 集群管理
- 监控和警示
- 迁移和升级
- 特定于产品的配置
- 最佳实践和维护
- 故障排除
- 如何在安装过程中对服务进行故障排除
- 如何卸载集群
- 如何清理离线工件以改善磁盘空间
- 如何清除 Redis 数据
- 如何启用 Istio 日志记录
- 如何手动清理日志
- 如何清理存储在 sf-logs 存储桶中的旧日志
- 如何禁用 AI Center 的流日志
- 如何对失败的 Automation Suite 安装进行调试
- 如何在升级后从旧安装程序中删除映像
- 如何自动清理 Longhorn 快照
- 如何禁用 TX 校验和卸载
- 如何手动将 ArgoCD 日志级别设置为 Info
- 如何为外部注册表生成已编码的 pull_secret_value
- 如何解决 TLS 1.2 中的弱密码问题
- 如何使用证书
- 如何使用集群内对象存储 (Ceph) 收集 DU 使用情况数据
- 如何在离线环境中安装 RKE2 SELinux
- 如何清理 NFS 服务器上的旧差异备份
- 无法获取沙盒映像
- Pod 未显示在 ArgoCD 用户界面中
- Redis 探测器失败
- RKE2 服务器无法启动
- 在 UiPath 命名空间中找不到密码
- ArgoCD 在首次安装后进入“进行中”状态
- 访问 ArgoCD 只读帐户时出现问题
- MongoDB Pod 处于 CrashLoopBackOff 状态或在删除后处于“等待 PVC 配置”状态
- 集群还原或回滚后服务运行状况不佳
- Pod 在 Init:0/X 中卡住
- Prometheus 处于 CrashLoopBackoff 状态,并出现内存不足 (OOM) 错误
- 监控仪表板中缺少 Ceph-rook 指标
- Pod 无法在代理环境中与 FQDN 通信
- 无法配置升级后的电子邮件警示
- 无正常的上游问题
- 使用 Automation Suite 诊断工具
- 使用 Automation Suite 支持捆绑包
- 探索日志
Linux 版 Automation Suite 安装指南
本页介绍 Automation Suite 的手动和自动启动和关闭行为。
您必须始终关闭一个节点,执行所需的操作,等待直到节点运行正常,然后关闭另一个节点以执行相同的操作。
下表描述了关闭集群服务或节点时可能遇到的不同场景。该表提供了针对每种情况您必须采取的详细操作,以及有关了解这些操作所导致的预期行为的指南。
|
场景 |
操作 |
预期行为 |
|---|---|---|
|
出于维护或任何其他原因,在不关闭节点的情况下关闭一个节点上的集群服务。 |
|
在 HA 方案中,大多数服务将保持运行状态。节点启动后应不会出现任何问题,并且任何关闭的服务均应重新启动。 |
|
出于维护或任何其他原因,在不关闭节点的情况下关闭所有集群服务。 |
|
服务将不可用。节点启动应不会出现问题。 |
|
正在关闭所有节点。 |
如果您的虚拟机监控程序管理门户(例如 VMware、AWS)允许服务在不强制终止计算机的情况下正常关闭,请执行正常关闭。默认情况下,systemd 子系统会允许有一个宽限期,以便在强制终止服务之前关闭服务。但是,如果您的系统覆盖了配置的关机时间,则可能会干扰正常关机。 例如,在 AWS 上,平台可以在两分钟后强制终止虚拟机。因此,必须手动关闭服务,因为节点排空可能需要长达 5 分钟的时间(这是正常关闭的要求)。 |
如果正常关闭,则节点启动时应不会出现问题。 |
|
关闭单个节点。 |
如果您的虚拟机监控程序管理门户(例如 VMware、AWS)允许服务在不强制终止计算机的情况下正常关闭,请执行正常关闭。默认情况下,systemd 子系统会允许有一个宽限期,以便在强制终止服务之前关闭服务。但是,如果您的系统覆盖配置的关闭时间,则可能会干扰正常关闭。例如,在 AWS 上,平台可以在两分钟后强制终止虚拟机。因此,必须手动关闭服务,因为节点排空可能需要长达 5 分钟的时间(这是正常关闭的要求)。 |
如果未强制关闭过程,则节点重新启动应该不会出现任何问题。 |
|
强制终止服务器节点。 |
不适用。 |
在大多数情况下,节点会启动,但某些使用持久性数据的服务可能会出现问题。尽管这些问题通常可以恢复,但强烈建议您设置备份。 在原始节点重新联机之前,Insights Pod 不会重新启动,以防止潜在的数据丢失。如果节点无法恢复,请联系支持团队。 |
rke2-service 开头,在后面添加 node-drainer 和 node-uncordon。node-drainer 在启动时不执行任何操作,仅返回服务已启动的确认信息。
node-uncordon 仅运行一次并启动 /opt/node-drain.sh nodestart,从而取消封锁节点。这属于停止行为时发生的排出程序,会封锁节点,使其无法调度。当 rke2 服务启动时,这种状态持续存在。因此,必须在 rke2-service 重新启动后取消封锁节点。
手动启动
rke2-service,您必须通过运行以下命令再次启动该服务:
- 启动在服务器节点上运行的 Kubernetes 进程:
systemctl start rke2-serversystemctl start rke2-server - 启动在服务器节点上运行的 Kubernetes 进程:
systemctl start rke2-agentsystemctl start rke2-agent - 启动
rke2服务后,请取消封锁节点,以确保 Kubernetes 现在可以在此节点上计划工作负载:systemctl restart node-uncordonsystemctl restart node-uncordon - 启动节点后,您必须排空节点:
systemctl start node-drain.servicesystemctl start node-drain.service重要提示:如果系统重新启动,跳过步骤 4 可能会导致 Kubelet 服务以不正常的方式关闭。
systemd 会按照启动顺序停止服务。由于 node-drain 服务具有指令 After=rke2-server.service 或 After=rke2-agent.service,因此它会在 rke2-service 关闭之前执行其关闭序列。这意味着在正确配置的系统中,只需正常关闭节点即可安全操作。
手动重新启动
如果您计划停止 rke2 服务并重新启动计算机,请执行以下步骤:
-
要确保集群在执行节点维护活动时正常运行,您必须将该节点上运行的工作负载排出到其他节点。要排空节点,请运行以下命令:
systemctl stop node-drain.servicesystemctl stop node-drain.service - 停止在服务器节点上运行的 Kubernetes 进程:
systemctl stop rke2-serversystemctl stop rke2-server - 停止在代理节点上运行的 Kubernetes 进程:
systemctl stop rke2-agentsystemctl stop rke2-agent -
终止 rke2 服务、Containerd 和所有子进程:
此文件应已在路径中,但它位于rke2-killall.shrke2-killall.sh/bin/rke2-killall.sh。
- 系统在安装过程中将创建以下单元文件:
rke2-server.service(仅限服务器)。启动rke2-server,这将启动服务器节点。rke2-agent.service(仅限代理)。启动rke2-agent,这将启动代理节点。node-drain.service。在关闭时使用。在关闭rke2-agent或rke2-server并执行排空之前执行。超时时间为 300 秒。node-uncordon.service。在启动时用于取消封锁节点。var-lib-kubelet.mount。由 fstab 生成器自动生成。var-lib-rancher-rke2-server-db.mount。由 fstab 生成器自动生成。var-lib-rancher.mount。由 fstab 生成器自动生成。
node-drain 和 node-uncordon 具有 After=rke2-server.service 或 After=rke2-agent.service 指令。这意味着这些服务将在 rke2-service 之后启动。