etcd 日志压缩_etcd 调优(Tuning)

调优(Tuning)

etcd默认设置适用于网络低延迟。但网络延迟高,如网络跨域数据中心,那么心跳间隔和选举超时的设置就需要优化(tuning).

网络慢不仅仅由于延迟,还可能被Leader和follower的低速磁盘IO影响。每一次超时设置应该包含一个请求发出到响应成功的时间。

时间参数

当一个节点挂掉(stalls)变慢或者下线,分布式一致性协议(distributed consensus protocol)依赖两个时间参数保证领导力切换。

第一个参数叫心跳间隔(Heartbeat Interval)。它代表leader通知所有的followers,他还是Leader的频率。最佳实践,它应该被设置为节点之间网络往返时间(round-trip time)。etcd默认心跳间隔是100ms。

第二个参数是选举超时(Election TimeoutRTT)。它表示follower在多久后还没有收到leader的心跳,它自己就变成Leader。etcd的默认选举超时是1000ms。

调整参数需要做一些权衡。心跳间隔推荐设置为节点之前的最大RTT,一般可设置为RTT的0.5-1.5倍。如果心跳间隔太短,etcd会发送没必要心跳增加CPU和网络的使用率。另外,过长的心跳间隔会增长选举超时时间。过长的选举超时导致要更长的时间才能发现Leader故障。测量RTT最简单方法就是用PING工具。

选举超时应该基于心跳间隔和节点的平均RTT去设置。选举超时应该至少是RTT的10倍,这样才能视为网络延迟出现方差(variance)。例如,节点间的RTT是10ms,那么超时时间至少应该是100ms。

选举超时时间最大限制是50000ms(50s), 只有etcd被部署在全球范围内时,才应该使用这个值。美国大陆的RTT是130ms,美国和日本的RTT是35

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值