如何更安全的提升Kubernetes节点
发布时间:2022-06-08 15:16 所属栏目:124 来源:互联网
导读:您是否害怕将集群升级到更新的 Kubernetes 版本?有几个原因可能会促使您升级。也许您想要执行以下操作之一: 使用新的测试版 API 需要更新 Kubernetes 版本的最新特性 遵循使您的软件保持最新的最佳实践 无论是什么原因,都值得回顾一下您的升级过程,以确
您是否害怕将集群升级到更新的 Kubernetes 版本?有几个原因可能会促使您升级。也许您想要执行以下操作之一: 使用新的测试版 API 需要更新 Kubernetes 版本的最新特性 遵循使您的软件保持最新的最佳实践 无论是什么原因,都值得回顾一下您的升级过程,以确保您在升级期间最大限度地减少停机时间(和焦虑)。 需要升级的组件有哪些? 一个 Kubernetes 集群由一组节点和一个控制平面组成。工作节点托管运行容器化应用程序的 pod。控制平面管理集群中的工作节点和 Pod。 异地升级需要临时加倍计算资源以换取更短的升级窗口。升级持续时间的减少是由于新升级节点的启动时间并行化,以及 pod 移动的最小化。在此策略中,Pod 从旧节点移动到新升级的节点。 假设您对计算资源利用率的暂时增加可以接受,我们建议您使用异地升级策略来加快速度。 配置 K8s 资源 无论您选择哪种工作节点升级策略,都将涉及将您的 pod 从原始节点改组到升级节点。如果您的资源配置不正确,可能会导致停机。让我们来看看一些潜在的陷阱。 独立 Pod Pod 是 Kubernetes 中最小的可部署对象。它代表在您的集群中运行的应用程序的单个实例。Pod 是短暂的;如果一个 pod 从一个节点被驱逐,这个 pod 不会替换自己。由于 Pod 不是自愈的,因此不建议您直接创建单个 Pod。相反,请使用 Deployment 等控制器为您创建和管理 Pod。 为了最大限度地减少停机时间,请确保您的所有 pod 都由 ReplicaSet、Deployment、StatefulSet 或类似的东西管理,升级后可能需要手动重新安排独立 pod。 Deployment 集群中的大多数 pod 都可能由Deployment控制。Deployment 代表一组没有唯一身份的相同 pod。部署通过管理应用程序的多个副本并在任何实例失败时部署替换来提高可用性。 要消除停机时间,请确保您的应用程序具有PodDisruptionBudget (PDB)。PDB 通过限制同时关闭的复制应用程序的 pod 数量来帮助提供更高的可用性。 (编辑:ASP站长网) |
相关内容
网友评论
推荐文章
热点阅读