在SLB中创建监听
创建负载均衡实例后,需要为SLB实例添加一个或多个监听。监听负责监听负载均衡实例上的请求,根据配置流量分配策略,分发流量到后端服务器处理。
前提条件
需要具备AppStage服务运维岗位权限或运维管理员权限,权限申请操作请参见申请权限。
创建监听
- 进入AppStage运维中心。
- 在顶部导航栏选择服务。
- 单击,选择 。
- 选择左侧导航栏的“监听管理”,单击“创建监听”。
- 在“选择电子流”窗口中,选择以下任一方式:
- 运维操作记录选择“关联电子流”,并选择要关联的电子流,单击“提交”。
- 运维操作记录选择“紧急问题处理”,并填写紧急原因,单击“提交”。
- 创建监听基本信息,关联SLB实例,参数说明如表1所示。配置完成后单击“下一步”。
- 单击“新增集群”,创建后端服务器集群,通过SLB进行管理和调度,SLB会将客户端的请求转发给后端服务器处理。参数说明如表2所示。
您也可以单击“导入upstream.conf”,上传txt或config格式的SLB配置文件。将配置文件中的集群信息解析到SLB管理台。
单击集群信息区域右上角的,可以编辑集群配置。
单击集群信息区域右上角的,删除当前集群。
单击“重置集群”,清空所有集群。
表2 新增集群参数说明 参数
说明
基本信息
集群名称
后端服务器集群名称。
字符长度0~150,可以由字母、数字、下划线、短横线、点组成,不能包含特殊字符,不能包含-in-字符,后端服务器为tomcat时,建议不要包含下划线,转发可能返回400,例:Cluster_home-001。
后端协议
后端服务器协议,支持HTTP、HTTPS。
负载均衡策略
- 加权轮询算法:可配权重,根据权重进行轮询,默认权重相同。
- 自定义参数哈希:可以配置nginx变量进行哈希,nginx变量,例如:$http_x_forwarded_for。
- IP哈希:根据发送给SLB请求的IP进行哈希。
说明:
如前面有ELB或者F5,此IP通常为ELB的IP或者F5的IP,因此请慎用。
- 最小连接数:根据服务器的连接数,向连接数最少的服务器优先转发。
自定义参数哈希
负载均衡策略选择为“自定义参数哈希”时,配置此参数。
字符长度0~50,以$符开头,可以由字母、数字、点、下划线、短横线组成,不能包含其他特殊字符,例:$http_x_forwarded_for。
预热参数(当负载均衡策略为“加权轮询算法”时,配置此参数)
预热周期
配置新节点启动后在多长时间范围内进行预热,范围0-30,0表示不开启预热。
预热因子
配置预热增长速率,值越大预热增长速率越快,范围1-100,默认为10,表示匀速增长。
预热延迟
新节点启动后延迟多长时间才进行预热,范围0-30,延迟时间中,节点被选中的概率为0。
自定义参数
自定义参数配置
配置自定义参数。
- 集群创建完成后,单击“新增节点”,在节点列表中配置相关参数,参数说明如表3所示。配置完成后单击“下一步”。
勾选多条节点,单击“批量删除”,可以批量删除节点。
单击“全部勾选”,可以快速勾选当前集群下的所有节点。
单击“清除多选”,取消选择选中的多条节点。表3 新增节点参数说明 参数
说明
IP
节点IP地址。取值范围为0.0.0.0~255.255.255.255,例:127.10.12.10。
端口
节点端口号。由数字组成,大小在0-65535之间,例:8000。
权重
大于0且小于等于100的正整数,例:1。
最大尝试失败次数
对应nginx upstream配置中的max_fails字段。如果后端节点fail_timeout秒内出现max_fails次不可用情况,判定节点不可用。判定不可用后fail_timeout秒内请求不会转发到此节点,直到fail_timeout秒后重新检测节点健康情况;范围为0-1000,默认为3,如果不填,使用默认值。
失效持续时间
对应nginx upstream配置中的fail_timeout字段。如果后端节点fail_timeout秒内出现max_fails次不可用情况,判定节点不可用。判定不可用后fail_timeout秒内请求不会转发到此节点,直到fail_timeout秒后重新检测节点健康情况;范围是0-300秒,默认为2,如果不填,使用默认值。
灰度状态
- 生产
- 灰度
节点状态
- 在线
- 热备
- 下线
主机名
字符长度0~100,可以由字母、数字、下划线、短横线、点组成,不能包含特殊字符,例:host-10-23-0-133。
AZ
字符长度0~100,可以由字母、数字、下划线、短横线、点组成,不能包含特殊字符,例:az_01。
自定义分组
字符长度0~50,可以由字母、数字、下划线、短横线、点组成,不能包含特殊字符,例:group_01。
操作
:删除节点。
- 对后端集群配置健康检查,检查后端服务集群中的机器。参数说明如表4所示,配置完成后单击“下一步”。
表4 健康检查参数说明 参数
说明
集群名称
展示后端服务器集群名称,检查的是后端服务集群里的机器。
域名
输入健康检查的请求域名。
检查路径
检查路径存在,采取的是http/https形式。
后端协议
展示后端服务器协议。
检查连接
单击“测试连接”,测试连接状态。
是否开启健康检查
选择开启或关闭健康检查,默认关闭。
正常状态码
检查到后端服务器状态正常时,返回的状态码。
默认为200、302,可以自定义。
响应超时时间
检查的超时时间,即超过该时间后结束检查。
健康检查周期
每次健康检查的间隔时间。
不健康阈值
选择2~10,当未收到正常状态码的次数大于不健康阈值时,即认定后端服务异常,将该集群中的这台服务器做下线处理。
健康阈值
选择2~10,当收到状态码的次数等于健康阈值时,即认定后端服务正常,将下线的这台服务器上线。
- 配置监听,参数说明如表5所示,配置完成后单击“下一步”。
您也可以单击“导入server.conf”,导入本地SLB配置文件。
- 导入server.conf功能会重置所有配置,请谨慎操作,进行普通配置调整的请勿使用此功能。
- 使用server.conf导入证书,注意是否包含证书相关的配置,如果包含则会被解析到高级配置中的自定义参数配置。如果既选择了证书又导入了证书配置则会产生冲突,请在同步前仔细检查配置文件。
单击“重置”,可以清空监听和转发策略信息。表5 配置监听参数说明 参数
说明
域名
域名
单击“域名”区域的“新增”,配置域名,多个域名不可重复。
端口
端口
配置SLB的监听端口。
协议类型
http、https、http2、http2(ssl)。
端口类型
ipv4、ipv6。
其他配置
填写其他配置。
证书
证书
端口协议类型为https或者http2(ssl)时,在证书选择下拉框中配置证书。
通用配置
最大请求体限制
对应配置文件中client_max_body_size。
请求体缓存大小
对应配置文件中client_body_buffer_size。
响应超时时间
对应配置文件中proxy_read_timeout。
转发超时时间
对应配置文件中proxy_send_timeout。
启用长连接转发
对应配置文件中proxy_http_version 1.1; proxy_set_header Connection ""。
透传请求头Host
对应配置文件中proxy_set_header Host $host。
追加X-Forwarded-For
对应配置文件中proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for。
开启接入日志
对应配置文件中access_log。
异常时尝试下一台
对应配置文件中proxy_next_upstream。
尝试条件
403.404.429.500.502.503.504
error
timeout
转发头设置
转发http请求时,重新设置请求头中的Key对应的Value;对应配置文件中proxy_set_header key value。
重定向
将请求的url指定为另一个url,由客户端重新发起请求到目标url;对应配置文件中rewrite key value redirect。
重写
将请求url重新设置为另一个url然后继续进行处理,对应配置文件中rewrite key value last/break。
高级配置
默认资源根目录
静态资源根目录,配置为SLB上,静态资源根目录(操作系统中的路径),对应配置文件中root。
客户端连接空闲时间
对应配置文件中keepalive_timeout。
Proxy Buffers
响应从后端服务器回来时,使用缓存来接受一定尺寸的响应,对应配置文件中proxy_buffer_size。
默认欢迎页面
访问静态资源目录时,默认的欢迎页面文件指定,对应配置文件中index。
返回固定响应
直接返回固定响应,如2003,对应配置文件中return。
Expires
设定页面缓存时间不缓存或一直使用缓存,可以由字母、数字、空格、$@+-、冒号、逗号组成,对应配置文件中expires。
允许方法
POST、GET、HEAD、PUT、DELETE、OPTIONS、PATCH、MKCOL、COPY、MOVE、PROPFIND、PROPPATCH、LOCK、UNLOCK。
都不选则不限制任何方法,对应配置文件中limit_except。
追加NuwaTrace字段
消息头中透传nuwatrace相关的网元身份标识和时间戳,不支持iac2.0修改。
响应头设置
可在返回给客户端时,增加http响应头(Key和Value),对应配置文件中add_header key value。
set
对应配置文件中set key value。
自定义参数设置
配置nginx配置文件配置项,其中监听中的内容需为server支持的转发策略中的内容,需是location中支持的,例:if ( $arg_sex = "male"){return 401;},不要配置后端集群信息,如有需要请到后端服务器里面配置。
- 单击“新增转发策略”,配置转发策略,参数说明如表6所示,配置完成后单击“下一步”。
- 单击“新增动态路由”,配置动态路由规则,根据特定的匹配规则动态地指定转发策略跳转的集群。参数说明如表7所示,配置完成后单击“下一步”。
单击动态路由规则配置区域右上角的,可以删除配置。
表7 动态路由规则参数说明 参数
说明
规则名称
要求字符长度0~50,可以由字母、数字、下划线、短横线组成,不能包含特殊字符,不能包含-in-字符,不能以-in结尾。
关联转发策略
单击“关联转发策略”,选择需要按照当前规则动态转发后端服务器集群的转发策略,可以多选。只有绑定灰度服务的转发策略才能被动态路由关联,否则不生效。
添加子项
添加一个配置子项。
开关
关闭时规则不生效。
过滤条件
采用灰度部分的自定义表达式,语法详细信息见页面弹出框。
后端服务器集群
满足前面过滤条件的请求,要跳转的目标集群。
启用灰度
选择启用或关闭。
- 关闭:转发到生产+灰度的大集群。
- 启用:转发到灰度结果对应的生产或灰度集群。
操作
- 上移/下移:各个子项可以上移,下移,匹配顺序为从上往下,匹配到条件后,就不往下匹配,都匹配不上时,采用default的默认集群。
- 删除:删除子项。
- 在总览页面确认配置信息,单击“保存”。
您也可以单击各配置项右上角的“编辑”,修改当前配置。
配置数据只是保存到数据库中,如需将监听服务应用到SLB,还需要执行同步操作。
如果未保存直接退出,系统会自动保存当前配置,再次进入创建监听,可以继续编辑。
如果需要清空配置,您可以单击“创建监听”页面的“重置所有”清空所有配置。
更多操作
操作 |
说明 |
---|---|
编辑监听配置 |
单击监听列表中的监听名称,在“监听详情”页面选择待编辑的配置项页签,单击“编辑”,编辑监听配置。 |
导出集群配置 |
单击监听列表中的监听名称,选择“后端服务器”页签,单击“导出集群”,用于快速复制或迁移数据,在创建监听过程中快速导入集群配置。 |
刷新健康检查 |
单击监听列表中的监听名称,选择“后端服务器”页签,单击“刷新健康检查”,检查后端服务集群中的机器,刷新节点状态。 |
导出SLB监听的所有信息 |
单击监听列表中的监听名称,在页面右上角选择 ,导出SLB监听的所有信息(SLB实例、后端服务器、健康检查、监听、转发策略、动态路由规则等),用于整个数据的复制和迁移,在新增页面快速导入所有信息。 |
导出IAC信息 |
单击监听列表中的监听名称,在页面右上角选择 ,导出SLB服务的所有IAC信息(SLB实例、后端服务器、健康检查、监听、转发策略、动态路由规则等),可作为实例执行IAC变更。 |
导出IAC关联信息 |
单击监听列表中的监听名称,在页面右上角选择 ,导出IAC关联信息。 |
同步监听 |
单击监听列表操作列的“同步”,将监听配置数据同步到SLB,具体介绍请参见将监听配置同步到SLB节点。 |
预览配置文件 |
单击监听列表操作列的“配置文件预览”,查看配置文件,单击窗口左下角的“复制”,可以复制配置文件。 |
删除监听 |
选择监听列表操作列的 ,删除后,SLB服务将会变为待删除状态,在单击同步后,配置会在SLB节点上删除。如果想变为正常状态,编辑SLB服务并保存即可。 |