Kubernetes 1.7.4 Release:让 Pod 逃生变得更快

阅读时长 3 分钟读完

在 Kubernetes 1.7.4 的最新版本中,重要的安全和性能更新已经进行了发布。其中,最值得一提的是在 Pod 逃生方面的改进,使得应用程序更加可靠。下面是本文对 Kubernetes 1.7.4 版本的详细解析,给读者带来深度学习和指导意义。

Pod 处理机制

在 Kubernetes 中,Pod 是最小的可配合单元,可以包含一个或多个容器。但是,Pod 也有可能因为容器不可用而失败,这时,Kubernetes 需要重新创建 Pod,保证对应的应用程序继续正常运行。Pod 处理机制有两种方式:

  • 创建一个新的 Pod 并且替换旧的 Pod。
  • 在一个 Pod 不可用的情况下,尝试将其迁移到另一个节点上。

在 Kubernetes 1.7.4 版本中,对 Pod 逃生的第二种情况进行了重点优化,设定了许多不同的措施,使得 Pod 的重新创建更快、更可靠,下面会针对此进行详细介绍。

Pod 逃生方法

控制器逐步滚动升级

慢慢地升级所有的批处理 Pod。在控制器逐步进行滚动升级时,如果有任何问题,只需要停止升级并回滚,因此失败将被最小化。

-- -------------------- ---- -------
----------- -------
----- ----------
---------
  ----- ------------------
-----
  --------- -
  ---------
    ----- -------------
    --------------
      --------------- -
      --------- -
  ---------
    ------------
      ---- -------
  ---------
    ---------
      -------
        ---- -------
    -----
      -----------
      - ----- -------
        ------ ---------

Pod 图片及默认启用滚动更新策略版本

在 Kubernetes 1.7.4 中,将 Pod 模版的图片特性从 beta 版更新为 GA 版并默认开启,这使得易受攻击的应用程序能够快速清理更新。同时,还提供了滚动升级策略,可以以最小化停机时间的方式更新容器。

健康检查机制

Kubernetes 1.7.4 提供的健康检查机制有两种方式:HTTP 和 TCP。HTTP 方式是更灵活的,因为探测器可以对特定端点进行调用,并检查是否返回 200。相比之下,TCP 方式则更快更轻便,因为直接测试网络的可访问性和端口是否开放。

-- -------------------- ---- -------
----------- --
----- ---
---------
  ----- -------
  -------
    ---- -------
-----
  -----------
  - ----- -------
    ------ ---------
    ---------------
      --------
        ----- -------
        ----- ----

紧急停止速度

在 Kubernetes 1.7.4 中,提供了更快的 Pod 停止速度,在 Pod 的控制器的堆栈中,它可以接收肯定的 SIGTERM 信号。因此,它可以在更短的时间内响应停止信号,并充分保护它的数据。

Pod 暴露真实到处

Pods 在故障时可能会假装仍在运行,这是通过仍在监听它们的网络端口实现的,使得 Kubernetes 不会知道它们已经停运。在 Kubernetes 1.7.4 版本中,Pod 在停止时,将清空所有监听的网络端口,因此 Kubernetes 不再需要检查它们是否停止。

总结

Kubernetes 1.7.4 的发行版本对 Pod 逃生进行了重点优化,保证了对应用程序的可靠性和响应能力。同时,也大幅度提高了安全性和性能。如果您正在使用 Kubernetes,建议尽快升级到 1.7.4 版本,以保持最新版本。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6465e24a968c7c53b068c5d6

纠错
反馈