36.11. 更改聚合日志记录驱动程序


对于聚合日志,建议使用 json-file 日志驱动程序。

重要

使用 json-file 驱动程序时,请确保使用 Docker 版本 docker-1.12.6-55.gitc4618fb.el7_4 now 或更高版本。

Fluentd 通过检查 /etc/docker/daemon.json/etc/sysconfig/docker 文件来确定驱动程序 Docker 正在使用。

您可以通过 docker info 命令确定 Docker 正在使用哪些驱动程序:

# docker info | grep Logging

Logging Driver: journald
Copy to Clipboard Toggle word wrap

进入 json-file

  1. 修改 /etc/sysconfig/docker/etc/docker/daemon.json 文件。

    例如:

    # cat /etc/sysconfig/docker
    OPTIONS=' --selinux-enabled --log-driver=json-file --log-opt max-size=1M --log-opt max-file=3 --signature-verification=False'
    
    cat /etc/docker/daemon.json
    {
    "log-driver": "json-file",
    "log-opts": {
    "max-size": "1M",
    "max-file": "1"
    }
    }
    Copy to Clipboard Toggle word wrap
  2. 重启 Docker 服务:

    systemctl restart docker
    Copy to Clipboard Toggle word wrap
  3. 重启 Fluentd。

    警告

    同时,在超过 dozen 节点上重启 Fluentd 会在 Kubernetes 调度程序上创建一个大型负载。在使用以下指示重启 Fluentd 时要小心谨慎。

    重启 Fluentd 的方法有两种。您可以在一个节点或一组节点或所有节点中重启 Fluentd。

    1. 以下步骤演示了如何在一个节点或一组节点上重启 Fluentd。

      1. 列出运行 Fluentd 的节点:

        $ oc get nodes -l logging-infra-fluentd=true
        Copy to Clipboard Toggle word wrap
      2. 对于每个节点,删除标签并关闭 Fluentd:

        $ oc label node $node logging-infra-fluentd-
        Copy to Clipboard Toggle word wrap
      3. 验证 Fluentd 已关闭:

        $ oc get pods -l component=fluentd
        Copy to Clipboard Toggle word wrap
      4. 对于每个节点,重启 Fluentd:

        $ oc label node $node logging-infra-fluentd=true
        Copy to Clipboard Toggle word wrap
    2. 以下步骤演示了如何重启 Fluentd 所有节点。

      1. 在所有节点上关闭 Fluentd:

        $ oc label node -l logging-infra-fluentd=true --overwrite logging-infra-fluentd=false
        Copy to Clipboard Toggle word wrap
      2. 验证 Fluentd 已关闭:

        $ oc get pods -l component=fluentd
        Copy to Clipboard Toggle word wrap
      3. 在所有节点上重启 Fluentd:

        $ oc label node -l logging-infra-fluentd=false --overwrite logging-infra-fluentd=true
        Copy to Clipboard Toggle word wrap
      4. 验证 Fluentd 是否存在:

        $ oc get pods -l component=fluentd
        Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat