通过ACK 节点池高效管理Kubernetes节点——线上,边缘,弹性多种场景

简介: 节点池场景扩展 前言 前面我们介绍了如何通过ACK 节点池管理云上节点资源,以及通过节点池解决的问题。 本文我们介绍通过节点池能够实现的各种场景。   目录 节点池系列将分为几部分介绍ACK Kubernetes 节点池功能和特性 通过ACK 节点池高效管理Kubernetes节点——节点池介绍 通过ACK 节点池高效管理Kubernetes节点

节点池场景扩展

前言

前面我们介绍了如何通过ACK 节点池管理云上节点资源,以及通过节点池解决的问题。 本文我们介绍通过节点池能够实现的各种场景。

 

目录

节点池系列将分为几部分介绍ACK Kubernetes 节点池功能和特性

  • 通过ACK 节点池高效管理Kubernetes节点——节点池介绍
  • 通过ACK 节点池高效管理Kubernetes节点——线上,边缘,弹性多种场景
  • 通过ACK 节点池高效管理Kubernetes节点——降低成本:自动伸缩与抢占实例
  • 通过ACK 节点池高效管理Kubernetes节点——托管节点池:无人工介入的节点自愈恢复
  • 通过ACK 节点池高效管理Kubernetes节点——托管节点池:设置维护窗口与自动升级

 

弹性节点池

弹性伸缩能力是云上降低成本的利器,通过节点池我们能够提前规划好集群的节点配置,基于节点池进行节点的动态扩缩容。 ACK 提供了弹性节点池,将Kubernetes的组件Cluster-AutoScaler和节点池结合,Cluster-AutoScaler监控集群的Pod数和节点数,根据集群中pod使用情况动态伸缩节点池的数量。 当创建一个弹性节点池的时候,时会将对应的伸缩组 ClusterAutoScaler,当集群资源不足, 创建的Pod由于无法调度而出于Pending状态时,ClusterAutoScaler 会触发

托管节点池

Kubernetes 是一个分布式操作系统,分布式系统最大的挑战在于面对失败和不确定性。 随着在kubernetes上运行的工作负载种类越多,不可避免会出现节点层面的异常,例如底层异常,磁盘过满,网络异常导致的节点失联等。 面对这些异常情况我们当然可以手动登陆到节点上执行恢复,但是当维护一个成百上千节点规模的集群时,一台台维护操作肯定不现实,而且每种异常情况对应的恢复操作也不相同,需要有着丰富经验的运维人员24小时待命,这样会带来巨大的运维成本。 同样在运维中,随着Kubernetes和操作系统的演进,集群的节点也需要不定期更新,例如使用最新的内核特性,或者安全布丁,需要更新操作系统版本,或者更新集群的容器运行时等,如何在大规模集群中快速更新同时保障系统的稳定性,也是让运维人员头疼的问题。 托管节点池就是为了解决大规模下的运维问题而设计。 托管节点池的设计思路如下:

  • 支持节点升级,包含操作系统和运行时版本。 相比其他厂商销毁并新建节点的升级方式,ACK 托管节点池通过重置系统盘执行升级,可以节省新建节点的账目成本,同时也能支持预付费场景。
  • 支持配置自动升级。 节点升级会影响集群的算力,很多运维操作会选择在业务低峰的时间段。 托管节点池支持在预设的维护窗口内自动升级,帮助辛苦的运维人员在夜晚能睡一个安稳觉
  • 精细的升级控制,支持MaxUnavailable 和 MaxSurge 等参数,当升级结果不符合预期,通过MaxUnavailable 可以及时终止升级止血,避免扩大影响范围 ; MaxSurge 可以设置升级前额外扩容节点,保障升级过程中算力总量,防止因为节点升级中因为资源不足导致业务无法顺利驱逐。

边缘集群

边缘云计算是基于云计算技术的核心和边缘计算的能力,构筑在边缘基础设施之上的新型计算平台,并正在成为行业的新焦点。阿里云边缘托管Kubernetes集群在云端提供一个标准、安全、高可用的Kubernetes集群,整合阿里云虚拟化、存储、网络和安全等能力,并简化集群运维工作。 https://help.aliyun.com/document_detail/163259.html

