云原生k8s的金箍棒

news2024/11/14 19:54:00

        如果云原生是我们喜欢的《西游记》中孙悟空,那Autoscaling就是云原生手中的金箍棒。想象一下,没有金箍棒的孙悟空,还能到处降妖伏魔么?还能成为斗战圣佛吗?

 Autoscaling

        根据需要随时动态扩缩容,有了它,k8s才犹如孙悟空从东海龙宫获得了金箍棒,实现变大变小自由。回想一下孙悟空,金箍棒变大变小不是随意变的,得孙悟空念念有词。接下来,我们就探究一下autoscaling的触发机制。

HPA的架构图

         HPA有两种机制:一种是默认的HPA机制,通过metrics api获取metrics Server里保存的metrics数据,数据来自kubelet返回的cpu/mem等metrics;另一种,就是通过custom metrics api获取来自promethus的业务监控metrics, 比如相应api的响应时间或RPS量。

        实现一个自动运行机制,计算机程序的世界里都少不了循环的参与。HPA也是其中的典范。简而言之,HPA是一个“检查,更新,再检查”的循环。

  1. HPA从metrics server获取metrics
  2. HPA根据从metrics server获得的metrics计算需要的实例副本数
  3. HPA更新对应的replica数目
  4. 重复此循环

HPA的客户化metrics

 

HPA的局限性

  1.  HPA不支持Damonset
  2. HPA的cpu/mem的门限设置得不合理,实例数没法及时扩容,导致系统出现拥塞,甚至出现系统雪崩现象
  3. 实例的cpu/mem的limit设置不合理,可能HPA的设置没有及时扩容, 实例内存超限,最终导致实例crash
  4. HPA的扩容机制,是基于整个pod的资源计算的,可能主容器的资源使用情况不能简单通过cpu/mem来衡量。 

HPA的实例

     各位看官们,网上例子一堆堆,各自众里寻她吧

References

The Guide To Kubernetes HPA by Example

Advanced HPA in Kubernetes

Horizontal Pod Autoscaling | Kubernetes

Kubernetes Horizontal Pod Autoscaler with Prometheus custom metrics

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/57487.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TsingHua:FPT: Improving Prompt Tuning Efficiency via Progressive Training

这篇文章我觉得做的也挺有意思的。 是在探究提示学习中渐进式的更新参数比一窝蜂的直接更新参数效果要佳。 开头 是从比较PT(prompt learning和fine tuning)开始的。为什么PT的收敛速度慢,训练效率低下? 因为PT中中可训练的参数…

[附源码]计算机毕业设计新冠疫苗接种预约系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

第15章 基数法则

第15章 基数法则 15.1 通过其他计数来计算当前计数 如何计算拥挤的房间里有多少人?你可以数人头,因为一个人就只有一个头。或者,也可以数耳朵,然后除以2。我们往往可以通过对其他事物计数进而计算当前计数。 最直截了当的通过查找一种事物…

Kotlin高仿微信-第34篇-支付-向商家付款(二维码)

Kotlin高仿微信-项目实践58篇详细讲解了各个功能点,包括:注册、登录、主页、单聊(文本、表情、语音、图片、小视频、视频通话、语音通话、红包、转账)、群聊、个人信息、朋友圈、支付服务、扫一扫、搜索好友、添加好友、开通VIP等众多功能。 Kotlin高仿…

这么简单,还不会使用java8 stream流的map()方法吗?

一、前言 在日常的开发工作中经常碰到要处理list中数据的问题,比如从数据库中查出了很多学生,由于一些原因需要在内存中找出这些学生中的所有姓名,或者把名为“王五”的语文成绩暂时修改为“100”,这些问题怎么处理呐&#xff0c…

初始C语言-1(数据类型、变量、常量、变量的作用域和生命周期、字符串+转义字符+注释)

目录 一、C语言 C语言主要运用于底层,也可以运用于上层软件(早期还没有其他的语言的时候,很多游戏就是C语言做的) C语言发展至今都是排行前三的计算机语言。 随着物联网,万物互联,以及嵌入式开发和单片机…

Java 面向对象的【三大特征】,你都掌握了吗

文章目录前言一、封装1.封装的概念2.访问修饰限定符3.初识 “ 包 ”4. static 成员static修饰成员变量static修饰成员方法static成员初始化二、继承1.为什么要继承2.继承的概念3.语法4.父类成员访问1.子类中访问父类的成员变量2.子类中访问父类的成员方法5. super 关键字6. 子类…

