美文网首页
Openshift node节点丢失及pod驱逐时间设定

Openshift node节点丢失及pod驱逐时间设定

作者: ragpo | 来源:发表于2019-07-19 12:35 被阅读0次

概要

openshift在有多个node节点时可以做到应用的多活负载,并且在部分node节点丢失时保障应用的高可用和自动迁移至其他健康node节点。

测试

我在自己的环境上部署了一个应用pod,当我关闭pod所在node节点时,等待pod重新在其他健康的node节点上创建耗费了很长一段时间,主要包括两个时间:1、node丢失时间。2、pod驱逐重新调度时间。

node丢失时间

node丢失时间的设置参数为:node-monitor-grace-period,默认是40s,在40s内判断都是不健康就会把这个node标记为不健康。
以下是配置文件的路径和位置:

  • /etc/origin/master/master-config.yaml
kubernetesMasterConfig:
  controllerArguments:
    node-monitor-grace-period:
    - "40s"
  • K8S官方解释
    Amount of time which we allow running Node to be unresponsive before marking it unhealthy. Must be N times more than kubelet's nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet to post node status.

pod驱逐重新调度时间

在openshift判断node节点丢失时,会判断所在node节点的pod状态信息,如果在5分钟内都丢失的node节点没有恢复健康,就会把所在的pod给驱逐到其他健康的node节点上。
以下是配置文件的路径和位置:

  • /etc/origin/master/master-config.yaml
kubernetesMasterConfig:
  podEvictionTimeout: 5m
  • 官方解释
    Controls grace period for deleting pods on failed nodes. It takes valid time duration string. If empty, you get the default pod eviction timeout.

node上报自身状态时间

node节点会上报自身状态,配置参数为:nodeStatusUpdateFrequency,默认10s。

  • /etc/origin/node/node-config.yamlfile:
kubeletArguments:
  node-status-update-frequency:
  - "10s"
  • 官方解释
    The node continues to report node status updates at the frequency specified by the node-status-update-frequency argument, which defaults to 10s (ten seconds).

重启服务

在修改完配置文件后,要记得重启相应的master和node服务才能生效,如果是多节点,要修改多个。

参考链接

相关文章

网友评论

      本文标题:Openshift node节点丢失及pod驱逐时间设定

      本文链接:https://www.haomeiwen.com/subject/ewujlctx.html