弹性伸缩 AS

🍁博主简介
        🏅云计算领域优质创作者
        🏅2022年CSDN新星计划python赛道第一名

        🏅2022年CSDN原力计划优质作者
        🏅阿里云ACE认证高级工程师
        🏅阿里云开发者社区专家博主

💊交流社区:CSDN云计算交流社区欢迎您的加入!

目录

与传统模式对比

AS 的工作方式

AS 的基本概念

1. 伸缩组

2. 启动配置

3. 伸缩策略

4. 冷却时间

产品优势

应用场景

1、提前部署扩缩容

2、低成本应对业务浪涌

3、自动替换不健康 CVM

使用限制 

访问管理

1、概述

2、相关概念

3、弹性伸缩预设策略介绍

4、可授权的资源类型

5、弹性伸缩访问管理策略示例


 

弹性伸缩 AS(Auto Scaling)可以根据你的业务需求和策略,自动调整 CVM 计算资源,确保你拥有适量的 CVM 实例来处理你的应用程序负载。对于您的 Web 服务而言,智能的扩展和收缩是成本控制和资源管理的重要组成部分。Web 应用程序开始获得更多请求流量时,你将添加更多的服务器来应对额外负载。同时,当 Web 应用程序的流量开始减少时,你将终止未充分利用的服务器。

如果使用 AS 进行容量调整,你只需事先设置好扩容条件及缩容条件。AS 会在达到条件时自动增加使用的服务器数量以维护性能;在需求下降时,AS 会根据你的缩容条件减少服务器数量,最大限度地帮助你降低成本。

如下图对比所示,通过使用弹性伸缩 AS,你的集群可以永远保留恰到好处的资源量,并处于健康状态。你将告别传统模式下的多种烦恼:

业务突增或 CC 攻击导致机器数量不足,以致你的服务无响应。

按高峰访问量预估资源,而平时访问量很少达到高峰,造成投入资源浪费。

人工守护及频繁处理容量告警,需要多次手动变更。

与传统模式对比

传统模式下的集群维护:

采用AS后的效果:

AS 的工作方式

在常见的 Web 应用服务中,您的集群通常运行应用程序的多个副本来满足客户流量。例如接入层的前端服务器集群、逻辑层的应用服务器集群、后端的缓存服务器集群。每个实例都可以处理客户请求。

这些类似或相同的实例,数量通常是可调节的。您可以将这些相同或类似的机器归到一个伸缩组中管理起来:

您可以指定每个伸缩组中最少的实例数量,AS 会确保伸缩组中的实例永远不会低于这个数量;

您可以指定每个伸缩组中最大的实例数量,AS 会确保伸缩组中的实例永远不会高于这个数量;

您可以指定伸缩策略,则 AS 会在应用程序需求增加或降低时启动或终止实例。伸缩策略有两类: a. 告警触发策略:根据指定条件动态扩展(例如:伸缩组的机器的CPU 利用率超过60%时扩展) b. 定时伸缩策略:根据指定的时间扩展(例如:每晚21:00扩展)

设置完策略后,您还可以设置伸缩活动通知。AS 会在发生伸缩活动时通过邮件、短信、站内信方式告知您。您不需要时刻关注您的业务请求量变化,只需要留意 AS 的通知即可。

您也可以在任何时候一键指定所需要的机器数量,或者把已有的机器加入到伸缩组中一起管理。

AS 的基本概念

弹性伸缩产品有以下基本概念:

1. 伸缩组

伸缩组是遵循相同规则、面向同一场景的云服务器实例的集合。伸缩组定义了组内 CVM 实例数的最大值、最小值及其相关联的负载均衡实例等属性。

2. 启动配置

启动配置是自动创建云服务器的模板,其中包括镜像ID、云服务器实例类型、系统盘及数据盘类型和容量、密钥对、安全组等。

创建伸缩组时必须指定启动配置,启动配置一经创建后其属性将不能编辑。

3. 伸缩策略

即执行伸缩动作的条件。触发条件可以是时间或腾讯云可观测平台的报警,动作可以是移出或加入 CVM。 伸缩策略有以下两种:

定时伸缩策略 到达某个固定时间点,自动增加或减少 CVM 实例,支持周期性重复。

告警伸缩 基于腾讯云可观测平台指标(如CPU、内存、网络流量),自动增加或减少 CVM 实例。

4. 冷却时间

