【藏经阁一起读】(81)__《云原生节点管理最佳实践白皮书》

news/2024/8/21 11:50:32

【藏经阁一起读】(81)__《云原生节点管理最佳实践白皮书》

云原生节点管理最佳实践白皮书

作者: 小龙、彭媛洪、陈海

发布时间:2023-11-15

章节数:25

一、云原生节点管理模式产生背景

  随着云计算应用的普及,Kubernetes集群规模迅速增加,同时节点管理的重要性也日益凸显。作为云原生架构的关键组成部分,节点管理直接影响着整个云原生应用的稳定性和性能。然而,现有的基础架构管理方法更倾向于虚拟机管理,并缺乏对工作负载的深度感知,无法适应大规模节点管理的要求。为了应对大规模节点管理场景,云原生节点管理模式应运而生。

  在云原生的浪潮下, Kubernetes 集群在规模和数量上快速增长, 进而使得在大规模集群中,节点管理的重要性日益突出。在这样的环境下,高效 的节点管理成为确保集群稳定性、性能优化和资源利用率最大化的关键因素。

  计算节点作为云原生架构的关键组成部分,节点的管理直接影响着整个云原生应 用的成本和稳定性。然而,现有的基础架构管理方法更偏向于传统的虚拟机管理 理念,缺乏对工作负载的深度感知,无法适应大规模集群的节点管理要求。 面对大规模的节点管理的场景,越来越多的人愿意尝试云原生式的节点管理模式。 云原生节点管理是基于云原生理念,使用专为此目的设计的操作系统底座 ContainerOS 和配套基础设施,提供的一种有效的节点管理方案。这种新的管 理方案旨在优化云上环境的大规模节点的管理成本,并同时提供更佳的弹性、灵 活性、稳定性和安全性。

  Kubernetes 是开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。 Kubernetes 的基本架构由几个核心组件组成。

二、云原生节点的定义

  Worker 节点(简称节点)是构建云原生应用平台的基础,承载着管理容器生命周期和物 理资源的重要任务。

节点职责:

  • ♦ 提供容器运行环境:节点使用容器运行时来处理容器的创建、启动、停止和销毁。通过 全生命周期管理,使容器能够始终保持在期望状态。
  • ♦ 合理分配资源:节点负责为工作负载分配所需的运行资源。包括计算资源(如 CPU 和 内存)、持久化存储和网络资源等。通过合理的资源分配,节点不仅能够满足容器的运 行需求,更能保证不同容器间的资源隔离。
  • ♦ 提供高可用和故障恢复:节点应具备基本的高可用和故障恢复能力,在可预料的异常发 生时,主动干预使工作负载向期望状态靠拢,以提供基础的稳定性和可靠性

节点局限性

  • ♦ 单节点无法解决非预期的错误,比如容器运行时的异常,节点的恢复手段十分有限。并且由于缺乏全局视角,在集群容量不足时,因单节点的故障导致整个集群的雪崩也时有发生。
  • ♦ 由于宿主节点自身的管理并没有被 Kubernetes 集群标准化,随着集群规模变得庞大时,千奇百怪的手动运维操作,极易使 得集群中节点的配置存在差异,加剧环境腐化。

三、云原生节点管理

  云原生节点管理是指在云上环境中,利用云的弹性、可用性和计量计费等特点,最大化发挥节点的自管理能力,并通过集群化手段弥补单一节点的局限性,构建成本可控、易于管理、敏捷、安全和高可用的集群基础设施。通过云原生节点管理实践,可以有效的进行大规模集群的管理,满足不同工作负载的需求,并确保整个集群的稳定运行。这种管理实践对于构建可靠、可扩展的云原生应用平台至关重要。

  节点管理成本主要涉件成本和运维成本两部分。

  降低节点管理成本在构建可持续发展的云原生应用平台中十分重要。在云上环境中,我们可以利用云的标准化和弹性等特点,以通过系统化手段降低集群整体复杂度的方式,获得更可控的管理成本和更稳健的应用平台。

