【云服务器 ECS 实战】一文掌握弹性伸缩服务原理及配置方法

news2024/11/17 9:24:56

在这里插入图片描述

    • 1. 弹性伸缩概述
    • 2. 实现模式
    • 3. 基于 GRE 实现 VPC 的互联
    • 4. 弹性伸缩服务的配置使用
      • 4.1 创建伸缩组
      • 4.2 伸缩配置
      • 4.3 创建伸缩规则


1. 弹性伸缩概述

弹性伸缩(Auto Scaling)就是自动为我们调整弹性计算资源大小,以满足业务需求的变化,是一种根据业务需求和策略自动调整计算能力的服务。简单可以理解为它会根据服务器使用情况,自动的增减服务器的实例数量。

在阿里云服务器 ECS 中弹性伸缩是这样实现的。比如在一个负载均衡中挂载了三台 ECS 服务,当因为用户访问量大等状况导致云服务资源不够用的时候,云监控会自动感知(可通过 CPU 的使用率等指标判断),并触发事件来通知弹性伸缩服务根据配置规则来自动添加资源,反之也是如此。通过这样的原理以实现资源的自动化扩容与收缩。自动化的资源调配 就是弹性伸缩的最大优势。

在这里插入图片描述
此外,弹性伸缩还可以实现资源的自动故障替换。当云监控发现其中一台 ECS 服务器发生故障或者不可用时,就会从资源池中拿一台 ECS 过来进行替换。

在应用弹性伸缩服务的时候,我们应避免以下几点错误认知

  • 弹性扩容一定能解决我们整体的性能瓶颈;需找到问题根本所在进而针对性解决才行。
  • 弹性伸缩免费;弹性伸缩服务是免费的,但通过弹性伸缩自动创建或者手工加入的 ECS 实例需按照相关实例类型进行付费。

2. 实现模式

弹性伸缩服务的实现模式有以下几种:

模式含义
定时模式由我们自定义自动伸缩发生的时间与频率
动态模式基于云监控性能指标(如CPU利用率)自动增加或减 ECS 实例
固定数量模式通过设置最小实例数,即健康运行的 ECS 实例最小数量,以保证可用性
自定义模式通过 API 调用自有监控系统,可执行手工伸缩、手工执行伸缩规则、手工添加或移出既有 ECS 实例
健康模式如 ECS 实例为非 Running 状态,弹性伸缩将自动移出或释放不健康的 ECS 实例
多模并行模式以上几种模式结合配置使用

3. 基于 GRE 实现 VPC 的互联

GRE(Generic Routing Encapsulation,通用路由封装)协议,是指把两个不同的 VPC 网络通过建立一条虚拟隧道的方式连接到一起。

假设在两个不同的地域各有一个 VPC 网络,每个 VPC 中均包含三个 ECS 实例(主机),其中一个实例具有公网 IP。当我们想要让这两个 VPC 网络中的某 ECS 实例可以互相访问,就需要设置 GRE 通道,将具有公网 IP 的主机作为跳板建立隧道来实现连接。

在这里插入图片描述
可以看到,想要通过 GRE 来实现互联的 VPC 网络中必须有一台主机是具备公网 IP 的。

4. 弹性伸缩服务的配置使用

4.1 创建伸缩组

回到阿里云服务器控制台,点击左侧菜单栏的“弹性伸缩”进入弹性伸缩控制台;

在这里插入图片描述
弹性伸缩的快速配置分为三部,“创建伸缩组” --> “创建伸缩规则” --> “完成并启用”;

在这里插入图片描述
伸缩组的创建不必多说,当我们选择实例来源是已有实例时,该实例本身不会自动加入到伸缩组内,伸缩组仅提取该实例使用的基础镜像,不会包含该实例的数据信息;

在这里插入图片描述
在高级配置中,可为该伸缩组添加扩缩容策略、关联负载均衡和数据库等;

在这里插入图片描述
伸缩规则即在该伸缩组中定义哪些操作被允许。在“执行的操作”选项中,有 调整至增加减少 三个选择。增加就是扩容 ECS 后台服务;减少就是移除;调整至即指定调整到多少台;

