可伸缩性概念

在查找缩放解决方案之前,需要了解什么是可伸缩性以及如何将其应用于Kubernetes应用程序。

在本单元中,我们将回顾一些可伸缩性概念。

可伸缩性描述了应用程序或系统通过向其添加更多资源来处理不断增加的工作的能力。

在我们的示例方案中,增加的工作量是客户请求数。可以通过两种方式表示添加的资源量:垂直可伸缩性和水平可伸缩性。

垂直可伸缩性或纵向扩展是指通过添加更多的物理资源(例如内存或CPU能力)来缩放系统。例如,如果公司网站消耗了太多的内存,你可以更新VM实例来包含更多内存,同时保持基础应用程序不变。

简而言之,垂直缩放是在保持应用程序数量不变的情况下增加VM大小。如果拥有需要大量计算能力的单体应用程序,但成本过高,无法分解成较小的部件,则此方法会非常有用。这些应用程序大多托管在VM中,而不是分布式系统。

尽管成本更易于管理,但非常大的VM可能会变得非常昂贵。增加更多计算能力的成本高于复制小型VM的成本。可以添加到单台VM的资源数量存在上限,这意味着达到上限后,最终必须复制VM。

水平可伸缩性或横向扩展是指通过复制应用程序并在应用程序实例之间均衡负载来缩放系统。

水平缩放对于分布式应用程序(例如在AKS中部署的应用程序)和无状态系统非常有用,因为可以在单台VM中使用同一应用程序启动多个容器。通过横向扩展,可以提取最多的资源,而只需为单台VM付费。

在我们的示例方案中,你的公司站点是无状态的。这意味着横向扩展是最佳操作过程。Kubernetes提供了称为HorizontalPodAutoscaler(HPA)的现成资源,它可支持你横向扩展部署。

在介绍HPA之前,我们先回顾一下如何手动缩放Kubernetes应用程序。

也可以通过kubectlscaledeploy/contoso-website--replicas命令来控制部署中的副本数。此命令动态更改部署中所需的副本数,并横向扩展或缩减应用程序。

HPA是本机Kubernetes1.8及更高版本资源,为群集中的Pod提供水平可伸缩性。它每30秒监视一次指标API,以确定所需副本计数是否有任何变化。如果所需副本计数与当前副本计数不同,则管理HPA对象的控制器管理器会横向扩展或缩减部署。

HPA与Kubernetes中的autoscalingAPI组配合运行。此API组包括两个版本:v1或v2。版本v1允许仅根据CPU指标缩放部署。版本v2则允许本机同时监视CPU和内存。在本模块中,我们使用v2版本。

每个HPA都附加到一个在HPA清单的spec.scaleTargetRef键中定义的缩放引用。此缩放引用必须有需要缩放的基础Pod,否则HPA无法正常工作,因为无法将缩放应用于无法缩放的对象(如DaemonSets)。

重要的是每个pod都在其规范中设置资源请求。如果没有此设置,HPA算法无法正确计算指标并确定资源利用率。可以通过部署清单中的spec.template.spec.containers[].resources密钥来设置此限制,如以下示例所示:

spec:template:spec:containers:-resources:requests:cpu:250mmemory:256Mlimits:cpu:500mmemory:512MHPA清单示例apiVersion:autoscaling/v2kind:HorizontalPodAutoscalermetadata:name:php-apachespec:scaleTargetRef:apiVersion:apps/v1kind:Deploymentname:php-apacheminReplicas:1maxReplicas:10metrics:-type:Resourceresource:name:cputarget:type:UtilizationaverageUtilization:50知识检查1.什么是横向缩放?

当复制应用程序以维持更大负载时。

向VM添加更多RAM。

将应用程序呈现为无状态,这样就可以在没有永久性存储的情况下使用它。

为什么务必要在绑定到HPA的pod上设置资源请求?

因为这是计算资源利用率的唯一方法。

虽然并不务必要这样做,但建议这样做,以免应用程序缺乏资源。

因此,HPA知道何时根据群集中的可用资源停止对资源进行缩放。

