Category Archives

10 Articles

原创

解决重新安装CentOS时安装程序无法识别已有磁盘的问题

Posted on

在铲除已有的系统环境重新安装CentOS时,可能会出现无法识别到可用磁盘,导致安装中断。出现这种情况的原因可能是因为这些磁盘分区中包含了特殊的BIOS RAID元数据,一旦原配置丢失或损坏,即便该盘实际上已不在RAID组中,也无法被操作系统调用,这种状态为“Fake RAID”状态。

问题描述

对于CentOS 6,安装程序会给出如下提示信息:

Disk sd* contains BIOS RAID metadata, but is not part of any recognized BIOS RAID sets. Ignoring disk sd*

对于CentOS 7,安装程序会直接忽略该类磁盘,无法识别成可用磁盘。 阅读全文

原创

使用救援镜像恢复Nutanix集群中故障的节点CVM(适用于ESXi虚拟化)

Posted on

当Nutanix集群中某一节点的CVM遇到操作系统故障无法启动时,可以尝试通过救援镜像恢复CVM服务,而无需重刷整个节点。

风险说明:CVM作为节点存储控制器,异常的恢复操作可能导致所在节点上的数据不可用或元数据损坏。如果无法确定是否能通过该方式恢复CVM,建议将该节点强制踢出集群再重新加回。踢出集群的步骤请参阅:https://portal.nutanix.com/kb/2379

环境说明

以下操作基于AOS 5.5+ESXi 6/6.5环境。所涉及的相关CVM配置项请根据实际情况修改。示例如下: 阅读全文

原创

MySQL数据库表空间高水位回收,并切换至独立表空间流程

Posted on

MySQL在5.5版本后引入了更高级的InnoDB表处理引擎,其支持以表为单位创建独立的表空间文件。但是在5.5版本中,该特性默认为未启用;或者低版本升级上来的数据库,表引擎从MyISAM转换为了InnoDB,其表空间依旧为共享类型。

随着表数据量的不断增长,这张共享的表空间大小也会随之变大。有别于独立表空间文件,共享表空间文件并不能通过OPTIMIZE TABLE方式进行释放,所以当物理空间不足时,需要通过一次完整的导出导入操作来降低高水位,释放物理空间。同时,建议一并进行表空间类型切换,方便后续维护管理。

问题描述

MySQL表空间文件(一般为ibdata1)占用过多的物理空间,但实际表的数据大小已经小于表空间所分配的大小,表空间占用无法得到释放。且经查,数据库的表空间使用类型为“共享”。 阅读全文

原创

Cassandra执行元数据压缩任务时间过长时的处理方法

Posted on

对于一个日常数据变化量较大的分布式存储服务集群(比如NetApp StorageGRID),其Cassandra元数据表SSTable中堆积大量过期数据是在所难免的。一般而言,当SSTable大小到达一定值时,便会自动触发元数据压缩任务,这个压缩操作会将标记为过期的key从SSTable中清理掉,进而释放可用空间。

随着数据量变化幅度的增加,有时会出现元数据压缩任务十分缓慢的情况。元数据压缩无法完成,便会影响所在节点的存储服务性能(因为压缩也会占用一定的I/O及CPU资源)。此时可以尝试通过孤立节点的方式,临时缓解元数据压缩速度。

问题现象

1. 节点的整体存储服务性能下降 阅读全文