第 4 章 管理负载均衡服务实例日志
负载均衡服务(octavia)实例(amphorae)生成管理日志和租户流日志。amphorae 使用一组容器或您选择的端点中的其他 syslog 接收器将这些日志卸载到 syslog 接收器的中央位置。此日志卸载功能使管理员能够进入日志的一个位置,并在轮转 amphorae 时保留日志。
虽然默认启用日志卸载,amphorae 仍然会继续将管理和租户流日志写入 amphorae 中的磁盘。但是,如果选择,您可以在本地禁用日志记录。
使用 TCP syslog 协议时,您可以在主端点失败时为管理和租户日志卸载指定一个或多个辅助端点。
您可以控制一系列其他日志记录功能,如设置 syslog facility 值、更改租户流日志格式,以及广泛的管理日志范围,使其包含来自内核和 cron
等源的日志。
4.1. 负载均衡服务实例日志的配置参数
要修改 Load-balancing 服务(octavia)实例(amphora)日志记录配置,请为控制日志记录的一个或多个配置参数设置值,并为负载均衡服务应用 OpenStackControlPlane
自定义资源(CR)。
这些用于 amphora 日志记录的配置参数可让您控制关闭日志卸载等功能,定义自定义端点来卸载日志,为日志设置 syslog 工具值,等等。
octavia Operator 会自动启用日志卸载。
全局日志记录参数
要为所有日志设置配置参数,您必须为每个 octavia 服务在 OpenStackControlerPlane
CR 中添加特定的部分:内务、健康管理器和 worker。在 customServiceConfig.[amphora_agent]
参数下为所有日志添加配置参数。
- 使用示例
octavia: template: octaviaHousekeeping: customServiceConfig: | [amphora_agent] <log configuration parameters go here> octaviaHealthManager: customServiceConfig: | [amphora_agent] <log configuration parameters go here> octaviaWorker: customServiceConfig: | [amphora_agent] <log configuration parameters go here>
disable_local_log_storage=false
-
为
true
时,实例不会将日志存储在实例主机文件系统中。这包括所有内核、系统和安全日志。默认值:false
。 forward_all_logs=true
-
为
true
时,实例将所有日志消息转发到管理日志端点,包括 cron 和内核日志等非负载平衡相关日志。默认:true
。
管理日志记录参数
要设置管理日志记录的配置参数,您必须为每个 octavia 服务在 OpenStackControlerPlane
CR 中添加特定的部分:内务、健康管理器和 worker。除了 adminLogTargets
外,您可以在 customServiceConfig 下为管理日志记录添加配置参数。[amphora_agent]
参数。
- 使用示例
octavia: template: octaviaRsyslog: adminLogTargets: - host: 192.168.1.1 port: 1514 protocol: udp octaviaHousekeeping: customServiceConfig: | [amphora_agent] <administrative logging parameters go here> octaviaHealthManager: customServiceConfig: | [amphora_agent] <administrative logging parameters go here> octaviaWorker: customServiceConfig: | [amphora_agent] <administrative logging parameters go here>
adminLogTargets
描述 syslog 端点以接收管理日志消息的对象列表:
-
Host
: <host> -
端口
: <port> 协议
: <protocol>端点可以是运行容器、虚拟机或物理主机,它正在运行正在侦听指定端口上日志消息的进程。Default :默认值由 octavia Operator 自动设置。
您可以在
octaviaRsyslog
参数下添加adminLogTargets
。
-
administrative_log_facility=<number>
-
0
到7
之间的数字是 syslogLOG_LOCAL
工具,用于管理日志消息。默认:1
。
租户流日志记录参数
要设置租户流日志记录的配置参数,您必须为每个 octavia 服务在 OpenStackControlerPlane
CR 中添加特定的部分:内务、健康管理器和 worker。除 tenantLogTargets
外,您可以在 customServiceConfig 下为租户流日志记录添加配置参数。[amphora_agent]
参数。有关如何设置这些参数的示例,请参阅 第 4.3 节 “禁用负载均衡服务实例租户流日志”。
- 使用示例
octavia: template: octaviaRsyslog tenantLogTargets: - host: 192.168.1.1 port: 1514 protocol: udp octaviaHousekeeping: customServiceConfig: | [amphora_agent] <tenant flow logging parameters go here> [haproxy_amphora] connection_login=true octaviaHealthManager: customServiceConfig: | [amphora_agent] <tenant flow logging parameters go here> [haproxy_amphora] connection_login=true octaviaWorker: customServiceConfig: | [amphora_agent] <tenant flow logging go here> [haproxy_amphora] connection_login=true
connection_login=true | false
-
为
true
时,会记录租户连接流。默认:true
。 tenantLogTargets
描述 syslog 端点以接收租户流量流日志消息的对象列表:
-
Host
: <host> -
端口
: <port> 协议
: <protocol>这些端点可以是运行在指定端口上侦听日志消息的进程的容器、虚拟机或物理主机。Default :默认值由 octavia Operator 自动设置。
您可以在
octaviaRsyslog
参数下添加tenantLogTargets
。
-
user_log_facility=<number>
-
0 到 7 之间的数字,即用于租户流量流日志消息的 syslog "LOG_LOCAL" 工具。默认:
0。
user_log_format="<value>"
租户流量流日志的格式。
Default:
"{{ '{{' }} project_id {{ '}}' }} {{ '{{' }} lb_id {{ '}}' }} %f %ci %cp %t %{+Q}r %ST %B %U %[ssl_c_verify] %{+Q}[ssl_c_s_dn] %b %s %Tt %tsc"
.字母数字字符代表特定的 octavia 字段,大括号({})是替换变量。