ALB搭建

ALB:

多级分发、消除单点故障提升应用系统的可用性(健康检查)。

海量微服务间的高效API通信。

自带DDoS防护,集成Web应用防火墙

配置:

1.创建ECS实例

2.搭建应用

此处安装的LNMP

3.创建应用型负载均衡ALB实例

需要创建服务关联角色

在创建阿里云应用型负载均衡ALB时,选择至少两个可用区有其特定的优势和必要性,这主要是为了保障业务的高可用性。即便您的后端服务器目前仅部署在一个可用区,选择多个可用区进行ALB的配置仍然是推荐的做法。这样做可以确保在某一个可用区发生故障时,ALB能够自动将流量切换到另一个健康的可用区,从而维持服务的连续性和稳定性。

阅读协议直接开通即可

4.创建服务器组

创建服务器组并添加后端服务器接收应用型负载均衡ALB转发的客户端请求。

调度算法包括:

加权轮询

加权最小连接数

一致性哈希

可以自定义资源组:

高级配置包括:

开启IPv6:选择是否开启IPv6挂载功能,默认关闭。不开启时,服务器组仅支持挂载IPv4类型的后端服务器;开启IPv6挂载功能后,服务器组支持挂载IPv4、IPv6类型的后端服务器。更多配置信息请查阅创建和管理服务器组

会话保持:选择是否开启会话保持功能,默认关闭。不开启时,ALB会将每个客户端请求分别分发到不同的后端服务器;开启会话保持功能后,ALB会把来自同一客户端的访问请求分发到同一台后端服务器。更多信息请查阅配置会话保持

后端长连接:当开启后端长连接后,ALB到后端服务器之间会维持一定数量的TCP长连接,当新请求到达时,如果有空闲的TCP长连接,ALB优先使用TCP长连接转发请求到后端服务器,从而减少TCP握手建连次数,减轻后端服务器压力。更多配置信息请查阅创建和管理服务器组

慢启动:开启慢启动后,ALB向后端服务器线性增加请求,当配置的慢启动持续时间结束后,负载均衡向后端服务器发送完整的请求份额,此后本次添加的后端服务器退出慢启动模式。

连接优雅中断:开启连接优雅中断后,您可以在移除后端服务器或者健康检查失败后,使现有连接在一定时间内正常传输。

健康检查:选择是否开启健康检查,服务器组类型为服务器类型、IP类型,健康检查默认开启。服务器组类型为函数计算类型,健康检查默认关闭。更多配置信息请查阅健康检查

添加后端服务器:

设置80端口 权重默认

配置结束可以看到已添加的后端服务器及对应的端口

5.配置监听

配置监听转发负载均衡请求

在实例下创建监听

下一步选择服务器类型:

数据压缩:开启将对特定文件类型进行压缩;关闭则不会对任何文件类型进行压缩。目前,Brotli支持压缩所有类型,Gzip支持压缩的类型包括:text/xml text/plain text/css application/javascript application/x-javascript application/rss+xml application/atom+xml application/xml application/json。

查找真实客户端源IP:允许ALB从X-Forwarded-For头字段中查找真实客户端IP

设置可信IP列表:与ALB直接建立连接的源IP如在可信IP列表,ALB将通过X-Forward-For字段获取来访者真实IP;可信IP列表设置为0.0.0.0/0:表示获取X-Forwarded-For请求标头中最左边的地址,即真实客户端源IP

创建成功后:

当后端ECS健康检查状态为正常时表示后端服务器ECS可以正常处理负载均衡实例转发的请求了

6.设置域名解析

添加域名解析并通过域名访问负载均衡服务

复制实例的DNS名称->云解析DNS->添加域名->对已添加的域名进行解析设置->添加记录

可能需要考虑的问题:

用户的真实ip

api日志

X-Forwarded-For头字段可以获取来访者客户端IP地址。

如果经过WAF、CDN、GA等转发,也可以通过X-Forwarded-For字段获取客户端真实IP地址,这些产品默认透传X-Forwarded-For字段

开启慢启动

相关推荐
IvorySQL3 小时前
PostgreSQL 技术日报 (3月9日)|EXPLAIN ANALYZE 计时优化与复制语法讨论
数据库·postgresql·开源
stark张宇6 小时前
MySQL 核心内幕:从索引原理、字段选型到日志机制与外键约束,一篇打通数据库任督二脉
数据库·mysql·架构
倔强的石头_7 小时前
融合数据库架构实践:关系型、JSON与全文检索的“一库多能”深度解析
数据库
星辰员9 小时前
KingbaseES数据库:ksql 命令行用户与权限全攻略,从创建到删除
数据库
华仔啊1 天前
千万别给数据库字段加默认值 null!真的会出问题
java·数据库·后端
随风飘的云2 天前
MySQL的慢查询优化解决思路
数据库
IvorySQL2 天前
PostgreSQL 技术日报 (3月7日)|生态更新与内核性能讨论
数据库·postgresql·开源
赵渝强老师2 天前
【赵渝强老师】金仓数据库的数据文件
数据库·国产数据库·kingbase·金仓数据库
随逸1772 天前
《Milvus向量数据库从入门到实战,手把手搭建语义检索系统》
数据库
神秘的猪头2 天前
🚀 React 开发者进阶:RAG 核心——手把手带你玩转 Milvus 向量数据库
数据库·后端·llm