43 通用查错原则 #
在深入了解特定组件问题之前,请考虑以下通用原则:
- 检查日志:日志是主要的信息来源。大多数情况下,错误消息会自行说明问题,且包含失败原因的提示。 
- 检查时钟:系统间的时钟差异可能导致各种错误。确保时钟同步。可通过 EIB 配置在引导时强制时钟同步,请参见“配置操作系统时间”(第 3 章 “使用 Edge Image Builder 配置独立群集”)。 
- 引导问题:如果系统在引导过程中陷入停滞状态,则记录显示的最后一条消息。可访问控制台(物理连接或通过 BMC)查看引导消息。 
- 网络问题:验证网络接口配置 ( - ip a)、路由表 (- ip route),测试与其他节点及外部服务的连通性(- ping、- nc)。确保防火墙规则未封锁必要端口。
- 验证组件状态:使用 - kubectl get和- kubectl describe查看 Kubernetes 资源。使用- kubectl get events --sort-by='.lastTimestamp' -n <namespace>查看特定 Kubernetes 名称空间的事件。
- 验证服务状态:使用 - systemctl status <service>检查 systemd 服务状态。
- 检查语法:软件对配置文件的结构和语法有特定要求。例如,对于 YAML 文件,可使用 - yamllint或类似工具验证语法正确性。
- 隔离问题:尝试将问题缩小到特定组件或层级(例如,网络、存储、操作系统、Kubernetes、Metal3、Ironic 等)。 
- 文档参考:始终参考官方 SUSE Edge 文档及上游文档以获取详细信息。 
- 版本:SUSE Edge 是经过精心设计且全面测试的 SUSE 各组件版本集合。每个 SUSE Edge 版本中各组件的版本信息可在 SUSE Edge 支持矩阵中找到。 
- 已知问题:每个 SUSE Edge 版本的发行说明中都含有“已知问题”部分,包含有关将在未来版本中修复但可能影响当前版本的问题的信息。