企业运维训练营之云上网络原理与实践课程 - 第四讲 负载均衡ALB(上)

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
密钥管理服务KMS,1000个密钥,100个凭据,1个月
.cn 域名,1个 12个月
简介: 课程目标了解应用型负载均衡ALB的产品功能了解应用型负载均衡ALB底层架构与相关技术掌握应用型负载均衡ALB的产品优势熟悉应用型负载均衡ALB的使用场景

企业运维训练营之云上网络原理与实践课程

第四讲 负载均衡ALB(上)

 

视频地址:

https://developer.aliyun.com/learning/course/991/detail/14982

 

课程目标

  • 了解应用型负载均衡ALB的产品功能
  • 了解应用型负载均衡ALB底层架构与相关技术
  • 掌握应用型负载均衡ALB的产品优势
  • 熟悉应用型负载均衡ALB的使用场景

 

课程目录

  • 概述
  • 相关概念与产品功能
  • 技术架构
  • 产品优势
  • 场景与案例
  • 实验

 

 

一、概述

 

1.  用户核心痛点与诉求

 image.png

 

随着网络的发展,从2000年初的web应用、音视频应用,发展今天的短视频、直播等应用。

  • 从业务和用户角度而言,这些应用的特点在于流量大,交互快,同时在线人数多,用户要求延时性能更高,响应更快;
  • 从技术角度而言,之前是将所有业务都打包到一个APP中,现在则是可分布式,提供高可用,容量更大,从单体扩展到微服务或者云上的架构。为了安全和容灾,甚至会部署到多云或者混合云上,有故障时,可以快速切换。对架构和网络的要求都更加的高。

 image.png

 

a.  超高可用:Always Online对业务高可用提出更高要求

  • 健康检查
  • 可用区容灾
  • 地域级容灾

 

b.  超强弹性:5G/IOT时代的来临互联网将迎来更大的流量洪峰

  • 更大的并发连接
  • 更大的带宽
  • 系统有着更好的弹性

 

c.  安全可靠:复杂的网络环境对安全和运维便利性提出更高要求

  • 抵御DDoS攻击
  • WAF应用层防御
  • HTTPS安全加密

 

d.  面向应用:业务复杂度的攀升需要应用更快速的交付

  • 面向应用的负载均衡
  • 高级路由、流量镜像等功能支持
  • 面向云原生的快速交付模式

 

二、相关概念与产品功能

 

1.  负载均衡SLB产品家族

 

a.  什么是SLB

 

负载均衡SLB ( Server Load Balancer )是阿里云负载均衡产品的统称,一种对流量进行按需分发的服务,通过将流量分发到不同的后端服务来扩展应用系统的服务吞吐能力,并且可以消除系统中的单点故障, 提升应用系统的可用性。

 

b.  SLB的特点

 

SLB负载均衡具有即开即用,超大容量,稳定可靠,弹性伸缩,按需付费等特点。

 

c.  SLB的分类

 

根据不同应用场景分为:主要基于7(HTTP/HTTPS)的应用型负载均衡ALB、主要基于4(TCP/UDP)的传统型负载均衡CLB

 image.png

 

2.  什么是应用型负载均衡ALB

 

应用型负载均衡ALB (Application Load Balancer) 是阿里云推出的专门面向HTTPHTTPSQUIC等应用层负载场景的负载均衡服务,具备超强弹性及大规模七层流量处理能力。ALB具备处理复杂业务路由的能力,与云原生相关服务深度集成,是阿里云官方提供的云原生Ingress网关。

 image.png

 

  • 即开即用,超大性能,稳定可靠,弹性伸缩,按需付费等特点,更加适合7层应用交付场景。
  • 面向7层,支持HTTP/HTTPS/HTTP2/WSS/QUIC/GRPC等众多协议,单实例可支持高达100QPS,业界性能遥遥领先。

 

3.  ALB VS CLB

 

应用型负载均衡ALB和传统型负载均衡CLB相比,应用型负载均衡ALB在产品定位、性能、功能特性、运维方式、云原生支持和典型应用场景方面是优于传统型负载均衡CLB的,具体内容如下图所示:

 image.png

 