采用云原生节点管理实践,可以获得以下益处。

  ♦ 节约计算资源成本:充分利用云上环境的极致弹性特点,对集群内的资源使用状况动态感 知,可以根据实际需求进行峰时扩容,低谷时缩容,避免资源浪费。这种灵活的资源调配 方式可以有效降低计算资源的开销,降低硬件成本。

  ♦ 提高运维效率:通过大规模自动化和面向终态的配置能力,减少部署和配置的复杂性。自 动化的节点管理流程可以减少人工操作的错误和时间消耗,提高运维效率,降低节点运维 成本和故障风险,使运维人员能够更专注于核心业务,提高整体运维人效。

  ♦ 提高可用性和安全性:一致的执行环境可以大大降低应用程序出现异常的可能性。通过节 点实时监控和节点自愈能力,可以及时发现并解决节点故障,确保应用程序的稳定运行, 减少业务中断和损失

  云原生节点管理是以云原生理念为基础的实践方法论,主要目标是在满足日常运维需求的 同时,有效应地应对大规模集群节点管理的挑战。而操作系统作为节点底座,是云原生节点管理的重要组成部分。

传统操作系统在云原生场景面临的问题。

问题一:体积臃肿
问题二:版本零散
问题三:运维方式落后

ContainerOS设计原则:

原则一:小型化与极速弹性
原则二:安全增强
原则三:镜像原子更新与版本化管理
原则四:云原生场景开箱即用

  云原生节点管理提供了集群侧管理和节点侧管理两个维度的理论实践和工具集。

四、读后感

  云原生节点管理是云原生架构中的重要组成部分,它涉及到如何高效地管理和维护云原生集群中的节点。
  云原生节点管理作为一种全新的节点管理范式,是根据当前 Kubernetes 集群的使用局限 性提出的系统化和工程化的解决方案。

  以下是我从文中学到的云原生节点管理的一些知识和想法:

(1)、弹性伸缩:

  云原生节点管理应该具备弹性扩展的能力。根据负载需求自动调整节点的数量和规模。使用自动化调度工具来动态调整节点数量,以便根据负载需求来应对流量峰值和低谷。通过监控集群资源使用情况,根据需求自动增加或减少节点的数量,以满足不同工作负载的需求。
  Kubernetes 集群支持以弹性伸缩的方式管理集群节点,当面临突发流量急需工作负载水平扩容时,弹性伸缩可以迅速增加节点数量,确保集群能够快速响应并保持高可用性。通过节点的弹性伸缩,集群可以在短时间内适应不断变化的需求,保证工作负载的正常运行。 这种弹性能力使得业务能够轻松应对高峰期的流量,并在需要时自动缩容以降低成本。
  快速的弹性伸缩能力还可以提高集群的可靠性和容错能力。

(2)、节点运维监控工具

  ContainerOS 提供了一种新的解决方案:运维容器。
  在运维容器中,用户可以轻松查看系统进程信息、网络信息、系统配置等关键信息,以便 进行系统的监控和管理。将用户的操作隔离在运维容器中,一定程度上得以降低误操作带 来的破坏性。

(3)、声明式配置

  声明式配置管理带来了多个优势,不仅简化节点配置的过程和维护的复杂性。还可以避免 黑屏运维带来的风险和错误。同时,声明式配置结合 ContainerOS 分层更新的能力,使 得无论是存量节点还是新增节点,集群内的节点始终保持相同的配置,避免因为节点版本 差异引发的非预期行为。

(4)、节点故障自愈

  节点故障自愈是指在集群节点池中,当节点发生异常时,自动进行节点恢复操作,以保持 节点的正常运行状态。节点自愈功能包括问题诊断、恢复决策和恢复任务。节点故障自愈 是通过将专家经验自动化,并根据故障特异性指标进行自动排查和故障恢复。
  节点自愈的好处不仅可以提高集群的稳定性和可靠性。系统自动的诊断和恢复节点异常状 态,还可以减少手动排查和修复故障的时间和精力成本。更及时的发现节点异常情况,并 在故障放大前采取相应的恢复操作。减少故障对用户的影响,提高了系统整体的容错能力。

2023-12-20_224709.jpg

(5)、降低节点管理成本

  采用云原生节点管理实践,可以

  • 节约计算资源成本
  • 提高运维效率
  • 提高可用性和安全性
(6)、安全性

  云原生节点管理需要具备一定的安全性措施。采取适当的安全措施来保护节点和云原生环境。通过使用安全认证、授权和加密等技术,保护节点和集群的安全性,防止恶意攻击和数据泄露。

             推荐阅读:

AIGC 是通向 AGI 的那条路吗?
数字人,虚拟数字人——你看好数字人领域的发展吗?
大数据的关键技术之——大数据采集
[你找到牵手一辈子的人了吗?] 七夕情人节特辑
数字技术能让古籍“活过来”吗?
心情不好时,帮自己训练个AI情绪鼓励师吧(基于PALM 2.0 finetune)
深度学习框架TensorFlow
人工智能开发人员工作流程、看法、工具统计数据
2023 年6月开发者调查统计结果——最流行的技术(2)
2023 年6月开发者调查统计结果——最流行的技术(1)
让Ai帮我们画个粽子,它会画成什么样呢?

