Automation Suite
2022.4
False
- 概述
- 要求
- 安装
- 安装后
- 集群管理
- 监控和警示
- 迁移和升级
- 特定于产品的配置
- 最佳实践和维护
- 故障排除
- 无法获取沙盒映像
- 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 指标
- 使用 Automation Suite 诊断工具
- 使用 Automation Suite 支持包工具
- 探索日志
MongoDB Pod 处于 CrashLoopBackOff 状态或在删除后处于“等待 PVC 配置”状态
Automation Suite 安装指南
上次更新日期 2024年4月24日
MongoDB Pod 处于 CrashLoopBackOff 状态或在删除后处于“等待 PVC 配置”状态
The MongoDB pods might get stuck in
CrashLoopBackOff
due to a corrupt PVC. The most probable cause of this issue is an unclean shutdown.
遇到此问题时,日志将显示以下内容:
Common point must be at least stable timestamp
{"t":{"$date":"2022-05-18T09:37:55.053+00:00"},"s":"W", "c":"STORAGE", "id":22271, "ctx":"initandlisten","msg":"Detected unclean shutdown - Lock file is not empty","attr":{"lockFile":"/data/mongod.lock"}}
['currentState.Running' = false]
['currentState.IsVCRedistCorrect' = true]
['desiredState.ProcessType' != mongos ('desiredState.ProcessType' = mongod)]
Common point must be at least stable timestamp
{"t":{"$date":"2022-05-18T09:37:55.053+00:00"},"s":"W", "c":"STORAGE", "id":22271, "ctx":"initandlisten","msg":"Detected unclean shutdown - Lock file is not empty","attr":{"lockFile":"/data/mongod.lock"}}
['currentState.Running' = false]
['currentState.IsVCRedistCorrect' = true]
['desiredState.ProcessType' != mongos ('desiredState.ProcessType' = mongod)]
-
删除失败的 Pod。如果此解决方案不起作用,请继续执行后续步骤。
kubectl delete pod <pod-name> -n mongodb
kubectl delete pod <pod-name> -n mongodb - 获取故障 Pod 的损坏 PVC 的名称。
kubectl -n mongodb get pvc
kubectl -n mongodb get pvc -
删除发生故障的 Pod 的 PVC。
kubectl -n mongodb delete pvc <pvc-name>
kubectl -n mongodb delete pvc <pvc-name>注意:此时,PVC 应该会自动同步,并且 Pod 应该不会再遇到任何问题。如果未发生自动配置,则需要通过以下步骤手动执行该操作。 -
获取运行状况良好的节点的 PVC YAML。
kubectl -n mongodb get pvc <pvc-name> -o yaml > pvc.yaml
kubectl -n mongodb get pvc <pvc-name> -o yaml > pvc.yaml - 编辑名称并从 YAML 中删除
uuids/pvc-ids
。 -
删除卷名称和 UID,并将 PVC 重命名为已删除的 PVC 名称。
-
应用 PVC。
kubectl -n mongodb apply pvc.yaml
kubectl -n mongodb apply pvc.yaml - 应配置 PVC 并将其附加到 Pod 的 PVC,并且 Pod 不应再遇到任何问题。如果 Pod 未重新同步,则将其删除。