冷却时间是指在同一个伸缩组内,一个伸缩活动(添加或移出 CVM 实例)执行完成后的一段锁定时间。在这段时间内,该伸缩组不执行伸缩活动。冷却时间可指定范围为 0 - 999999(秒)。

产品优势

优势

使用弹性伸缩 AS

不使用弹性伸缩 AS

自动伸缩实例,无需人工干预

弹性伸缩根据业务负载情况动态实时自动创建和释放CVM实例,帮助您以最合适的实例数量应对业务情况,全程无需人工干预,为您免去人工部署负担。

例如,您可以设置一个伸缩策略,当 CPU 利用率较高时,就向伸缩组添加新的 CVM 实例,新增的 CVM 实例秒级计费;同样,您也可以设置一个策略,在 CPU 使用率较低时从伸缩组删除实例;如果您的负载变化情况是可以预知的,则可以设置定时任务,对您的扩展活动进行规划。

新增实例还可直接关联已有负载均衡 CLB,以使伸缩组新增的实例承担分发流量,提高服务可用性;您还可以向管理员发送告警,帮助您及时关注异常情况。

繁琐的手动操作

手动创建、销毁资源,需手动配置负载均衡。

手动操作容易出错,影响业务。

适量伸缩实例,节省成本

弹性伸缩帮助您以最合适的实例数量应对业务情况,当业务需求增加时,为您无缝地自动增加适量 CVM 实例,当业务需求下降时,为您自动削减不需要的 CVM 实例,提高设备利用率,为您节省部署和实例成本。

资源闲置带来浪费

需预留过量的 CVM 以防资源不足影响业务。

系统自动检测,及时容错

弹性伸缩自动检测实例的健康状况,一旦发现异常,即自动复制出健康的实例,以替换状态异常的实例,确保您的应用程序获得预期的计算容量,为您的业务保驾护航。

无法及时容错

通常在发现业务中断后才能处理异常实例,影响业务可用性。

应用场景

1、提前部署扩缩容

用户明确何时需要扩缩容,则可提前设置 Auto Scaling 定时策略。到相应时间时,系统将自动添加或减少 CVM 实例,无需人工等待。

2、低成本应对业务浪涌

当客户面临访问峰值,需要提前准备服务器,预防CPU增长造成的服务器压力过大;待压力过去后再根据实际负载缩减服务器。客户可提前设置 Auto Scaling 监控策略,系统将根据设定好的业务监控指标自动判定是否需要 CVM 平行扩展。如果监控指标达到阈值,则实时自动增加或减少 CVM 实例,并自动完成负载均衡配置。既节约了成本,也无需客户时刻为手动扩容做准备。

3、自动替换不健康 CVM

为避免不健康的云服务器继续运行对业务造成影响,用户需要时刻关注系统中 CVM 的运行情况,并随时准备处理。使用 Auto Scaling,系统将定时对 CVM 进行健康检查,若扫描出运行异常的 CVM 实例,则自动平行扩展一台实例替换异常实例。该操作记录将被保留供用户查看。

使用限制 

目前弹性伸缩已在除边缘节点地域外的所有地域上线,使用限制如下表:

限制类型

说明

一个用户在一个地域下

最多可创建50个启动配置。

最多可创建50个伸缩组。

最多能创建的 CVM 实例数量受用户 CVM 配额影响,详情请参见 购买按量计费云服务器实例限制 及 竞价实例配额限制。

一个伸缩组下

只能对应1个启动配置。

最多能弹性伸缩2000台 CVM 实例。

最多可创建100条伸缩策略,且最多可创建10个定时任务。

最多创建5个通知。

最多创建10个生命周期挂钩。

其他

伸缩组的子机数量不能超过私有网络 VPC 子网能提供的 IP 上限。

弹性伸缩目前不支持纵向扩展,即无法自动升降 CVM 的 CPU、内存和带宽。

弹性伸缩、启动配置均为地域概念,仅能在同一地域下启动或销毁 CVM 实例。

伸缩组关联的负载均衡实例(跨地域负载均衡实例则为其后端实例私有网络 VPC)必须与伸缩组在同一个网络环境(私有网络 VPC 或同一地域的基础网络)中。

访问管理

1、概述

访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用 CAM 创建子用户、用户组和角色,并通过策略控制其访问范围。CAM 支持用户和角色 SSO 能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。