在这里插入图片描述
冷却时间指的是该规则被使用之后多长时间内不能再次被使用;

选择相关属性后点击“完成”,伸缩组就创建成功了。我们上一步选择的是“稍后手动执行”,所以它处于停用状态,需手动开启;

在这里插入图片描述
新创建的伸缩组由于还未进行任何配置,所以各项指标均为 0;

在这里插入图片描述
接下来进行弹性伸缩的相关配置。

4.2 伸缩配置

选择“实例配置来源”下的“创建伸缩配置”,进入弹性伸缩管理控制台;

在这里插入图片描述
在基础配置模块中主要是选择付费模式与实例的规格,镜像选择等,大家根据个人需要自行选择;

在这里插入图片描述
伸缩配置完成之后就可以选择该规格来自动完成扩缩容操作了,前提需要我们自己来创建伸缩规则。

4.3 创建伸缩规则

点击已有的伸缩组名称;

在这里插入图片描述

选择“伸缩规则与伸缩活动”,此时是没有伸缩规则的,点击“创建伸缩规则”;

在这里插入图片描述
如下:

在这里插入图片描述

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

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

相关文章

javaee之spring1

什么是Spring 一、Spring的优势 二、Spring的体系结构 先说一下从什么位置去下载Spring的源码 进入Spring官网,找到Spring Framework框架 点进去之后,找到如下位置,继续点击 进去之后,继续下拉,找到下面这个位置点进…

慕了,我要是早点看到这篇写 Kafka 的分区管理的文章就好了

Kafka可以将主题划分为多个分区(Partition),会根据分区规则选择把消息存储到哪个分区中,只要如果分区规则设置的合理,那么所有的消息将会被均匀的分布到不同的分区中,这样就实现了负载均衡和水平扩展。另外…

可以做抽奖活动的微信小程序在哪里做_分享抽奖活动小程序制作步骤

越来越多的企业开始了解微信抽奖游戏的实用性和价值,因为用户更喜欢简单有趣的游戏抽奖方式,如大转盘、摇一摇、抢福袋、砸金蛋、摇一摇、刮刮卡等互动抽奖游戏。 如果企业想制作这种抽奖游戏,都倾向使用市场上的各种抽奖制作软件&#xff0c…

(Java)车厢重组

车厢重组一、题目描述二、输入格式三、输出格式四、样例(1)样例输入(2)样例输出五、正确代码六、思路一、题目描述 在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转。一个车站的职工发现桥的长度最…

网络技术——网络运维工程师必会的网络知识(2)(详细讲解)

作者简介:一名在校云计算网络运维学生、每天分享网络运维的学习经验、和学习笔记。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 网络传输介质 信号分类和失真 双绞线分类: 双绞线…

非计算机专业,可以学好编程吗?

现在IT行业越来越火热,想要学习编程的人也越来越多。IT行业的薪资连续好几年赶超金融行业,位居行业之首,有太多人转行跨界,想要进入这个领域,那么作为初学者的你,是不是也很困惑,非科班&#xf…

Web入门开发【四】- 基础语言

欢迎来到霍大侠的小院,我们来学习Web入门开发的系列课程。 首先我们来了解下这个课程能学到什么? 1、你将可以掌握Web网站的开发全过程。 2、了解基础的HTML,CSS,JavaScript语言。 3、开发自己的第一个网站。 4、认识很多对编…

Java笔记之多线程(一)

文章目录前言一、什么是进程与线程?1.进程2.线程3.其他相关概念二、如何创建线程1.继承Thread类,重新run方法2.实现Runnable接口3.通过Callable和Future创建线程4. 继承Thread vs实现Runnable的区别三、用户线程和守护线程守护线程的使用设置成守护线程四…

【Python百日进阶-数据分析】Day137 - plotly旭日图:go.sunburst()实例

文章目录4.2 带有 go.Sunburst 的基本旭日图4.2.1 基本go.sunburst()旭日图4.2.2 带有重复标签的旭日图4.2.3 分支值4.2.4 大量切片4.2.5 控制旭日形扇区内的文本方向4.2.6 使用 uniformtext 控制文本字体大小4.2.7 具有连续色标的旭日图4.2.8 Dash中的go.sunburst()4.2 带有 g…

