七层个性化配置
最近更新时间: 2024-10-17 17:10:00
CLB 支持个性化配置功能,允许设置单 CLB 实例的配置参数,如 client_max_body_size,ssl_protocols 等,满足您的个性化配置需求。
说明:
- 个性化配置的个数限制与租户的公网 CLB 配额一致,例如公网 CLB 配额默认为200个,则个性化配置的个数限制为200个。
- 个性化配置的长度限制为64k。
- 当前一个实例仅允许绑定一个个性化配置。
- 个性化配置仅针对负载均衡的七层 HTTP/HTTPS 监听器生效。
CLB 个性化配置参数说明
当前 CLB 的个性化配置支持如下字段:
配置字段 | 默认值/建议值 | 参数范围 | 说明 |
---|---|---|---|
ssl_protocols |
TLSv1 TLSv1.1 TLSv1.2 |
TLSv1 TLSv1.1 TLSv1.2 |
使⽤的 TLS 协议版本。 |
ssl_ciphers | ⻅下⽂ | ⻅下⽂ | 加密套件。 |
client_header_timeout | 60s | [30-120]s | 获取到 Client 请求头部的超时时间, 超时返回408。 |
client_header_buffer_size | 4k | [1-256]k | 存放 Client 请求头部的默认 Buffer ⼤⼩。 |
client_body_timeout | 60s |
[30-120]s |
获取 Client 请求 Body 的超时时间,不是获取整个 Body 的持续 时间,⽽是指空闲⼀段时间没有传输数据的超时时间,超时返回 408。 |
client_max_body_size |
60M |
[1-10240]M |
- 默认配置范围为1M-256M,直接配置即可。 - 最⼤⽀持10240M,即10G。当 client_max_body_size 的配置范围⼤于256M时,必须设置proxy_request_buffering 的值为 off。 |
keepalive_timeout | 75s | [0-3600]s | Client-Server ⻓连接保持时间,设置为0则禁⽤⻓连接。 |
add_header | ⽤户⾃定义添 加 | - | 向客户端返回特定的头部字段,格式为 add_header xxx yyy。 |
more_set_headers | ⽤户⾃定义添 加 | - | 向客户端返回特定的头部字段,格式为 more_set_headers "A:B"。 |
proxy_connect_timeout | 4s | [4-120]s | upstream 后端连接超时时间。 |
proxy_read_timeout | 60s | [30-3600]s | 读取 upstream 后端响应超时时间。 |
proxy_send_timeout | 60s | [30-3600]s | 向 upstream 后端发送请求的超时时间。 |
keepalive_requests | 100 | [1-10000] | Client-Server ⻓连接上最多能发送的请求数量。 |
proxy_buffer_size | 4k |
[1-32]k |
Server 响应头的⼤⼩,默认为 proxy_buffer 中设置的单个缓冲区 ⼤⼩,使⽤ proxy_buffer_size 时,必须同时设置 proxy_buffers。 |
proxy_buffers | 8 4k | [3-8] [4-16]k | 缓冲区数量和缓冲区⼤⼩。 |
proxy_request_buffering |
on |
on, off |
- on 表示缓存客户端请求体:CLB 会缓存请求,全部接收完成后再分块转发给后端 CVM。 - off 表示不缓存客户端请求体:CLB 收到请求后,⽴即转发给后端 CVM,此时会导致后端 CVM 有⼀定性能压⼒。 |
proxy_set_header |
X-Real-Port $remote_port |
- X-Real-Port $remote_port - X-clb-stgw-vip $server_addr - Stgw-request-id $stgw_request_id - X-Forwarded-Port $vport - X-Method $request_method - X-Uri $uri |
- X-Real-Port $remote_port 表示客户端端⼝。 - X-clb-lbid $lbid 表示 CLB 的 LBID,是 CLB 实例的标识。 - Stgw-request-id $stgw_request_id 表示请求 ID (CLB 内部使⽤)。 - X-Forwarded-Port 表示 CLB 监听器的端⼝。 - X-Method 表示客户端请求⽅法。 - X-Uri 表示客户端请求路径URI。 |
send_timeout | 60s | [1-3600]s | 服务端向客户端传输数据的超时时间,是连续两次发送数据的间隔时间,⾮整个请求传输时间。 |
ssl_verify_depth | 1 | [1, 10] | 设置客户端证书链中的验证深度。 |
proxy_redirect | http:// https:// |
http:// https:// | 当上游服务器返回的响应是重定向或刷新请求(如 HTTP 响码是301或者302)时,proxy_redirect 重设 HTTP 头部的 Location 或 Refresh 字段中的 http 为 https ,实现安全跳转。 |
http2_max_field_size | 4k | [1-256]k | 限制 HPACK 压缩的请求头字段的最⼤⼤⼩( Size )。 |
error_page | - |
error_page code [ = [response]] uri | 当发⽣特定错误码(Code)的时候,能够显示⼀个预定义的 URI,默认状态码(Response)为302 。URI 必须是以 / 开头的路径。 |
proxy_ignore_client_abort | off | on, off | 当客户端不等待响应结果主动中断与 CLB 的连接时,配置 CLB 与 后端服务器的连接是否中断。 |
ssl_ciphers 配置说明
配置 ssl_ciphers 加密套件时,格式需同 OpenSSL 使用的格式保持一致。算法列表是一个或多个<cipher strings>
,多个算法间使用“:”隔开,ALL 表示全部算法,“!”表示不启用该算法,“+”表示将该算法排到最后一位 。
默认强制禁用的加密算法为:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!DHE
。
默认值:
ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-CHACHA20-POLY1305:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128:AES256:AES:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!DHE:3DES;
参数范围:
ECDH-ECDSA-AES128-SHA256:ECDH-RSA-AES256-SHA:ECDH-ECDSA-AES256-SHA:SRP-DSS-AES-256-CBC-SHA:SRP-AES-128-CBC-SHA:ECDH-RSA-AES128-SHA256:DH-RSA-AES128-SHA256:DH-RSA-CAMELLIA128-SHA:DH-DSS-AES256-GCM-SHA384:DH-RSA-AES256-SHA256:AES256-SHA256:SEED-SHA:CAMELLIA256-SHA:ECDH-RSA-AES256-SHA384:ECDH-ECDSA-AES128-GCM-SHA256:DH-RSA-AES128-SHA:DH-RSA-AES128-GCM-SHA256:DH-DSS-AES128-SHA:ECDH-RSA-AES128-SHA:DH-DSS-CAMELLIA256-SHA:SRP-AES-256-CBC-SHA:DH-DSS-AES128-SHA256:SRP-RSA-AES-256-CBC-SHA:ECDH-ECDSA-AES256-GCM-SHA384:ECDH-RSA-AES256-GCM-SHA384:DH-DSS-AES256-SHA256:ECDH-ECDSA-AES256-SHA384:AES128-SHA:DH-DSS-AES128-GCM-SHA256:AES128-SHA256:DH-RSA-SEED-SHA:ECDH-ECDSA-AES128-SHA:IDEA-CBC-SHA:AES128-GCM-SHA256:DH-RSA-CAMELLIA256-SHA:CAMELLIA128-SHA:DH-RSA-AES256-GCM-SHA384:SRP-RSA-AES-128-CBC-SHA:SRP-DSS-AES-128-CBC-SHA:ECDH-RSA-AES128-GCM-SHA256:DH-DSS-CAMELLIA128-SHA:DH-DSS-SEED-SHA:AES256-SHA:DH-RSA-AES256-SHA:kEDH+AESGCM:AES256-GCM-SHA384:DH-DSS-AES256-SHA:HIGH:AES128:AES256:AES:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!DHE
CLB 个性化配置示例
登录负载均衡控制台,在左侧导航栏单击个性化配置。
在“个性化配置”页面,单击新建。
在弹出的“配置信息”对话框,填写配置名和代码配置项,代码配置项以;结尾。配置完成后,单击完成。
说明:
默认配置代码示例:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
client_header_timeout 60s;
client_header_buffer_size 4k;
client_body_timeout 60s;
client_max_body_size 60M;
keepalive_timeout 75s;
add_header xxx yyy;
more_set_headers "A:B";
proxy_connect_timeout 4s;
proxy_read_timeout 60s;
proxy_send_timeout 60s;
返回“个性化配置”页面,在右侧“操作”栏下单击绑定至实例。
在弹出的“绑定至实例”对话框中选择需绑定的负载均衡实例,单击提交。
绑定实例后,在“个性化配置”页面单击刚才配置的个性化配置 ID 进入详情页面,单击“绑定实例”页签即可查看到刚才绑定的负载均衡实例。