您最初创建的腾讯云主账号,拥有整个账号全部腾讯云服务和资源的完全访问权限,建议您保护好主账号的凭证信息,日常使用子用户或角色进行访问,并开启多因素校验和定时轮换密钥。

当您在使用 CAM 时,可以将策略与一个用户或一组用户关联起来进行权限控制。

弹性伸缩已接入 CAM,您可以使用 CAM 对弹性伸缩服务的相关资源进行权限控制。

2、相关概念

CAM 用户

CAM 用户 是您在腾讯云中创建的一个实体,每一个 CAM 用户仅同一个腾讯云账户关联。您注册的腾讯云账号身份为主账号,您可以通过 用户管理 来创建拥有不同权限的子账号进行协作。子账号的类型分为 子用户、协作者 以及 消息接收人。

策略

策略 是用于定义和描述一条或多条权限的语法规范,腾讯云的策略类型分为预设策略和自定义策略。

预设策略: 由腾讯云创建和管理的策略,是被用户高频使用的一些常见权限集合,如资源全读写权限等。预设策略操作对象范围广,操作粒度粗,且为系统预设,不可被用户编辑。

自定义策略:由用户创建的策略,允许进行细粒度的权限划分。例如,为子账号关联一条使用策略,使其有权管理弹性伸缩的伸缩组,而无权管理云数据库实例。

资源

资源(resource) 是策略的元素,描述一个或多个操作对象,例如弹性伸缩的启动配置和伸缩组。

3、弹性伸缩预设策略介绍

预设策略名

授权范围描述

QcloudASFullAccess

关联后,获得弹性伸缩(AS)全读写访问权限

QcloudASReadOnlyAccess

关联后,获得弹性伸缩(AS)只读访问权限

4、可授权的资源类型

资源级权限指的是能够指定用户对哪些资源具有执行操作的能力。例如,您可以授权用户拥有广州地域伸缩组的操作权限。 在访问管理中对弹性伸缩可授权的资源类型如下:

资源类型

授权策略中的资源描述方法

启动配置相关