9e598365ba5344e282453e71a676a056.jpeg​​​​​

b9b9f2b9374646798ca554110a498cda.jpeg​​​​​

23f61e3eac99458296be0fedea10019e.jpeg​​​​​

给照片换底色(python+opencv)猫十二分类基于大模型的虚拟数字人__虚拟主播实例

bfa502b957c247a7872d7e645d4c6f03.jpeg​​​​​

2f073e39924e42d2b33221f4262dcc1d.jpeg​​​​​

9d7e2b6a00aa45fd82291f0d5f9eea7e.jpeg​​​​​

计算机视觉__基本图像操作(显示、读取、保存)直方图(颜色直方图、灰度直方图)直方图均衡化(调节图像亮度、对比度)

01bfb23f2f894ee0b0164f52e57bbbbc.png​​​​​

47c92d6cf9fe4d279a142480a4340a0d.png​​​​​

1620a2a7b0914c42b3a8254e94269a79.png​​​​​

语音识别实战(python代码)(一)

 人工智能基础篇

 计算机视觉基础__图像特征

93d65dbd09604c4a8ed2c01df0eebc38.png​​​​​

 matplotlib 自带绘图样式效果展示速查(28种,全)

074cd3c255224c5aa21ff18fdc25053c.png​​​​​

Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(一)

fe88b78e78694570bf2d850ce83b1f69.png​​​​​

62e23c3c439f42a1badcd78f02092ed0.png​​​​​

cb4b0d4015404390a7b673a2984d676a.png​​​​​

立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦

 Python 3D可视化(一)

让你的作品更出色——词云Word Cloud的制作方法(基于python,WordCloud,stylecloud)

e84d6708316941d49a79ddd4f7fe5b27.png​​​​​

938bc5a8bb454a41bfe0d4185da845dc.jpeg​​​​​

0a4256d5e96d4624bdca36433237080b.png​​​​​

 python Format()函数的用法___实例详解(一)(全,例多)___各种格式化替换,format对齐打印

 用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心)

python爱心源代码集锦(18款)

dc8796ddccbf4aec98ac5d3e09001348.jpeg​​​​​

0f09e73712d149ff90f0048a096596c6.png​​​​​

40e8b4631e2b486bab2a4ebb5bc9f410.png​​​​​

 Python中Print()函数的用法___实例详解(全,例多)

 Python函数方法实例详解全集(更新中...)

 《 Python List 列表全实例详解系列(一)》__系列总目录、列表概念

09e08f86f127431cbfdfe395aa2f8bc9.png​​​​​

6d64357a42714dab844bf17483d817c0.png​​​​​

用代码过中秋,python海龟月饼你要不要尝一口?

 python练习题目录

03ed644f9b1d411ba41c59e0a5bdcc61.png​​​​​

daecd7067e7c45abb875fc7a1a469f23.png​​​​​

17b403c4307c4141b8544d02f95ea06c.png​​​​​

草莓熊python turtle绘图(风车版)附源代码

 ​草莓熊python turtle绘图代码(玫瑰花版)附源代码

 ​草莓熊python绘图(春节版,圣诞倒数雪花版)附源代码

4d9032c9cdf54f5f9193e45e4532898c.png​​​​​

c5feeb25880d49c085b808bf4e041c86.png​​​​​

 巴斯光年python turtle绘图__附源代码

皮卡丘python turtle海龟绘图(电力球版)附源代码

80007dbf51944725bf9cf4cfc75c5a13.png​​​​​

1ab685d264ed4ae5b510dc7fbd0d1e55.jpeg​​​​​

1750390dd9da4b39938a23ab447c6fb6.jpeg​​​​​

 Node.js (v19.1.0npm 8.19.3) vue.js安装配置教程(超详细)

 色彩颜色对照表(一)(16进制、RGB、CMYK、HSV、中英文名)

2023年4月多家权威机构____编程语言排行榜__薪酬状况

aa17177aec9b4e5eb19b5d9675302de8.png​​​​​​

38266b5036414624875447abd5311e4d.png​​​​​

6824ba7870344be68efb5c5f4e1dbbcf.png​​​​​

 手机屏幕坏了____怎么把里面的资料导出(18种方法)

