AWS-负载均衡-创建一个对外的HTTPS ALB

目录

介绍

功能差异

适用场景

性能比较

补充

基本组成部分

创建流程


介绍

Elastic Load Balancing 支持三种类型的负载均衡器:Application Load Balancer、Network Load Balancer 和 Classic Load Balancer。这里用ALB( Application Load Balancer)说明。

功能差异

  1. Application Load Balancer(ALB)
    • 应用层负载均衡:工作在OSI模型的第7层(应用层),专注于HTTP、HTTPS和QUIC等应用层协议。
    • 复杂路由能力:支持基于内容的路由,能够根据URL路径、HTTP头、查询字符串等条件将请求转发到不同的目标组。
    • 深度集成:与云原生服务(如Kubernetes)深度集成,是阿里云官方提供的云原生Ingress网关。
    • 安全性:自带DDoS防护,集成Web应用防火墙,支持全链路HTTPS加密。
  2. Network Load Balancer(NLB)
    • 网络层负载均衡:工作在OSI模型的第4层(传输层),专注于TCP和UDP协议。
    • 高性能:能够处理数百万个请求/秒,同时保持超低延迟,非常适合需要高性能网络传输的应用场景。
    • 静态IP和弹性IP支持:可以分配静态IP地址或弹性IP地址,提供更灵活的网络配置选项。
  3. Classic Load Balancer(CLB)
    • 多功能协议支持:支持TCP、SSL/TLS、HTTP和HTTPS协议,是AWS中支持协议最多的负载均衡器。
    • 基本功能:提供负载均衡器的基本功能,如健康检查、会话粘性等。
    • 向后兼容性:适用于需要向后兼容旧版AWS服务或工具的场景。

适用场景

  1. ALB
    • 适用于需要复杂路由和高度灵活性的Web应用和服务。
    • 适用于微服务架构,能够高效处理来自不同客户端的请求,并根据请求内容将流量路由到相应的服务实例。
  2. NLB
    • 适用于需要高性能、低延迟的网络传输场景,如数据库集群、实时音视频通信等。
    • 适用于需要直接处理TCP或UDP流量的应用,如游戏服务器、实时消息系统等。
  3. CLB
    • 适用于不需要复杂路由和高级功能的简单Web应用和服务。
    • 适用于需要向后兼容旧版AWS服务或工具的场景,以及需要支持多种协议的应用场景。

性能比较

  • ALB:由于其工作在应用层,因此具有强大的路由和转发能力,但相对于NLB来说,在处理大量TCP连接时可能会有一定的性能开销。
  • NLB:提供极高的性能和极低的延迟,特别适用于需要处理大量TCP连接或UDP数据包的应用场景。
  • CLB:虽然支持多种协议,但在性能和灵活性方面可能不如ALB和NLB。

补充

目前中国区的DDos防御还没上,但是机房的的网络入口有SYN Proxy,检测到SYN Flood 会帮你挡掉直到特定的阀值,挡不掉的部分由ALB自己做弹性伸缩来硬吃。

基本组成部分

  • 负载均衡器
  • 侦听器
  • 目标组

创建流程

按照流程创建就行,这里把需要注意的地方记录一下:

  1. 对外的ALB,需要两个不同可用区的公有子网,如果不具备,请自行创建两个公有子网(参考子网创建)(如果使用私有子网,会造成alb访问不到后端的ec2),如下
  1. 需要准备你的域名(如:vip.test.com)ssl证书,一般你向供应商购买SSL证书后,都会提供给你(公有密钥证书:就是crt文件,私有密钥:就是key文件。通常这两个文件已经是PEM编码了,直接拷贝粘贴就行。)
  1. ALB创建完成后,一般会分配给你一个对外的域名,如:myinternal-elb-1677075150.cn-north-1.elb.amazonaws.com.cn ,如果你需要使用自己的域名(vip.test.com)指向该ALB,需要在你的DNS服务器中增加一条CNAME记录(vip.test.com 已有的A记录需要删除,不然不会生效):
bash 复制代码
myinternal-elb-1677075150.cn-north-1.elb.amazonaws.com.cn.     IN    CNAME     vip.test.com.

当你配置好CNAME后,可以使用dig 来测试:

bash 复制代码
$ dig test.vip.com
 
; <<>> DiG 9.10.6 <<>> vip.test.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58877
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
 
;; QUESTION SECTION:
;vip.test.com.			IN	A
 
;; ANSWER SECTION:
vip.test.com.		600	IN	CNAME	myinternal-elb-1677075150.cn-north-1.elb.amazonaws.com.cn.
myinternal-elb-1677075150.cn-north-1.elb.amazonaws.com.cn. 600	IN A 52.80.xxx.xx
myinternal-elb-1677075150.cn-north-1.elb.amazonaws.com.cn. 600	IN A 52.81.xxx.xx
 
;; Query time: 6 msec
;; SERVER: 192.168.5.1#53(192.168.5.1)
;; WHEN: Tue May 07 01:09:59 CST 2019
;; MSG SIZE  rcvd: 143
  1. 创建ALB后,记得在CloudWatch中为ALB创建基本的监控,例如监控ALB后端的实例数,elb的连接数量,并做相应的邮件通知。
相关推荐
_运维那些事儿7 小时前
VM环境的CI/CD
linux·运维·网络·阿里云·ci/cd·docker·云计算
人间打气筒(Ada)10 小时前
k8s:CNI网络插件flannel与calico
linux·云原生·容器·kubernetes·云计算·k8s
主机哥哥15 小时前
2026年阿里云五种方案快速部署 OpenClaw(Clawdbot)详细教程
阿里云·云计算
m0_6948455716 小时前
music-website 是什么?前后端分离音乐网站部署实战
linux·运维·服务器·云计算·github
新新学长搞科研16 小时前
【智慧城市专题IEEE会议】第六届物联网与智慧城市国际学术会议(IoTSC 2026)
人工智能·分布式·科技·物联网·云计算·智慧城市·学术会议
翼龙云_cloud16 小时前
亚马逊云代理商: RDS 误删实例急救指南 5 步找回数据
服务器·云计算·aws
翼龙云_cloud16 小时前
阿里云代理商: 如何选择适合自己的阿里云 ECS 配置?
服务器·阿里云·云计算
DO_Community17 小时前
如何选择对象存储?Amazon S3 与 DigitalOcean Spaces 深度解析
运维·服务器·ai·aws·对象存储·云服务·金融科技
以太浮标17 小时前
华为eNSP模拟器综合实验之- DHCP Option 43 解析
服务器·网络·华为·云计算
Apache Flink18 小时前
Flink 实时计算 x SLS 存储下推:阿里云 OpenAPI 网关监控平台实践
大数据·阿里云·flink·云计算