THE END
1.操作性有多重要操作性是利用可测量的、可观察的操作来表述的概念定义。 由于心理学使用的是一些来源于日常生活的词语,如智力、焦虑许多人对于这些术语的含义有着预设的想法,因此往往意识不到对这些术语进行操作性定义的必要性。心理学和所有其他科学门类一样,也需要对其术语进行操作性定义。可是,人们常常要求心理学家回答本质主义的问https://www.jianshu.com/p/9d1dc9afc399
2.可操作性是什么意思理想股票技术论坛可操作性是指某个概念、方法或系统在实际应用中能否被有效地运用和操作的程度,涉及到具体操作的可行性和便利性。 ,理想股票技术论坛https://www.55188.com/tag-7318844.html
3.什么叫可操作性?可操作性的意思是什么?可操作性的意思是什么? 操作性定义指根据可观察、可测量、可操作的特征来界定变量的含义,即从具体的行为、特征、指标上对变量的操作进行描述,将抽象的概念转换成可观测、可检验的项目。 操作性定义是研究变量或有关概念与实际观察或活动之间的桥梁。将研究变量的抽象化形式转变为可观察、测量和操作的具体形式。https://henan.china.com/m/news/ms/2023/0427/2530432730.html
4.数据可操作性是什么意思应该怎么翻译科学技术名词规范用词数据可操作性 英文翻译data manipulability 名词定义对数据进行分类、归并、排序、存取、检索和输入、输出等操作的程度。 所属学科地理学>地理信息系统 名词审定地理学名词审定委员会 见载刊物《地理学名词(第二版)》 科学出版社 公布时间2006年 https://mkeji.911cha.com/N3JjeQ==.html
5.可操作性什么意思可操作性什么意思 凌鼎圣风 2022-03-25 14:00:04 可操作性的意思是可以按照一定的规范和要领操纵动作,即“可行性”,是指对过程、设计、程序或计划能否在所要求的时间范围内成功完成的确定,确保生产作业计划的执行。 例句: 1、整体仿真系统基本达到了实时性、逼真性和可操作性的要求。https://edu.iask.sina.com.cn/bdjx/6hY1TYwlPZY.html
6.操作性定义(OperationalDefinition)判断一个操作性定义是否具有较好的操作性,可将这个定义向第三者描述,如果他表示理解这个变量的含义,并知道该如何去操纵、测量,那么这个定义往往是个比较好的、具体可行的操作性定义。在实际研究中,有些内容本身很难客观地观测,很难操作,我们往往只需对变量或概念追问一个“什么”的问题,便可判断这个变量或概念的可https://blog.csdn.net/a502367897/article/details/79029800
7.什么是工业机器人的准确性和可重复性?工业机器人具有许多度量或可测量的特征,这将直接影响机器人在执行任务期间的有效性。主要的可测量特性是可重复性和准确性。粗略地说,机器人的可重复性可以定义为重复执行同一任务的能力。另一方面,准确性是所请求任务与所获得任务(即机器人实际完成的任务)之间的差(即错误)。在机器人技术中,当谈到可重复性和准确性https://zhuanlan.zhihu.com/p/154275173
8.可操作性的翻译是:Operability中文翻译英文意思,翻译英语可操作性 青云英语翻译 请在下面的文本框内输入文字,然后点击开始翻译按钮进行翻译,如果您看不到结果,请重新翻译! 翻译结果1翻译结果2翻译结果3翻译结果4翻译结果5 翻译结果1复制译文编辑译文朗读译文返回顶部 Operability 翻译结果2复制译文编辑译文朗读译文返回顶部http://eyu.zaixian-fanyi.com/fan_yi_8668352
9.环保科普危废鉴别危废管理危废处置等相关内容的100条危废No.75问:产废企业签订处置协议时应注意什么? 答:首先,产废单位应当对处置单位的“业务员”的真实性,可与处置单位进行核实并通过征信app查询人员是否为失信人员;第二,可通过网络搜索该处置单位是否有环境违法历史以及日常危险废物规范化检查情况;第三,省生态环境厅门户网站下载浙江省危险废物经营单位名单,查看产生的废https://sthjj.pds.gov.cn/contents/11447/286652.html
10.柔性制造是什么意思?什么叫柔性制造系统?柔性生产线的特点什么叫柔性制造系统?柔性生产线的特点 描述 柔性制造是一种新型的生产制造模式,其核心思想是灵活性。从生产计划、生产流程到产品设计及制造,柔性制造都强调灵活性和适应性,以应对市场变化和顾客需求的时效性、质量性、成本性等各方面的要求。柔性制造是工业领域发展的趋势,它可以有效提高企业的生产效率和产品竞争力。https://m.elecfans.com/article/2226842.html
11.ios是什么意思?ios系统的优缺点分析说到ios,网络中出现的频率不可谓不高,大家脑子出现的基本都是苹果自主研发ios系统和它的老对头安卓系统,还有很多人不知道ios,下面带大家来了解一下ios是什么意思,顺便了解一下ios系统的优缺点! 一、ios是什么意思 1、ios是由苹果公司开发的移动操作系统。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,https://www.hqew.com/tech/news/2075374.html
12.java哪些操作是原子性的java中的原子性操作原子是最小单元、不可再分的意思。原子性是指某个操作在获取CPU时间时,要么就给它足够时间,让这个操作执行完,要么就不执行这个操作,执行时不能出现上下文切换(把CPU时间从一个线程分配到另一个线程)。 Java中对变量的读取和赋值都是原子操作,但long、double类型除外,只有使用volatile修饰之后long、double类型的读取https://blog.51cto.com/u_16099356/7171476
13.用大白话说说MLF和逆回购操作是什么?明明没看到说利率下降,怎么都8月15日,央行突然宣布,为维护银行体系流动性合理充裕,开展4000亿元MLF操作和20亿元公开市场逆回购操作。最大的亮点是,MLF操作和公开市场逆回购操作的中标利率均下降10个基点。 这个消息一出,市场纷纷说“央行缩量降息”啦,看着是很热闹的样子,但是可能对于新手投资者朋友来说,更想问一句,MLF和逆回购操作这都是什么https://new.qq.com/omn/20220817/20220817A0335N00.html