【CSDN云IDE】个人使用体验和建议(含超详细操作教程)(python、webGL方向)

 查看jdk安装路径,在windows上实现多个java jdk的共存解决办法,安装java19后终端乱码的解决

1408dd16a76947e4a7eb3c54cd570d95.png​​​​​

vue3 项目搭建教程(基于create-vue,vite,Vite + Vue)

fea225cb9ec14b60b2d1b797dd8278a2.png​​​​​

bba02a1c4617422c9fbccbf5325850d9.png​​​​​

37d6aa3e03e241fa8db72ccdfb8f716b.png​​​​​

2023年春节祝福第二弹——送你一只守护兔,让它温暖每一个你【html5 css3】画会动的小兔子,炫酷充电,字体特

 别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(4套)

SVG实例详解系列(一)(svg概述、位图和矢量图区别(图解)、SVG应用实例)

5d409c8f397a45c986ca2af7b7e725c9.png​​​​​

6176c4061c72430eb100750af6fc4d0e.png​​​​​

1f53fb9c6e8b4482813326affe6a82ff.png​​​​​

【程序人生】卡塔尔世界杯元素python海龟绘图(附源代码),世界杯主题前端特效5个(附源码)HTML+CSS+svg绘制精美彩色闪灯圣诞树,HTML+CSS+Js实时新年时间倒数倒计时(附源代码)

 2023春节祝福系列第一弹(上)(放飞祈福孔明灯,祝福大家身体健康)(附完整源代码及资源免费下载)

fffa2098008b4dc68c00a172f67c538d.png​​​​​

5218ac5338014f389c21bdf1bfa1c599.png​​​​​

c6374d75c29942f2aa577ce9c5c2e12b.png​​​​​

 tomcat11、tomcat10 安装配置(Windows环境)(详细图文)

 Tomcat端口配置(详细)

 Tomcat 启动闪退问题解决集(八大类详细)


http://lihuaxi.xjx100.cn/news/1908016.html

相关文章

UI自动化Selenium 元素定位之Xpath

一、元素定位方式 selenium中定位元素,通常有几种方式: 1、通过id定位:By.ID 2、通过Name定位:By.Name 3、通过元素其他属性定位,如class、type、text文本。。。。。。等等,如果要用属性定位那就需要使…

华为配置BGP的基本示例

组网需求 如图1所示,需要在所有Switch间运行BGP协议,SwitchA、SwitchB之间建立EBGP连接,SwitchB、SwitchC和SwitchD之间建立IBGP全连接。 说明 请确保该场景下互联接口的STP处于未使能状态。因为在使能STP的环形网络中,如果用交…

最简单的GPT的Transformer架构

1、网络结构主要模块介绍 (1)输入嵌入层(Input Embedding) 输入(Inputs):这是模型的输入部分,通常是一串单词或符号的序列。 输入嵌入(Input Embedding)&am…

网络基础篇【网线的制作,OSI七层模型,集线器和交换机的介绍,路由器的介绍与设置】

目录 一、网线制作 1.1 工具介绍 1.1.1网线 1.1.2 网线钳 1.1.3 水晶头 1.1.4 网线测试仪 二、OSI七层模型 2.1 简介 2.2 OSI模型层次介绍 2.2.1 结构图 2.2.2 数据传输过程 2.3 相关网站 二、集线器 2.1 介绍 2.2 适用场景 三、交换机 3.1 介绍 3.2 适用场景…

【C++】开源:libmodbus通信协议库配置使用

😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍libmodbus通信协议库配置使用。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下&#x…

用radis扩展websockets服务

Redis可以存储会话数据,这使得不同的服务器可以共享WebSocket连接的状态。这意味着如果用户连接到服务器 A 然后重新连接到服务器 B,服务器 B 将知道现有连接。 此外,Redis 提供发布/订阅功能,使其成为向所有连接的客户端广播消息…

Android apk完整性检测的实现思路和实现过程全记录

文章目录 需求和背景实现安全管理类 相关工具类 需求和背景 行业相关,对安全性较高的程序一般都需要添加完整性检测的功能,以防止程序被篡改,从而导致安全问题的发生。 相关的支付应用项目今年也做了好几个,这些程序也都已通过了…

springboot使用poi-tl动态填充word模板

第一、导入依赖 <!-- docx 数据填充生成 doc文件 这个是主要 --> <!-- POI --> <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>4.1.2</version> </dependency> <depen…