Rancher 2.6 全新 Logging 快速入门(2)

本文是 Rancher 2.6 全新 Logging 快速入门的续篇,详细介绍了如何配置审计日志、Kubernetes 组件日志、应用日志、Runtime 日志、事件和节点 Kernel 日志的收集。通过配置 logging-operator,实现了日志的高效管理和输出到 ElasticSearch。文章适合云原生解决方案架构师和 Kubernetes 管理者阅读。
摘要由CSDN通过智能技术生成

作者简介
万绍远,CNCF 基金会官方认证 Kubernetes CKA&CKS 工程师,云原生解决方案架构师。对 ceph、Openstack、Kubernetes、prometheus 技术和其他云原生相关技术有较深入的研究。参与设计并实施过多个金融、保险、制造业等多个行业 IaaS 和 PaaS 平台设计和应用云原生改造指导。

概述

本篇为 Rancher 2.6 全新 Logging 快速入门 的后续,为实际生产配置使用手册。主要介绍以下日志收集配置功能:

  • 审计日志收集;
  • Kubernetes 组件日志收集;
  • 运行在 Kubernetes 上的容器应用日志收集;
  • Runtime 日志收集;
  • Kubernetes 事件收集和节点;
  • 节点 Kernel 日志收集。

Rancher 2.6 日志采用了 logging-operator 方式进行日志管理,对应概念如下:

  • logging:用于定义一个日志采集端 (FleuntBit) 和传输端 (Fleuntd) 服务的基础配置,在 SUSE Rancher 2.6 版本中,已经由 Rancher 自动化部署完成;
  • flow:用于定义一个 namespaces (命名空间)级别的日志过滤、解析和路由等规则;
  • clusterflow:用于定义一个集群级别的日志过滤、解析和路由等规则;
  • output:用于定义 namespace (命名空间)级别的日志的输出和参数,它只能被同命名空间内的 flow 关联;
  • clusteroutput:用于定义集群级别的日志输出和参数,它能把被其他命名空间内的 flow 关联。

Logging 配置使用

ElasticSearch 和 kibana 部署

为了更好地演示效果,这里部署临时的 ElasticSearch 和 kibana 作为演示环境:

docker run -d --name elasticsearch  -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.5.2
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://172.16.1.232:9200 -p 5601:5601 -d kibana:7.5.2

注:将 ELASTICSEARCH_HOSTS 地址修改为实际 ElasticSearch 的地址。

部署完后可通过 http://ip:9200 访问 ElasticSearch,通过 http://ip:5601 访问 Kibana。

启用 Rancher Logging

切换到对应集群,选择 cluster-Tools——>Logging,并勾选自定义 Helm 选项:

systemd Log Path 存储的是系统日志,因为 k3s 和 RKE2 发行版日志都存储在此。因此为了收集此日志,需要进行配置此选项:

要确定目录位置,可在其中一个节点上运行:cat /etc/systemd/journald.conf | grep -E ^\#?Storage | cut -d"=" -f2

  • 如果返回 persistent,则应为: systemdLogPath/var/log/journal
  • 如果返回 volatile,则应为:systemdLogPath/run/log/journal
  • 如果返回 auto,请检查是否存在 /var/log/journal
  • 如果存在 /var/log/journal,则使用 /var/log/journal
  • 如果不存在 /var/log/journal,则使用/run/log/journal
  • SLES15 默认为/run/log/journal

部署前勾选编辑 yaml,进行以下参数修改:

  • 修改 loggint-Operator 的默认配置,如 fluentd 和 fluentbit 默认资源限制和容忍规则,将 fluentbit 部署到 Controller 节点用于系统日志收集。
  • bufferStorageVolume 为 fluentd 收集 fluentbit 的 log buffer 目录,有分布式文件系统存储,建议存储到分布式文件系统中,修改 storageClassName 为实际分布式存储的 stroageclass 名字。如果没有对应存储,可以修改为bufferStorageVolume: {}.

替换以下内容:

f
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值