5.7. 创建负载均衡服务运行状况监控器
使用负载均衡服务(octavia)运行状况监视器以避免用户中断服务。运行状况监视器在每个后端服务器上运行定期健康检查,以预先检测失败的服务器,并从 OpenShift (RHOSO)环境中的 Red Hat OpenStack Services 中的池临时拉取服务器。
先决条件
-
管理员已为您创建一个项目,并为您提供了一个
clouds.yaml
文件来访问云。 python-openstackclient
软件包驻留在您的工作站上。$ dnf list installed python-openstackclient
流程
确认为您的云设置了系统
OS_CLOUD
变量:$ echo $OS_CLOUD my_cloud
如果需要,重置变量:
$ export OS_CLOUD=my_other_cloud
作为替代方案,您可以在每次运行
openstack
命令时添加--os-cloud <cloud_name
> 选项指定云名称。使用适合您的站点的参数值,运行
openstack loadbalancer healthmonitor create
命令。所有健康监控器类型都需要以下可配置参数:
<pool>
- 要监控的后端成员服务器池的名称或 ID。
--type
-
运行状况监视器的类型。
HTTP
,HTTPS
,PING
,SCTP
,TCP
,TLS-HELLO
, 或UDP-CONNECT
之一。 --delay
- 健康检查之间等待的秒数。
--timeout
-
等待任何给定健康检查完成的秒数。
超时
必须总是小于延迟
。 --max-retries
- 在被视为 down 之前,后端服务器的健康检查必须失败。另外,失败的后端服务器必须通过的健康检查数量必须再次被视为 up。
另外,HTTP 运行状况监控器类型还需要以下参数,这些参数默认设置:
--url-path
-
应该从后端服务器检索的 URL 的路径部分。默认情况下,这是
/
。 --http-method
-
用于检索
url_path
的 HTTP 方法。默认为GET
。 --expected-codes
指明 OK 健康检查的 HTTP 状态代码列表。默认值为
200
。Example
$ openstack loadbalancer healthmonitor create --name my-health-monitor --delay 10 --max-retries 4 --timeout 5 --type TCP lb-pool-1
验证
-
运行
openstack loadbalancer healthmonitor list
命令,并验证您的运行状况监视器是否正在运行。