a.  应用型负载均衡(ALB

 

  • 产品定位
  • 强大的7层处理能力与丰富的高级路由功能
  • 聚焦HTTPHTTPSQUIC应用层协议
  • 面向应用交付

 

  • 性能
  • 基于NFV虚拟化平台,支持弹性伸缩
  • 单实例支持100QPS

 

  • 功能特性
  • 丰富7层特性,基于内容的路由
  • HTTP标头改写、重定向、重写、限速等

 

  • 运维方式
  • 处理能力随业务规模自动弹性伸缩
  • 无需进行峰值与规格预估

 

  • 云原生支持
  • 云原生Ingress网关
  • 支持流量拆分、镜像、灰度发布和蓝绿测试

 

  • 典型应用场景
  • 场景1:互联网应用7层高性能自动弹性场景
  • 场景2:音视频应用大流量低时延场景
  • 场景3:云原生应用金丝雀蓝绿发布场景

 

b.  传统型负载均衡(ALB

 

  • 产品定位
  • 强大的4层处理能力
  • 支持TCP/UTP/HTTP/HTTPS等协议
  • 主要面向网络交付

 

  • 性能
  • 基于物理机架构
  • 单实例最大连接数可达500

 

  • 功能特性
  • 7层基础能力
  • 仅支持域名/URL转发

 

  • 运维方式
  • 按规格售卖
  • 需要根据业务规模预估带宽峰值

 

  • 云原生支持
  • 支持较弱

 

  • 典型应用场景
  • 场景1:网站/系统同地域业务高可靠场景
  • 场景2:四层流量大并发业务场景
  • 场景3:同城双活/跨地域容灾场景

 

4.  ALB与自建应用负载均衡对比

 image.png

 

a.  自建应用负载均衡

 

  • 协议:主要支持基础协议,如HTTPHTTPS,受限于版本关系;
  • 性能:性能受限于自建NgnixECS能力,或者第三方镜像,性能不足;
  • 安全:没有默认的主动安全保障;需要自己部署和维护安全方案;
  • 弹性:无弹性能力;扩容,缩容涉及资源评估及购买,操作繁琐;
  • 可靠性:单点部署,最多时双机部署,可靠性依赖ECS部署关系;通过四七层分离,多-一个故障点;
  • 运维:需要经常性升级软件;故障处理繁琐复杂;

 

b.  应用型负载均衡ALB

 

  • 协议:支持丰富协议,如HTTPHTTPSHTTP2WSS. QUICGRPC等,迭代更快;
  • 性能:基于弹性架构的高性能;单实例支持100QPS
  • 安全:默认5GDDoS防护能力;支持一键集成WAF能力,应用层更安全;
  • 弹性:随业务而动的自动弹性,无需干预;
  • 可靠性:基于集群的可靠性能力,单实例本质是在集群承载,完全避免了可靠性问题,客户也无需关注可可靠性部署,集群故障自动恢复,无需人工介入;一个实例一个节点更简单;
  • 运维:完全无此操作,无需主动升级,新功能自动在控制台呈现;
  • 业务类型:音视频延迟敏感型业务;7层高并发弹性业务;替代自建3三方负载均衡。

 

应用型负载均衡ALB为新型业务量身定制,面向容器和运维自动化的新一代负载均衡。

 

5.  ALB应用型负载均衡关键特性

 image.png

 

  • 多级调度实现超高弹性
  • ALB同时向客户交付域名与VIP

DNS域名调度确保流量在可用区间均衡分配;

VIP调度确保流量在后端服务器间均衡分发,并且支持一致性哈希与会话保持;

  • 多级调度确保流量均衡,单实例支持高达100QPS
  • 丰富且强大的基于内容路由
  • 支持多种内容匹配策略,并支持重定向、重写、标头改写等转发策略;
  • 业界最先进的协议支持
  • 从应用层到传输层,ALB支持最先进的协议,让应用更快更安全。

 

三、技术架构

 

1.  概览

 image.png

ALB整体大图

image.png

注:红色虚线内所有组件构成一个ALB实例

 

  • ALB面向应用层,提供域名与VIP,多级分发承载海量请求;
  • ALB可在可用区间弹性缩放,避免单可用区资源瓶颈;
  • ALB通过EIP+共享带宽提供公网能力,实现灵活公网计费;
  • ALB允许用户自定义可用区组合,适应原有计算资源的分布;

 image.png

ALB工作示意图

 

2.  监听

image.png

 

  • 监听是ALB最小业务单元,监听上需要配置协议与端口以告知ALB需要处理什么流量,如HTTP协议80端口/HTTPS协议443端口;
  • 每个负载均衡至少有一个监听,才能开始流量处理与分发;
  • 每个ALB可以配置多达50个监听,用于处理不同的业务流量;

 

3.   服务器

 image.png

ECS:虚拟服务器;ECI:弹性容器实例,K8s中使用较多;ENI:弹性网卡

 

  • 服务器组是一个逻辑组,包含多个后端用于处理ALB分发的业务请求;
  • ALB中服务器组独立于ALB存在,可以将同一服务器组挂载于不同ALB后端;
  • 服务器组最大可以包含1000个后端;
  • ALB服务器组支持云ECSECI ENI等多种类型后端;

 

4.  健康检查

 image.png

 

  • 健康检查是ALB至关重要的工作机制,可以探测业务是否健康,分为“TCP健康检查”和“HTTP健康检查”;
  • ALB探测服务器组中不健康的后端,并避免将流量分发给不健康的后端;
  • ALB支持丰富灵活的健康检查配置,如协议、端口、以及各种健康检查阈值;
  • ALB提供健康检查模板,可将健康检查模板快速的应用到不同的服务器组;

 

5.  转发规则

 image.png

image.png

 

  • ALB具备强大丰富的基于内容路由的能力;
  • ALB路由转发规则可基于域名(host) 、路径(url) 、查询字符串、HTTP标头、CookieHttp Method等条件进行匹配;
  • 可支持转发(Forward) 、重定向(Redirect)、 重写 (Rewrite)、 返回固定响应、插入HTTP标头等动作;
  • 每个监听可以支持多达100条转发规则;

 

6.  丰富的自定义规则属性

 image.png

 

匹配规则及示例:

 

  • 域名:www.aliyun.com
  • 路径:/test123
  • http标头(header:: user-agent : Mozilla/4.0
  • 查询字符串:username: 123
  • http请求方法:post
  • Cookiekey: value
  • Sources IP172.16.0.0/16

 

指定请求:

 

  • 转发:网站A
  • 镜像:数据分析平台
  • 重定向:网站A跳转网站B(客户端重发请求)
  • 重写:网站A跳转网站B(客户端不重发请求)
  • 写入标头:http header中新增XX属性
  • QPS限速:限制每秒最大请求数
  • 自定义响应:自定义响应状态码和内容

 

示例:curl -v www.baidu.com

image.png

 

7.  支持全链路https加密

 

ALB支持全链路https加密,可以实现与客户端/后端服务器的https交互,面向加密敏感型业务,满足Zero-Trust新一代安全技术架构需求。

 image.png

 

 

8.  率先支持更高效安全的TLS1.3加密协议

 image.png

传输层安全性协议TLS: Transport Layer Security

 

TLS1.3特性:

  • 简化握手交互流程,降低RTT
  • 单次https交互节省约100ms
  • 握手协议加密,安全性更高;

 

9.  支持多证书灵活配置

 image.png

 

ALBHTTPS/SSL类型监听器中增加对SNI协议的支持,从而保证一个HTTPS监听可配置多个域名证书,在收到来自不同客户端的域名请求时,返回不同的服务器证书,建立正确的HTTPS会话链接,避免出现https访问浏览器频繁提示告警的情况。

 

10. 控制台丰富易用性功能

 

  • 控制台自助配额管理:自助申请,自动审批,符合要求,审核通过,达到上限,不予通过;

 image.png

控制台自助配额管理

 

  • 实例修改/删除保护:防止意外的删除或者意外的修改;

 image.png

实例修改/删除保护

 

  • 自定义tls安全策略:不仅支持TLS1.1版本,还支持套件,可进行勾选;

image.png

自定义tls安全策略

 

  • 黑白名单自定义:可将恶意请求加入黑名单,对公业务的话,可将对应的IP提供给特定企业用户,达到保护业务的效果;

 image.png

黑白名单自定义

 

11. ALB丰富产品功能汇总

 image.png

  • 协议支持:HTTPHTTPSHTTP2WebSocket(S)QUICgRPC
  • 七层路由:基于host/path、基于header/cookie、基于http method、重定向/重写、插入Header、金丝雀发布;
  • 安全特性:全链路HTTPSTLS1.3ECC证书支持、自定TLS策略、DDoS防护、WAF防护;
  • 运维监控:并发连接、新建链接、QPS、监控告警、访问日志、秒级监控;
  • 计费能力:后付费、预付费、按流量计费、按带宽计费、按95带宽计费;

 

 

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
10天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络:从理论到实践
【10月更文挑战第35天】在人工智能的浪潮中,深度学习技术以其强大的数据处理能力成为科技界的宠儿。其中,卷积神经网络(CNN)作为深度学习的一个重要分支,在图像识别和视频分析等领域展现出了惊人的潜力。本文将深入浅出地介绍CNN的工作原理,并结合实际代码示例,带领读者从零开始构建一个简单的CNN模型,探索其在图像分类任务中的应用。通过本文,读者不仅能够理解CNN背后的数学原理,还能学会如何利用现代深度学习框架实现自己的CNN模型。
|
9天前
|
数据采集 网络协议 算法
移动端弱网优化专题(十四):携程APP移动网络优化实践(弱网识别篇)
本文从方案设计、代码开发到技术落地,详尽的分享了携程在移动端弱网识别方面的实践经验,如果你也有类似需求,这篇文章会是一个不错的实操指南。
26 1
|
12天前
|
弹性计算 运维
新 企业级ECS集群运维管理训练营 打卡学习领好礼
新 企业级ECS集群运维管理训练营 打卡学习领好礼
51 3
|
16天前
|
数据采集 存储 XML
Python实现网络爬虫自动化:从基础到实践
本文将介绍如何使用Python编写网络爬虫,从最基础的请求与解析,到自动化爬取并处理复杂数据。我们将通过实例展示如何抓取网页内容、解析数据、处理图片文件等常用爬虫任务。
|
13天前
|
边缘计算 5G 数据处理
5G网络能耗管理:绿色通信的实践
【10月更文挑战第30天】
33 0
|
6天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第39天】在数字化时代,网络安全和信息安全成为了我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的内容,帮助读者更好地了解网络安全的重要性,并提供一些实用的技巧和方法来保护自己的信息安全。
19 2
|
7天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第38天】本文将探讨网络安全与信息安全的重要性,包括网络安全漏洞、加密技术和安全意识等方面。我们将通过代码示例和实际操作来展示如何保护网络和信息安全。无论你是个人用户还是企业,都需要了解这些知识以保护自己的网络安全和信息安全。
|
6天前
|
存储 安全 网络安全
云计算与网络安全:探索云服务中的信息安全策略
【10月更文挑战第39天】随着云计算的飞速发展,越来越多的企业和个人将数据和服务迁移到云端。然而,随之而来的网络安全问题也日益突出。本文将从云计算的基本概念出发,深入探讨在云服务中如何实施有效的网络安全和信息安全措施。我们将分析云服务模型(IaaS, PaaS, SaaS)的安全特性,并讨论如何在这些平台上部署安全策略。文章还将涉及最新的网络安全技术和实践,旨在为读者提供一套全面的云计算安全解决方案。
|
6天前
|
存储 安全 网络安全
网络安全与信息安全:漏洞、加密技术与安全意识的交织
【10月更文挑战第39天】在数字化时代,网络安全与信息安全成为保护个人隐私和组织资产的重要屏障。本文将探讨网络安全中的常见漏洞、加密技术的应用以及提升安全意识的重要性。通过具体案例分析,我们将深入了解网络攻击的手段和防御策略,同时提供实用建议,以增强读者对网络安全的认识和防护能力。
|
6天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第39天】在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将探讨网络安全漏洞、加密技术以及安全意识等方面的内容,帮助读者更好地了解网络安全的重要性,并提供一些实用的技巧和建议来保护个人信息和设备安全。