磁盘配置
目录
存储容量
INFO
请将以下分区挂载在专用磁盘或 LVM 配置的逻辑卷上,以便后续扩展。
推荐的 ETCD 实践
快速存储对于 etcd 的可靠性能至关重要。etcd 依赖持久、低延迟的磁盘操作来将提案持久化到其预写日志(WAL)。
如果磁盘写入耗时过长,fsync 延迟可能导致成员错过心跳,无法及时提交提案,并出现请求超时或临时领导者变更。这些问题也会减慢 Kubernetes API 并降低整个集群的响应速度。
总之,HDD 是不理想的选择,不推荐使用。如果必须使用 HDD 作为 etcd 存储,请选择最快的(例如 15,000 RPM)。
INFO
以下硬盘实践可提供最佳的 etcd 性能:
-
优先使用 SSD 或 NVMe 作为 etcd 磁盘。当写入耐久性和稳定性为优先考虑时,建议使用服务器级单层单元(SLC)SSD。避免使用 NAS、SAN 和 HDD。
- 优先选择具有高写入吞吐量的磁盘,以加速压缩和碎片整理。
- 优先选择具有强大读取带宽的磁盘,以缩短故障恢复时间。
- 优先选择具有持续低延迟的磁盘,以确保快速的读写操作。
-
避免使用分布式块存储系统,如 Ceph RADOS Block Device (RBD)、网络文件系统 (NFS) 及其他网络附加后端,因为它们会引入不可预测的延迟。
-
将 etcd 数据保存在专用磁盘或专用逻辑卷上。
- 不要在控制平面主机上放置 I/O 敏感(如日志)或其他密集的文件系统活动,或者至少不要让它们与 etcd 共享相同的底层存储。
-
持续使用
fio等工具进行基准测试,并利用结果跟踪集群增长时的性能。更多信息请参见 磁盘基准测试指南。
验证 etcd 硬件规格
使用 fio 进行基准测试
为测量实际的顺序 IOPS 和吞吐量,建议使用磁盘基准测试工具 fio。可参考以下操作说明:
WARNING
请勿在 集群的任何节点上运行这些测试。
请在与控制平面节点配置相同的专用虚拟机上运行测试。\