ACK边缘集群中,包含两类节点池。 首先是云上节点池,云上节点池部署运行集群管控必须的addon,例如日志,监控,边缘控制器,此外在云ECS上部署 edge-tunnel-server 组件做隧道打通,并通过公网SLB挂载,为边缘节点池创建安全加密的公网运维通道。 边缘节点池每个对应一个EdgeUnit,节点的底层包含ENS和自有边缘节点两种类型。在边缘节点上会部署Edge Agent等组件, 帮助节点扩展边缘节点自治的能力。 参考:https://help.aliyun.com/document_detail/163259.html

混合云节点池

业务上云已是大势所趋,但是对于企业客户而言,出于数据主权和安全隐私的考虑,企业客户会考虑使用多云混合云方式开展业务,然而不同云环境的基础设施能力、安全架构的差异会造成企业IT架构和运维体系的割裂,加大多云混合云实施的复杂性,提高了运维成本。 阿里云容器服务ACK提供的多云混合云方案具有统一的集群管理,动态弹性和服务治理能力。 用户可以将一个线下的Kubernetes集群添加纳管到线上,在纳管的集群中创建云上节点池。 通过节点池能扩缩容云上的ECS节点,并添加到纳管集群中,提供工作负载支持。当出现突发的算力需求,线下来不及扩容,线上弹性节点池就能发挥作用,线上节点池能够通过云上的极速弹性能力提供相应计算资源,及时满足算力需求。

总结

通过节点池能够对ACK 集群提供更细粒度的节点抽象能力,通过支持不同类型的节点池,能够满足线上,边缘等各种场景,在云上也能够通过节点池提供弹性,托管等能力,为用户管理ACK节点提供更低的成本和更好的便捷性。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
1月前
|
Kubernetes 监控 数据安全/隐私保护
K8s好看的管理页面Rancher管理K8S
K8s好看的管理页面Rancher管理K8S
44 4
|
3月前
|
存储 Kubernetes 监控
Kubecost | Kubernetes 开支监控和管理 🤑🤑🤑
Kubecost | Kubernetes 开支监控和管理 🤑🤑🤑
|
1月前
|
JSON Kubernetes Go
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
38 0
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
|
29天前
|
Kubernetes 搜索推荐 应用服务中间件
通过keepalived+nginx实现 k8s apiserver节点高可用
通过keepalived+nginx实现 k8s apiserver节点高可用
40 16
|
1月前
|
Kubernetes 固态存储 调度
从NodeSelector到NodeAffinity:探索Kubernetes节点亲和性的进化之路
从NodeSelector到NodeAffinity:探索Kubernetes节点亲和性的进化之路
23 0
|
2月前
|
存储 Kubernetes 监控
容器服务ACK常见问题之容器服务ACK worker节点选择不同地域失败如何解决
容器服务ACK(阿里云容器服务 Kubernetes 版)是阿里云提供的一种托管式Kubernetes服务,帮助用户轻松使用Kubernetes进行应用部署、管理和扩展。本汇总收集了容器服务ACK使用中的常见问题及答案,包括集群管理、应用部署、服务访问、网络配置、存储使用、安全保障等方面,旨在帮助用户快速解决使用过程中遇到的难题,提升容器管理和运维效率。
|
2月前
|
Kubernetes 监控 Linux
容器服务ACK常见问题之新增一台CentOS 5.4内核的节点失败如何解决
容器服务ACK(阿里云容器服务 Kubernetes 版)是阿里云提供的一种托管式Kubernetes服务,帮助用户轻松使用Kubernetes进行应用部署、管理和扩展。本汇总收集了容器服务ACK使用中的常见问题及答案,包括集群管理、应用部署、服务访问、网络配置、存储使用、安全保障等方面,旨在帮助用户快速解决使用过程中遇到的难题,提升容器管理和运维效率。
|
2月前
|
Kubernetes Cloud Native Devops
云原生技术落地实现之二KubeSphere DevOps 系统在 Kubernetes 集群上实现springboot项目的自动部署和管理 CI/CD (2/2)
云原生技术落地实现之二KubeSphere DevOps 系统在 Kubernetes 集群上实现springboot项目的自动部署和管理 CI/CD (2/2)
60 1
|
2月前
|
Kubernetes 容器
k8s集群部署成功后某个节点突然出现notready状态的问题原因分析和解决办法
k8s集群部署成功后某个节点突然出现notready状态的问题原因分析和解决办法
25 0
|
3月前
|
Kubernetes Unix Docker
k8s管理docker
k8s管理docker