2.2. 验证用于 etcd 的硬件


要在创建 OpenShift Container Platform 集群之前或之后验证 etcd 的硬件,您可以使用 fio。

先决条件

  • 您正在测试的机器上安装了 Podman 或 Docker 等容器运行时。
  • 数据被写入 /var/lib/etcd 路径。

流程

  • 运行 fio 并分析结果:

    • 如果使用 Podman,请运行以下命令:

      $ sudo podman run --volume /var/lib/etcd:/var/lib/etcd:Z quay.io/cloud-bulldozer/etcd-perf
      Copy to Clipboard Toggle word wrap
    • 如果使用 Docker,请运行以下命令:

      $ sudo docker run --volume /var/lib/etcd:/var/lib/etcd:Z quay.io/cloud-bulldozer/etcd-perf
      Copy to Clipboard Toggle word wrap

输出会报告磁盘是否足够快以运行 etcd,它会检查测试运行中获得的 fsync 指标的 p99 值是否小于 10ms。一些最重要的 etcd 指标可能受到 I/O 性能的影响,如下所示:

  • etcd_disk_wal_fsync_duration_seconds_bucket 指标报告了 etcd 的 WAL fsync 持续时间。
  • etcd_disk_backend_commit_duration_seconds_bucket 指标报告 etcd 后端提交延迟持续时间
  • etcd_server_leader_changes_seen_total 指标报告领导更改

etcd 在所有成员间复制请求,因此其性能会严重依赖于网络输入/输出(I/O)的延迟。大量网络延迟会导致 etcd heartbeat 的时间比选举超时时间更长,这会导致一个可能会对集群造成破坏的领导选举。在部署的 OpenShift Container Platform 集群上监控的一个关键指标是每个 etcd 集群成员上的 etcd 网络对延迟的 p99 百分比。使用 Prometheus 跟踪指标数据。

histogram_quantile(0.99, rate(etcd_network_peer_round_trip_time_seconds_bucket[2m]) 指标报告 etcd 在成员间复制客户端请求的时间。确保它小于 50 ms。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat