掌握阿里云负载均衡服务SLB(进行中)

2023-11-06 17:59

本文主要是介绍掌握阿里云负载均衡服务SLB(进行中),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

产品介绍:

产品简介

产品特点

应用场景

概念介绍:

产品概念

收费模式

操作使用:

SLB开通

服务监听配置

后端服务器管理

SLB监控

证书管理

网站应用实例

API及工具:

OPEN API

SLB、后端服务和HTTPS协议的相关常见问题

教学目标

熟悉SLB概念及应用场景

掌握SLB相关概念

学会使用SLB管理控制台

了解SLB API及常见问题解答

第一章 弹性负载均衡SLB概要介绍

本章主要内容

第一讲:什么是弹性负载均衡SLB?

第二讲:弹性负载均衡SLB的特点

第三讲:弹性负载均衡SLB的应用场景

第一讲:什么是弹性负载均衡SLB?

引子:互联网应用的服务扩展性遇到困扰

互联网应用伴随着业务的发展,访问量和数据流量不断的增长

单一的服务器设备无法承担

升级硬件?带宽、服务器的硬件设备单核-》双核四核、普通PC的CPU升级到至强

升级硬件,如下问题该如何解决:

配置该如何取舍?是一步到位?还是满足当前峰值?

投资成本如何控制?


解决的问题

可否将任务分摊到后台多台较低配置的服务器处理,然后返回结果给客户

负载均衡应运而生

在客户侧和后端服务器中间加上负载均衡设备

client——负载均衡设备——后端服务器

提供了一种方法:

1.扩展网络设备和服务器的带宽,增加吞吐量

2.加强网络数据处理能力

3.提高网络的灵活性和可用性

问题又来了:

1.硬件负载均衡昂贵的价格

2.存在性能瓶颈,达到上限后需继续购买

阿里云SLB产品介绍

阿里云根据自身弹性计算平台的特点及强大的技术优势,设计了基于软件的负载均衡解决方案

负载均衡(Server Load Balance,简称SLB)是对多台云服务器进行流量分发的一种均衡服务

弹性负载均衡相对硬件负载均衡的优势:低成本、稳定、高可靠性、无需运维

第二讲:阿里云弹性负载均衡SLB的特点

SLB特点之一:

高可用

1.采用冗余设计,无单点故障,支持同城容灾

2.搭配DNS可实现跨地域容灾,可用性高达99.95%

3.在流量波动情况下不中断对外服务

SLB特点之二:

低成本

1.与传统硬件负载均衡系统高投入相比成本下降60%

2.私网类型的实例免费试用

3.无需运维投入

SLB特点之三:

安全

1.结合云盾防DDoS系统,安全类设备无需单独采购

第三讲:弹性负载均衡SLB的应用场景

SLB的应用场景

当用户提出数据数据访问的请求时,数据流量先进入SLB,SLB作为应用程序的流量入口,由SLB根据后端具体的服务器的负载情况,动态的将用户的数据流量请求动态的分配到不同的服务器上,阿里云后端的服务器(ECS),数据库服务(RDS,MySQL),对象存储服务(OSS,保存文件,图片、视频)

SLB适合作为应用程序的流量入口

1.SLB负载均衡,流量入口

2.横向扩展应用系统的服务能力,适用于各种Web Server和App Server

3.消除应用系统的单点故障,当其中一部分ECS宕机后,应用系统仍能工作

4.ECS运行Linux或Windows Server,无状态(无数据)Apache+Web应用,可水平扩展(不可保存数据)

案例解读一:浙江政务服务网

 用户-》接入层(DNS)-》弹性计算(SLB作为接入端-》ECS)

本架构能够解决:

网站极速访问、系统稳定可靠、网站业务畅顺运行、数据助力业务

支持最高性能:

日均PV(页面浏览量):5-30万;开通服务:数分钟;日活:数万级

案例解读二:学信网

用户-》安全防护层-》接入层(DNS)-》弹性与计算层(SLB-》ECS)

本架构能够解决:

抵御大规模DDoS攻击、识别垃圾注册、网址网页挂马篡改、检测非法内容

支持安全能力:

DDoS高仿IP:支持BGP;WAF:防SQL注入;绿网:站点检测

第二章:弹性负载均衡SLB基本概念

本章主要内容

第一讲:弹性负载均衡SLB的产品概念综述

第二讲:SLB产品及主要特性介绍

第三讲:SLB收费模式

第一讲:弹性负载均衡SLB的产品概念综述

SLB可以做什么?

负载均衡(Server Load Balance,简称SLB)是对多台云服务器进行流量分发的一种均衡服务

1.SLB可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性

2.SLB可以通过设置虚拟服务地址,将同一地域的多台ECS资源虚拟成一个高性能、高可用的资源池 

3.SLB会检查ECS资源池中ECS的健康状态,自动隔离异常的ECS,解决了单点故障,提高了服务的整体能力(修复后,SLB检测到故障服务器恢复正常后,自动将其添加进后台资源池)

4.SLB还具备TCP与HTTP抗DDoS攻击的能力,增强服务的防御能力(开通SLB实例服务时,同时默认开启云盾)

5. SLB服务是ECS面向多机方案的配套服务,需要同ECS结合使用

SLB如何容灾

1.本地容灾

2.同城容灾(通过DNS轮询)

3.跨地域容灾(通过DNS轮询)

第二讲:SLB的产品及主要功能介绍

SLB功能架构

SLB由3部分功能组成:

1.LoadBalancer代表一个SLB实例

2.Listener代表定制的策略和转发规则

3.BackendServer是后端的一组云服务器

来自外部的访问请求,通过SLB实例并根据配置的策略和规则分发到后端的云服务器进行处理

SLB基础架构

SLB由3个部分组成:

1.四层负载均衡:采用由阿里云定制化的LVS(LVS集群),负责TCP、UDP协议的负载均衡

2.七层负载均衡:采用开源Tengine,负责Http、Https协议的负载均衡

3.控制系统:用于配置和监控负载均衡系统

四层负载均衡:数据流量 -》LVS集群 -》ECS实例

七层负载均衡:数据流量 -》LVS集群 -》Tengin集群 -》ECS实例

SLB主要功能

1.提供四层(TCP/UDP协议)和七层(HTTP/HTTPs协议)的负载均衡

2.对后端ECS进行健康检查,自动屏蔽异常状态的ECS,待该ECS恢复正常后自动解除屏蔽

3.提供会话保持功能,在Session的生命周期内,可以将同一客户端请求转发到同一台ECS上

4.提供轮询、加权轮询(WRR)、加权最小连接数(WLC)3种转发方式

        1.轮询:依次将请求发送到后端的ECS

        2.加权轮询(WRR):为后端的ECS设置权重,权重越高被分发的几率越大

        3.加权最小连接数(WLC):在考虑后端ECS权重相同的情况下,将请求分发到当前连接数最小的ECS上

5.证书管理功能,针对HTTP协议,提供统一的证书管理服务,解密处理在SLB实例上,降低后端ECS的CPU开销

6.支持公网或私网的负载均衡(私网类型免费使用)

7.带宽控制,支持根据监听设置其对应服务所能达到的带宽峰值

8.监控,提供丰富的监控数据,实时了解负载均衡运行状态

9.安全防护,结合云盾,可提供5G以下的防DDoS攻击能力

10.容灾,支持同一地域跨(REGION)可用区的容灾;结合DNS轮询跨地域的容灾

11.提供控制台、API、SDK三种控制方式

第三讲:SLB的收费模式介绍

计费模式:预计费( 按带宽计费)

计费说明(公网,私网不收流量费):

计费项:

1.实例配置费:公网IP成本+性能规格费(性能保障型实例未在全部地域开放前,暂不收取性能规格费)

2.公网带宽费=实例配置费(每月配置费*购买时长)+公网带宽费(每月带宽费*购买时长)

3.按开通的实例带宽规格收费,不按已使用的带宽规格峰值收费

4.可选择包年或包月的计费方式。在合同期内,包年包月的实例只支持升级配置,不支持降级配置或者释放

计费模式:后付费

后付费:按固定带宽计费

计费说明:

计费项:

1.实例配置费:公网IP成本+性能规格费(性能保障型实例未在全部地域开放前,暂不收取性能规格费)

2.公网带宽费:以5Mbps为界,实行阶梯定价

3.总费用=实例配置费(每小时配置费*使用时长)+公网带宽费(每小时带宽费*使用时长)

4.按小时计费,以日结算。使用时间不足一小时,按一小时计算

5.运行未满一日,按照当日实际使用小时数*当日开通的最高带宽单价

6.如果您在一个周期内,进行了带宽变更,按照最高带宽峰值计算

7.按您开通的实例带宽规格收费,不按已使用的带宽规格峰值收费

8.后付费实例可以随时释放

计费模式:后付费

后付费:按流量计费

计费说明:

计费项:

1.实例配置费:公网IP成本+性能规格费(性能保障型实例未在全部地域开放前,暂不收取性能规格费)

2.公网流量费(下行流量):公网流量费一期不设阶梯,线性定价

3.总费用=实例配置费(每小时配置费*使用时长)+公网流量费用(流量单价*使用流量)

4.按小时计费,实时扣费。在一个计算周期内,使用时间不足一小时,按一小时计算

5.公网流量按公网出流量(下行流量),公网出流量(上行流量),不计入费用

6.后付费实例可以随时释放

第三章:弹性负载均衡SLB的使用

本章主要内容

第一讲:开通弹性负载均衡SLB

第二讲:配置弹性负载均衡SLB的监听规则

第三讲:管理后端服务器

第四讲:SLB证书管理

第五讲:SLB实时监控数据

第一讲:开通弹性负载均衡SLB

开通SLB之前需要考虑的问题

1.我的服务要部署在什么区域

按用户所在的位置就近选择地域,提升用户访问速度

2.需要多少台后端服务器

按业务需求进行后端服务器的申请并部署服务

3.采用什么协议进行SLB转发

根据应用使用的协议选择四层或七层协议

4.SLB是公网服务还是内网服务

根据SLB的用途进行选择

5.是否需要域名

需要提前准备域名

管理台演示

进入管理控制台-》创建SLB实例-》查看SLB实例

1.为了减少延迟时间和提高下载速度,建议选择离最终用户最近节点的SLB服务

2.创建SLB实例后,需要配置实例后才能使用

3.默认按量付费的SLB实例为60个

阿里云管理控制台-》负载均衡-》 创建负载均衡-》实例管理-》负载均衡ID/名称-》管理

 

 

LoadBalancer代表一个SLB实例

第二讲:SLB服务监听配置

7层(HTTPS)监听配置

适用场景:后端服务器的应用采用HTTP或HTTPS协议的负载均衡

管理控制台演示

基本配置 健康检查

SLB实例-》监听-》添加监听-》高级配置-》健康检查配置-》

 

 

 

 

HTTPS

上传证书/购买证书

 ​​​

4层(TCP)监听配置

适用场景:后端服务器的应用采用TCP协议的负载均衡

管理控制台演示

基本配置 健康检查

添加监听-》高级配置(会话保持)-》健康检查-》高级配置

 

与HTTP或HTTPS不同,TCP 健康检查可选择TCP或HTTP方式进行

Listener代表定制的策略和转发

监听配置的限制

负载均衡实例监听数量50个/实例

每个用户上传证书数量限制100个

小测试:

4层(TCP)协议配置SLB监听规则时,适用于什么场景?

后端服务器应用采用TCP协议的负载均衡场景

SLB如何选择监听协议

协议:TCP

说明:

1.面向连接的协议,在正式收发数据前

2.必须和对方建立可靠的连接

3.基于源地址的会话保持

4.在网络层可直接看到来源地址

5.数据传输快

使用场景:

适用于注重可靠性,对数据准确性要求高,速度可以相对较慢的场景,

如文件传输、发送或接受邮件、远程登录

无特殊要求的Web应用

协议:UDP

说明:

1.面向非连接的协议,在数据发送前不与对方进行三次握手,直接进行数据包发送,不提供差错恢复和数据重传

2.可靠性相对较低

3.数据传输快

使用场景:

关注实时性而相对不注重可靠性的场景,

如视频聊天、金融实时行情推送

协议:HTTP

说明:

1.应用层协议,主要解决如何包装数据

2.基于Cookie的会话保持

3.使用X-Forward-For获取源地址

使用场景:

需要对数据内容进行识别的应用,如Web应用、小的手机游戏等

协议:HTTPS

说明:

1.加密传输数据,可以阻止未经授权的访问

2.统一的证书管理服务,用户可以将证书上传到负载均衡,解密操作直接在负载均衡上完成

使用场景:

需要加密传输的应用

下面是一个真实的架构

SLB-》云服务器ECS

单台SLB采用SLB的场景分析

初始配置ECS时,默认的网路是固定带宽的(例如初始创建5M带宽),随着业务的发展,且网站有明显的峰值和峰谷,这样继续升级带宽会造成浪费。阿里云支持续费降配方式去修改网络计费方式,但是需要等到下个计费周期。在这种情况下,最简单最快速的做法是开通SLB,通过SLB来实现带宽的扩展,SLB默认采用的是按流量计费方式,SLB作为前端服务,后端连接ECS即可。这样做还方便后期通过增加ECS来实现多台ECS的负载。

总结:

1.用最高效的简便的方法解决棘手的问题,即高手

2.如果您的业务场景也是这样的(网站访问平时流量不高,基本带宽够用,但有明显的峰谷时,却不能流畅访问),不当考虑在前端加一个SLB。

测试

1.一个SLB实例最多可以支持多少个服务监听配置?

50

2.当SLB配置的是7层(HTTPS协议)监听规则,SLB采用HTTPS协议时,后端服务器不是必须选择HTTPS协议,加解密都是在SLB上做的,SLB提供统一的证书管理服务,后端服务器只需要沿用之前的HTTP协议就可。

3.当SLB采用4层(TCP)服务监听时,后端服务器的健康检查方式,支持TCP方式和HTTP方式。

第三讲:SLB服务管理后端服务器

管理控制台演示

添加/删除服务器 权值设置 健康检查