Android hilt 依赖注入使用详解

文章目录官方文档添加依赖初始化hiltMainActivity 使用共享类在 MainActivity 添加依赖注入ActivityScoped 作用域Singleton 作用域构造参数,添加 Context参数ApplicationContext、ActivityContext官方文档 https://developer.android.com/training/dependency-inj…

【Linux】缓冲区/磁盘inode/动静态库制作

目录 一、缓冲区 1、缓冲区的概念 2、缓冲区的意义 3、缓冲区刷新策略 4、同一份代码,打印结果不同 5、仿写FILE 5.1myFILE.h 5.2myFILE.c 5.3main.c 6、内核缓冲区 二、了解磁盘 1、磁盘的物理结构 2、磁盘的存储结构 2.1磁盘的定位 3、磁盘的抽象…

基于价值迭代求解迷宫寻路问题

摘 要 迷宫寻路是人工智能和计算机科学中一个经典的问题。它涉及在迷宫中找到一条从起点到终点的最短路径。这个问题可以用来模拟真实世界中的许多情况,例如机器人在工厂中自动导航,搜索引擎在网络中寻找信息,或者人类在城市中导航。 迷宫寻路…

【Javascript基础】--零基础--超详细且简洁的Javascript笔记--简介(01)

参考资料: 【现代Javascript教程】https://zh.javascript.info/ 【MDN】https://developer.mozilla.org/zh-CN/ 笔记仅作为学习交流载体,无任何商业或盈利目的 JavaScript 简介 了解 JavaScript 有什么特别之处,我们可以用它实现什么&#…

适合编程初学者的开源博客系统(Vue3+Element Plus版)

目标 为编程初学者打造入门学习项目,使用各种主流编程语言来实现。让想学编程的,一个都不落下。 上述基本涵盖了当前编程开发所有主流语言。 左侧为前端版本:安卓、iOS、鸿蒙、Flutter、Vue、uni-app、微信小程序。 右侧为服务器端版本&am…

YOLOV7学习记录之模型推理

前面我们学习了YOLOV7的训练过程,今天我们学习其推理过程,即模型预测:其包含损失函数计算,输出值解码,非极大值抑制,mAP计算等过程。 同时还介绍原始图像上绘制目标框等功能。 我们从predict.py文件开始&am…

【源码共读】Vite 项目自动添加 eslint 和 prettier

vite-pretty-lint库是一个为Vite创建的Vue或React项目初始化eslint和prettier的库。 该库的目的是为了让开发者在创建项目时,不需要手动配置eslint和prettier,而是通过vite-pretty-lint库来自动配置。 源码地址: vite-pretty-lintgithub1s…

设计模式 - 单例模式(一)

单例模式一 官方定义二 单例模式八种方式2.1 饿汉式(静态常量)代码案例案例分析2.2 饿汉式(静态代码块)代码案例案例分析2.3 懒汉式(线程不安全)代码案例案例分析2.4 懒汉式(线程安全,同步方法)代码案例案例分析2.5 懒…

数据要求说明书(GB856T——88)基于协同的在线表格forture-sheet

数据要求说明书 1引言 1.1编写目的 本份数据要求说明书详细的提供了系统中各个数据的流向,是设计数据库的关键所在。为以后的编码以及测试提供一份可靠的依据。 预期的读者:系统开发人员、系统测试人员、系统维护人员 1.2背景 待开发的数据库名称&a…

揭秘百度智能测试在测试定位领域的实践

以前,我们介绍了测试活动测试输入、测试执行、测试分析、测试定位和测试评估五个步骤中测试输入、执行、分析、评估的智能化研究和实践,本文重点介绍测试定位环节的智能化实践。 测试定位的主要作用是在构建失败或问题发生后,快速给出产生该现…

机器学习之回归

回归算法 线性回归 求解线性回归方法 正规方程梯度下降 迭代 API sklearn.linear_model.LinearRegression 正规方程优化fit_intercept 是否计算偏置量,没有的化经过原点属性 coef_ 回归系数intercept_ 偏置量 sklearn.linear_model.SGDRegressor 使用随机梯度…