记录次etcd故障,fatal error: bus error

报错现象

实际报错只有fatal error: bus error

解读:"总线错误(bus error)" 通常与以下原因相关:

硬件故障:内存坏块、磁盘物理损坏或 I/O 错误,导致 etcd 读取 / 写入数据时触发底层硬件异常。

数据文件损坏:etcd 的wal(预写日志)或snap(快照)文件因磁盘错误或异常关闭损坏,无法被正常解析。

架构兼容性问题:结合之前的arm64架构不支持提示,可能是 etcd 二进制与 arm64 架构存在兼容问题,导致运行时内存访问异常。

处理

硬件故障和兼容性可以排查确认,最后如果数据损坏怎么处理。

复制代码
file $(which etcd)

因为是初始化环境遇见的问题,这种情况只需要删除数据重新部署即可。

集群1.21.5版本,部署的etcd是v3.4.15,换成较新的v3.4.37版本,https://github.com/etcd-io/etcd/releases/tag/v3.4.37

根据集群部署的方式更换

把data-dir数据备份移走之后重新部署新版本,服务正常。

复制代码
# 停服(若已启动)
systemctl stop etcd

# 备份数据目录(防止误操作)
mv /etcd /etcd_bak_$(date +%F)

# 重建数据目录并设置权限
mkdir -p /etcd
chown -R etcd:etcd /etcd
chmod 700 /etcd  # 修复日志中提到的权限不安全问题

# 启动
systemctl start etcd
相关推荐
Liu628884 分钟前
Web开发与API
jvm·数据库·python
m0_743470377 分钟前
Python字典与集合:高效数据管理的艺术
jvm·数据库·python
2501_945423547 分钟前
使用Scrapy框架构建分布式爬虫
jvm·数据库·python
yhole9 分钟前
MySQL无法连接到本地localhost的解决办法2024.11.8
数据库·mysql·adb
2401_8512729912 分钟前
使用Python进行量化交易入门
jvm·数据库·python
jinanmichael15 分钟前
mysql用户名怎么看
数据库·mysql
李少兄22 分钟前
企业资源计划(ERP)系统全景指南
java·前端·数据库·erp
bwz999@88.com22 分钟前
联想SR5507X04安装ubuntu-24.04.4 server,采用 Linux 原生mdadm(mdraid)软 RAID+LVM分区
运维·服务器
Canicer28 分钟前
OpenClaw搭配Coze工作流实现全自动发布文章至WordPress网站!
运维·服务器