qcs::as:$region:$account:launch-configuration/*

伸缩组相关

qcs::as:$region:$account:auto-scaling-group/*

下表列出弹性伸缩支持资源级权限操作的各个 API,以及每个操作支持的资源路径。 设置资源路径时,您需要将 $region$account$LaunchConfigurationId$AutoScalingGroupId 等变量参数修改为您实际的参数信息,同时您也可以在路径中使用 * 通配符。 访问管理策略中的 region、action、account、resource 等相关概念请参见 资源描述方式。

API 接口:action

资源路径:resource

CreateLaunchConfiguration

qcs::as:$region:$account:launch-configuration/*

DeleteLaunchConfiguration

qcs::as:$region:$account:launch-configuration/$LaunchConfigurationId

DescribeLaunchConfigurations

qcs::as:$region:$account:launch-configuration/*

qcs::as:$region:$account:launch-configuration/$LaunchConfigurationId

ModifyLaunchConfigurationAttributes

qcs::as:$region:$account:launch-configuration/$LaunchConfigurationId

UpgradeLaunchConfiguration

qcs::as:$region:$account:launch-configuration/$LaunchConfigurationId

CreateAutoScalingGroup

qcs::as:$region:$account:auto-scaling-group/*

CreateAutoScalingGroupFromInstance

qcs::as:$region:$account:auto-scaling-group/*

DeleteAutoScalingGroup

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DescribeAutoScalingGroups

qcs::as:$region:$account:auto-scaling-group/*

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

ModifyAutoScalingGroup

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

ModifyLoadBalancers

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

EnableAutoScalingGroup

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DisableAutoScalingGroup

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

ModifyDesiredCapacity

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DescribeAutoScalingActivities

qcs::as:$region:$account:auto-scaling-group/*

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

AttachInstances

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DetachInstances

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

RemoveInstances

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DescribeAutoScalingInstances

qcs::as:$region:$account:auto-scaling-group/*

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

SetInstancesProtection

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

CreateScheduledAction

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DeleteScheduledAction

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DescribeScheduledActions

qcs::as:$region:$account:auto-scaling-group/*

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

ModifyScheduledAction

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

CreateScalingPolicy

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DeleteScalingPolicy

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DescribeScalingPolicies

qcs::as:$region:$account:auto-scaling-group/*

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

ModifyScalingPolicy

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

ExecuteScalingPolicy

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

CreateNotificationConfiguration

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DeleteNotificationConfiguration

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DescribeNotificationConfigurations

qcs::as:$region:$account:auto-scaling-group/*

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

ModifyNotificationConfiguration

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

CreateLifecycleHook

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DeleteLifecycleHook

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DescribeLifecycleHooks

qcs::as:$region:$account:auto-scaling-group/*

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

UpgradeLifecycleHook

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

CompleteLifecycleAction

qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId

DescribeAccountLimits

*

5、弹性伸缩访问管理策略示例

下面以具体的示例展示如何通过访问管理对弹性伸缩资源进行权限控制:

创建策略:广州地域允许对所有伸缩组的访问权限。

# 其中$account需要替换成账号信息

{
"version": "2.0",
"statement": [
{
"effect": "allow",
"action": [
"name/as:*"
],
"resource": [
"qcs::as:ap-guangzhou:$account:auto-scaling-group/*"
             ]
         }
    ]
}

创建策略:广州地域禁止对某个伸缩组的访问权限。

# 其中$account需要替换成账号信息, $AutoScalingGroupId 需要替换成相应的AutoScalingGroupId
{
"version": "2.0",
"statement": [
{
"effect": "deny",
"action": [
"name/as:*"
],
"resource": [
"qcs::as:ap-guangzhou:$account:auto-scaling-group/$AutoScalingGroupId"
            ]
        }
    ]
}

创建策略:对全部地域所有读接口拥有访问权限。

{
"version": "2.0",
"statement": [
{
"effect": "allow",
"action": [
"name/as:Describe*"
],
"resource": [
"*"
            ]
        }
    ]
}

   👑👑👑结束语👑👑👑

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript进阶5之垃圾回收(计算机组成、解释与编译、JavaScript引擎、垃圾回收、内存管理)、运行机制(浏览器进程分类、浏览器事件循环)

垃圾回收&运行机制 垃圾回收计算机组成解释与编译JavaScript引擎V8引擎 垃圾回收引用计数法标记清除(mark-sweep)算法 内存管理新生代 运行机制浏览器进程分类:浏览器事件循环宏任务微任务整体流程浏览器事件循环案例一案例二 垃圾回收 …

成都克鲁斯机器人电路板故障维修攻略,快来了解一下!

一、克鲁斯机器人电路板维修步骤 断开电源:在进行电路维修前,务必断开机器人的电源,确保安全。 拆卸电路板:根据电路图或维修手册,小心拆卸故障电路板。注意记录拆卸过程中的细节,以便后续重新安装。 更换损…

Linux中APP读取按键的4种方法

查询方式 驱动程序中构造、注册一个file_operations结构体,里面有对应的open,read函数。 APP 调用 open 时,导致驱动中对应的 open 函数被调用,在里面配置 GPIO 为输入引脚。APP 调用 read 时,导致驱动中对应的 read 函数被调用&a…

一个金融长期主义案例:金融壹账通的财务减亏与生产力创新之路

产业变革正在进入新一轮竞速期,社会对新质生产力的需求越来越迫切。在此背景下,金融业也正在坚定重塑自我、向外赋能的决心。 在微观的企业角度上,改变也正悄然发生。3月18日,在美港股双重上市的金融壹账通公布2023年年度业绩报告…

正则表达式不会用?一篇教你快速搞懂 !

目录 前言一、基础字符二、一系列常用的字符;1、一些元字符(Meta-characters) 三、一些高级概念1、贪婪与懒惰匹配2、两个实例加深理解1.颜色值的匹配:RGBS值2.ipv4 地址匹配 四、正则表达式常用语法**1.Flags(标志符或…

测试开发工程师(QA)职业到底需要干些什么?part5:性能测试工程师QA

工作职责 性能测试工程师(Performance Testing Engineer)是负责评估和优化软件、应用程序或系统在不同负载和压力条件下的性能的专业人员。他们的工作职责包括以下几个方面: 性能测试计划:性能测试工程师与开发团队、产品团队和系…

工作的第二天

昨天的进度 写今天思路如何做评论表的增删该查评论表的增加 选择用户和商品 弹出框出现了问题 检查代码 结构没有问题 定义变量也没有问题 控制太中也没有报错信息 问题解决了 出现的问题在哪里定义的变量都有问题应该现在 setup 上面 定义一个 变量 const ref ref(fals…

Autosar-CanNm、Nm配置详解(免费)-2

3.5NM配置项 3.5.1NmGlobalConstants NmNumberOfChannels Nm管理几个Can通信,通信我们只有智能进入网需要网络管理,因此一般这里只需要填1。 NmNumberOfClusters 如果NM需要与几个CanNm进行协同处理的话,那需要把这些配置为Cluster,即组…

让 AI 帮你写代码,开发提效神器来了

如今,大量程序员已经习惯在 AI 辅助下进行编程。据调研,AI 编码工具将程序员工作效率提升 50% 以上。 通义灵码是目前国内最受开发者喜爱的 AI 编码助手,可以提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码优化、注释生成、…

设置http响应报文

一、总结: (1)设置响应状态码: response.statusCode (2)设置响应状态描述: response.statusMessage() 使用的极少 (3)设置响应头信息: response.setHeader(头值,头名) (4)设置响应体: response…

一文详解CDGA证书含金量,非常详细!

在信息技术飞速发展的今天,数据已成为企业宝贵的资产。正确地管理和治理这些数据,对于企业实现数据价值最大化、保障数据安全和合规至关重要。这也使得数据治理领域的专业人才需求持续增长。CDGA(Certified Data Governance Architect&#x…

【并发】第三篇 Hash冲突的解决方法

导航 一. 简介二. 解决Hash冲突的方法1. 开放地址法1.1 线性探测再散列1.2 二次探测再散列1.3 伪随机探测再散列2. 链地址法3. 再哈希法一. 简介 哈希(hash)是将任意长度的输入数据转化为固定长度的输出数据的算法。哈希函数会将输入数据压缩并映射为一个固定长度的哈希值,…

Trello国内替代工具有哪些?分享5款

盘点5款类似Trello的本地部署项目管理工具:1.PingCode;2.Worktile;3.Teambition;4.redmine;5.TAIga.io。 Trello是一款杰出的协作与工作管理应用,专为追踪团队项目、凸显当前活动任务、分配责任人&#xff…

面试题 之 webpack

1.说说你对webpack理解?解决什么问题? Webpack 是实现前端项目的模块化,用于现代 JavaScript 应用程序的静态模块打包工具,被webpack 直接引用的资源打包进 bunde.js的资源,当webpack 处理应用程序时,它会在内部构建一…

Charles for Mac 强大的网络调试工具

Charles for Mac是一款功能强大的网络调试工具,可以帮助开发人员和测试人员更轻松地进行网络通信测试和调试。以下是一些Charles for Mac的主要特点: 软件下载:Charles for Mac 4.6.6注册激活版 流量截获:Charles可以截获和分析通…

CANalyzer使用_04 使用CAN报文发送数据

本文手把手介绍使用CAN来发送数据。分为创建工程,创建CAN报文,运行效果,参考文献。 1 创建工程 双击“CANalyzer->单击“I accept”->等一会等软件打开后,单击“File”->单击"New"->双击"CAN 500kBa…

2G-3G-4G-5G 语音方案

1.2G、3G时代,语音业务采用CS(Circuited Switched,电路交换)技术,即手机在通话前需在网络中建立一条独占资源的线路,直到通话结束才拆除。这种古老的技术存在耗资源、组网复杂、效率低等缺点。 2. 进入4…

每日学习笔记:C++ STL迭代器特性(Iterator Trait)、自定义迭代器

迭代器特性(Iterator Trait) 注意不同的迭代器种类类型之前有继承关系: 为迭代器编写泛型函数 自定义迭代器 实例

【Functional Affordances】机器人manipulation

文章目录 1. Robo-ABC: Affordance Generalization Beyond Categories via Semantic Correspondence for Robot Manipulation摘要和结论引言相关工作模型框架实验 2. Click to Grasp: Zero-Shot Precise Manipulation via Visual Diffusion Descriptors摘要和结论引言模型框架实…

电子商务营销中大数据分析的应用|大数据分析在B2C中的应用案例【抖音/京东/淘宝商品数据采集API接口的应用】

文章围绕对大数据分析在电子商务营销中的应用开展,研究了什么是大数据分析和电子商务的营销,以及对于电子商务的营销与大数据分析的结合目前是一个什么样的趋势,分析了大数据分析在电子商务营销中的作用,希望能帮助到大家。抖音/京…