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字段

开启慢启动

相关推荐
q***23925 分钟前
数据库操作与数据管理——Rust 与 SQLite 的集成
数据库·rust·sqlite
q***33379 分钟前
给SQL server数据库表字段添加注释SQL,附修改、删除注释SQL及演示
数据库·sql·oracle
百***221220 分钟前
mysql 迁移达梦数据库出现的 sql 语法问题 以及迁移方案
数据库·sql·mysql
_Jimmy_22 分钟前
ShardingSphere-JDBC 实现两个mysql数据库的不同表的关联查询
数据库·mysql
CS_浮鱼23 分钟前
【Linux】进程控制
linux·运维·网络
weixin_3077791344 分钟前
基于AWS的应用程序可靠性提升架构优化方案——RDS多可用区与EC2弹性架构实践
数据库·数据仓库·架构·云计算·aws
Chan161 小时前
【 Java八股文面试 | Redis篇 缓存问题、持久化、分布式锁 】
java·数据库·redis·后端·spring·缓存·面试
G***T6911 小时前
PostgreSQL全文搜索教程,中文分词配置
数据库·postgresql·中文分词
渡我白衣1 小时前
深入 Linux 内核启动:从按下电源到用户登录的全景解剖
java·linux·运维·服务器·开发语言·c++·人工智能
三川6981 小时前
1. 网络编程基础
开发语言·网络