RabbitMQ之单机多实例部署

单机版安装前面介绍过了,不再介绍。 此处在单机版基础上 ,也就是一台Linux虚拟机上启动多个RabbitMQ实例,部署集群。 1、在单个Linux虚拟机上运行多个RabbitMQ实例: 多个RabbitMQ使用的端口号不能冲突多个RabbitMQ使用的磁盘存…

李宏毅《DLHLP》学习笔记6 - 语言模型

视频链接:https://www.youtube.com/watch?vdymfkWtVUdo&listPLJV_el3uVTsO07RpBYFsXg-bN5Lu0nhdG&index8&ab_channelHung-yiLee 课件链接:https://speech.ee.ntu.edu.tw/~tlkagk/courses/DLHLP20/ASR3.pdf 1. Language Model LM的作用是预…

嵌入式Linux 开发经验:注册一个 misc 设备

前言 之前买过好几本Linux 设备驱动的书,不过对设备驱动一知半解,什么叫设备,什么又叫驱动?最近工作需要,从源码级别深入的研究了一下 Linux 下的设备与驱动的概念,略有所收获 一般提起驱动开发&#xff0…

[附源码]Python计算机毕业设计Django基于Java的图书购物商城

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

visual stduio code 配置高效舒适web生产环境

与webstrom 之前写了一篇webstorm的配置,参考同学的建议,vscode可能使用的人更多,所以配置了一个vs来试用看看。 一直用不习惯的是全文搜索,还是更喜欢webstrom弹窗式的,还可以显示上下文。包括其他的配置&#xff0…

第二证券|小鹏持续萎靡,理想蔚来逆势反弹破月销记录

12月1日,多家造车新势力先后公布11月销量数据。跟着“银十”出售旺季热度淡去,新势力品牌销量也受轿车零售商场逐渐冷却影响出现整体下滑。接连稳居榜首的埃安、哪吒等品牌均出现4位数以上环比销量下滑。上月商场体现低迷的抱负与蔚来则逆势添加&#xf…

TensorFlow之文本分类算法-6

1 前言 2 收集数据 3 探索数据 4 选择模型 5 准备数据 6 模型-构建训练评估 构建输出层 构建n-gram模型 构建序列模型 GloVe(英文全称是Global Vectors for Word Representation)是一个全球化的英语语境的单词表示的向量集,其使用非…

新变化新营销 这些知识点你得 Get!(文末有 PPT 福利首次放送)

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 在刚刚结束的第 7 期火山引擎数智平台 VeDI「增长课堂」上,火山引擎数智平台 VeDI 零售行业解决方案、汽车行业解决方案团队,以及慢慢买平台…

LM2903VQPWRQ1比较器 LM73C0QDDCRQ1传感器的中文资料

1、LM2903-Q1双路差分比较器包含两个独立的电压比较器,这些比较器可在宽电压范围内由单电源供电运行。如果两个电源之间的电压差在2V至36V且VCC比输入共模电压至少高1.5V以上,那么它们也可以由双电源供电运行。电流消耗不受电源电压的影响。可将输出连接…

一文带你深入理解【Java基础】· Java集合(下)

写在前面 Hello大家好, 我是【麟-小白】,一位软件工程专业的学生,喜好计算机知识。希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正&#xff0…

Pikachu靶场全关攻略(超详细!)

一、靶场搭建 准备工具 phpstudy**pikachu靶场下载地址:**https://github.com/zhuifengshaonianhanlu/pikachu 搭建过程 将靶场文件夹放到phpstudy的www目录 进入pikach文件夹的inc目录,修改靶场配置文件config.inc.php,设置数据库账号密…

Ubuntu 安装 Zotero, 并导入原有数据库,然后同步账户

文章目录写在前面一、下载 Linux 下的 Zotero二、安装Zotero三、导入自己的数据库三、同步账户参考链接写在前面 发文时间:2022.12.03 自己的系统是Ubuntu20.04.5,Zotero 是 Zotero-6.0.18_linux-x86_64.tar.bz2 一、下载 Linux 下的 Zotero 直接登录…

魔兽世界开服教程——魔兽世界服务器架设全攻略---战网+Ladder排行版

需要用到的软件: 1. WAMP5 v1.7.exe (这个是为排行榜提供数据库服务,为Mysql数据库) 2.PvPGN-1.8.2-0-Win32-MySQL-5.0.45-BIN.zip PvPGN-1.8.2-0-Win32-SQLite-3.5.1-BIN.zip (这三个是战网主文件) pvpgn-…