主备服务器组

1.有传统的主备需求时,即后端服务器中有一台主机和一台备机。当主机工作正常时,流量将直接走主机;当主机宕机时,流量将走到备机

2.备机不会做健康检查,所以只要主机健康检查失败,系统会直接将流量切到备机

3.一个主备服务器组只允许添加两个ECS实例,其中一个作为主机,另外一个作为备机。主备服务器组只支持四层监听

虚拟服务器组

1.当您需要将不同的请求转发到不同的后端服务器上时,或需要通过域名和URL进行请求转发时,可以选择使用虚拟服务器组

2.如设置了虚拟服务器组,默认在SLB实例维度添加的独立的后端服务器不再接收请求

权值设置

最高阶为100,最低为0;权值越高,被轮询的概率越大

添加/删除服务器

负载均衡-》服务器-》后端服务器-》未添加服务器-》选择,批量添加/操作,添加-》设置权重-》已添加的服务器-》查看异常-》-》修改权重

思考题

权值设置中最高阶为100,最低为0。若后端有20台ECS服务器,其中有1台权值设置为0时,会发生什么?

1.由于这台ECS权值被设置为0,会导致SLB的健康检查异常

2.由于这台ECS权值被设置为0,SLB不会将新的链接转发至这台ECS

设置ECS权重为0,和删除ECS的区别:

设置ECS权重为0后,这台ECS上已经建立的长链接依然存在

设置ECS权重为0只适用于主动运维时,如:部署应用或升级ECS配置

第四讲:SLB证书管理

管理控制台演示

上传证书 查看证书 修改证书名称 创建监听绑定证书

SLB只支持PEM(Privacy-Enhanced Mail隐私增强邮件)格式的证书。在上传证书前,确保证书、证书链和私钥符合格式要求,其中私钥时被加密存储。

 

 

 

 

学习自:SLB综述_哔哩哔哩_bilibili

附录:

【PEM格式】

PEM格式(Privacy-Enhanced Mail),隐私增强邮件。是一种用于存储加密秘钥和证书的文件格式,PEM文件通常以“.pem”、“.cer”、“.crt”‘、“.key”’为后缀,但后缀名并不会影响PEM格式文件的解析

DER格式(Destinguished Encoding Rules),可分辨编码规则。

这篇关于掌握阿里云负载均衡服务SLB(进行中)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/358173

相关文章

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

Linux使用fdisk进行磁盘的相关操作

《Linux使用fdisk进行磁盘的相关操作》fdisk命令是Linux中用于管理磁盘分区的强大文本实用程序,这篇文章主要为大家详细介绍了如何使用fdisk进行磁盘的相关操作,需要的可以了解下... 目录简介基本语法示例用法列出所有分区查看指定磁盘的区分管理指定的磁盘进入交互式模式创建一个新的分区删除一个存

C#使用HttpClient进行Post请求出现超时问题的解决及优化

《C#使用HttpClient进行Post请求出现超时问题的解决及优化》最近我的控制台程序发现有时候总是出现请求超时等问题,通常好几分钟最多只有3-4个请求,在使用apipost发现并发10个5分钟也... 目录优化结论单例HttpClient连接池耗尽和并发并发异步最终优化后优化结论我直接上优化结论吧,

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

使用Python进行文件读写操作的基本方法

《使用Python进行文件读写操作的基本方法》今天的内容来介绍Python中进行文件读写操作的方法,这在学习Python时是必不可少的技术点,希望可以帮助到正在学习python的小伙伴,以下是Pyth... 目录一、文件读取:二、文件写入:三、文件追加:四、文件读写的二进制模式:五、使用 json 模块读写

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

使用zabbix进行监控网络设备流量

《使用zabbix进行监控网络设备流量》这篇文章主要为大家详细介绍了如何使用zabbix进行监控网络设备流量,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录安装zabbix配置ENSP环境配置zabbix实行监控交换机测试一台liunx服务器,这里使用的为Ubuntu22.04(

在Pandas中进行数据重命名的方法示例

《在Pandas中进行数据重命名的方法示例》Pandas作为Python中最流行的数据处理库,提供了强大的数据操作功能,其中数据重命名是常见且基础的操作之一,本文将通过简洁明了的讲解和丰富的代码示例,... 目录一、引言二、Pandas rename方法简介三、列名重命名3.1 使用字典进行列名重命名3.编

python安装完成后可以进行的后续步骤和注意事项小结

《python安装完成后可以进行的后续步骤和注意事项小结》本文详细介绍了安装Python3后的后续步骤,包括验证安装、配置环境、安装包、创建和运行脚本,以及使用虚拟环境,还强调了注意事项,如系统更新、... 目录验证安装配置环境(可选)安装python包创建和运行Python脚本虚拟环境(可选)注意事项安装

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery