This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.7.11. 配置 systemd-journald 和 Fluentd
Fluentd 需要从日志 (journal) 中读取数据。因为日志默认设置非常低,它可能无法跟上系统服务的日志记录率,所以日志条目可能会丢失。
				我们推荐设置 RateLimitInterval=1s 和 RateLimitBurst=10000 (如有必要甚至更高)以防止日志丢失条目。
			
7.11.1. 为集群日志记录配置 systemd-journald
随着项目的扩展,默认的日志记录环境可能需要进行一些调整。
例如,如果有缺少日志数据的情况,则可能需要提高 journald 的速率限制。您可以调整在指定时间段内保留的消息数量,以确保集群日志记录在不丢弃日志的情况下不会使用过量资源。
您还可以确定是否压缩日志、日志需要保留的时间、如何存储日志,以及其他设置。
流程
- 使用所需设置创建 - journald.conf文件:- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- 指定是否要在将日志写入文件系统前压缩日志。指定yes来压缩消息,或指定no不压缩信息。默认为yes。
- 2
- 配置是否转发日志信息。每个默认值为no。指定:- 
											ForwardToConsole将日志转发到系统控制台。
- 
											ForwardToKsmg将日志转发到内核日志缓冲。
- 
											ForwardToSyslog将日志转发到 syslog 守护进程。
- 
											ForwardToWall将信息作为墙信息转发给所有登录的用户。
 
- 
											
- 3
- 指定存储日志条目的最长时间。输入秒数。或包括一个单位:" year" 、"month" 、"week" 、"day" 、"h" 或 "m"。输入0来禁用。默认值为1month。
- 4
- 配置速率限制。在RateLimitIntervalSec定义的时间段内,如果接收的日志数量超过了RateLimitBurst指定的值,则以后的所有信息都会被丢弃,直到该时间段结束。建议您设置RateLimitInterval=1s和RateLimitBurst=10000,它们是默认值。
- 5
- 指定日志的存储方式。默认为persistent:- 
											volatile在/var/log/journal/中存储内存中的日志数据。
- 
											persistent把日志保存到磁盘的/var/log/journal/。如果这个目录步存在,systemd 将会创建这个目录。
- 
											auto如果目录存在,把日志保存在/var/log/journal/中。如果不存在,systemd 会临时将日志保存在/run/systemd/journal中。
- 
											none不存储日志。systemd 丢弃所有日志。
 
- 
											
- 6
- 指定在将 ERR, WARNING, NOTICE, INFO 和 DEBUG 日志同步到磁盘上前等待的超时时间。systemd 在接收到 CRIT, ALERT 或 EMERG 日志后会立即进行同步。默认值为1s。
- 7
- 指定日志可以使用的最大值。默认值为8g。
- 8
- 指定 systemd 必须保留多少磁盘空间。默认值为20%。
- 9
- 指定保存在/var/log/journal中的独立日志文件的最大大小。默认值为10M。注意如果删除速率限制,您可能会看到系统日志记录守护进程的 CPU 使用率增加,因为它需要处理在以前可以被限制掉的信息。 如需了解更多关于 systemd 设置的信息,请参阅 https://www.freedesktop.org/software/systemd/man/journald.conf.html。该页面中列出的默认设置可能不适用于 OpenShift Container Platform。 
 
- 将 - journal.conf文件转换为 base64:- export jrnl_cnf=$( cat /journald.conf | base64 -w0 ) - $ export jrnl_cnf=$( cat /journald.conf | base64 -w0 )- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 为 master 或 worker 创建新的 MachineConfig,并添加 - journal.conf参数:- 例如: - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 创建 MachineConfig: - oc apply -f <filename>.yaml - $ oc apply -f <filename>.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 控制器会检测新的 MachineConfig,并生成新的 - rendered-worker-<hash>版本。
- 监控新配置在每个节点中的应用状态: - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow