第 5 章 管理负载均衡服务实例日志


您可以启用租户流日志记录或阻止日志记录到 amphora 本地文件系统。您还可以将管理或租户流日志转发到一组容器中的 syslog 接收器,或者在您选择的端点处其他 syslog 接收器。

当您选择使用 TCP syslog 协议时,您可以在主端点失败时为管理和租户日志卸载指定一个或多个次要端点。

另外,您可以控制一系列其他日志功能,如设置 syslog facility 值、更改租户流日志格式,以及广泛的管理日志记录范围,使其包含来自内核和 cron 的源的日志。

5.1. 启用负载均衡服务实例管理日志卸载

默认情况下,负载均衡服务实例(amphorae)将日志存储在 systemd 日志中的本地机器上。但是,您可以指定 amphorae 卸载日志到 syslog 接收器,以汇总管理日志。日志卸载可让管理员进入日志的一个位置,并在轮转 amphorae 时保留日志。

流程

  1. stack 用户身份登录 undercloud 主机。
  2. 提供 undercloud 凭证文件:

    $ source ~/stackrc
  3. 创建自定义 YAML 环境文件。

    示例

    $ vi /home/stack/templates/my-octavia-environment.yaml

  4. parameter_defaults 下的 YAML 环境文件中,将 OctaviaLogOffload 设置为 true

    parameter_defaults:
        OctaviaLogOffload: true
        ...
    注意

    amphorae 卸载管理日志默认使用 local1 的 syslog 工具值,除非您使用 OctaviaAdminLogFacility 参数指定另一个值。有效值为 0 iwl-wagon7。

    示例

    parameter_defaults:
        OctaviaLogOffload: true
        OctaviaAdminLogFacility: 2
        ...

  5. amphorae 仅转发与负载均衡器相关的管理日志,如 haproxy admin 日志、keepalived 和 amphora 代理日志。如果要配置 amphorae 从 amphorae 发送所有管理日志,如内核、系统和安全日志,请将 OctaviaForwardAllLogs 设置为 true

    示例

    parameter_defaults:
        OctaviaLogOffload: true
        OctaviaForwardAllLogs: true
        ...

  6. 选择日志协议:UDP (默认)或 TCP。

    如果主端点失败,则 amphorae 只有在日志协议是 TCP 时将其日志发送到二级端点。

    parameter_defaults:
        OctaviaLogOffload: true
        OctaviaConnectionLogging: false
        OctaviaLogOffloadProtocol: tcp
        ...
  7. amphorae 使用由编排服务(heat)定义的一组默认容器,其中包含侦听日志消息的 syslog 接收器。如果要使用不同的端点集合,您可以使用 OctaviaAdminLogTargets 参数指定它们。

    为租户流日志卸载配置的端点可以是用于管理日志卸载的端点。

    另外,如果您的日志卸载协议是 TCP,如果第一个端点无法访问,则 amphorae 将按照您列出它们的顺序尝试额外的端点,直到连接成功为止。

    OctaviaAdminLogTargets: <ip_address>:<port>[, <ip_address>:<port>]

    示例

    parameter_defaults:
        OctaviaLogOffload: true
        OctaviaLogOffloadProtocol: tcp
        OctaviaAdminLogTargets: 192.0.2.1:10514, 2001:db8:1::10:10514
        ...

  8. 默认情况下,当您启用日志卸载时,租户流日志也会被卸载。

    如果要禁用租户流日志卸载,请将 OctaviaConnectionLogging 设置为 false

    示例

    parameter_defaults:
        OctaviaLogOffload: true
        OctaviaConnectionLogging: false
        ...

  9. 运行部署命令,并包含核心 heat 模板、环境文件以及新的自定义环境文件。

    重要

    环境文件的顺序非常重要,因为后续环境文件中定义的参数和资源具有优先权。

    示例

    $ openstack overcloud deploy --templates \
    -e [your-environment-files] \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/octavia.yaml \
    -e /home/stack/templates/my-octavia-environment.yaml

验证

  • 除非使用 OctaviaAdminLogTargetsOctaviaTenantLogTargets 指定特定端点,否则 amphorae 卸载日志位于与其他 RHOSP 日志相同的位置(/var/log/containers/octavia-amphorae/)。
  • 检查以下日志文件是否存在适当的位置:

    • 用于管理日志的 Octavia-amphora.log-- 日志文件。
    • (如果启用) octavia-tenant-traffic.log-- Log 文件用于租户流量流日志。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.