5.6. systemd 单元和 pmlogger
当您部署 pmlogger
服务时,无论是作为监控自身的单个主机,还是作为一个具有从多个远程主机收集指标的单个主机的 pmlogger
场,都会自动部署几个关联的 systemd
服务和计时器单元。这些服务和计时器提供常规检查,以确保 pmlogger
实例在运行,重启任何缺少的实例,并执行存档管理,如文件压缩。通常由 pmlogger 部署的检查和内务服务有:
- pmlogger_daily.service
-
默认情况下,每天午夜后不久运行,以聚合、压缩和轮转一个或多个 PCP 存档的集合。另外,剔除超过限制的旧存档,默认为 2 周。由
pmlogger_daily.timer
单元触发,这是pmlogger.service
单元所需要的。 - pmlogger_check
-
执行半小时检查
pmlogger
实例是否正在运行。重启任何缺少的实例,并执行任何所需的压缩任务。由pmlogger_check.timer
单元触发,这是pmlogger.service
单元所需要的。 - pmlogger_farm_check
-
检查所有配置的
pmlogger
实例的状态。重启任何缺少的实例。将所有非主实例迁移到pmlogger_farm
服务。由pmlogger
_farm_check.timerpmlogger_farm.service
单元要求。
这些服务通过一系列正依赖项进行管理,这意味着它们在激活主 pmlogger 实例时都启用。请注意,虽然 pmlogger_daily.service
默认被禁用,但 pmlogger_daily.timer
通过 pmlogger.service
的依赖项被激活将触发 pmlogger_daily.service
运行。
pmlogger_daily
也与 pmlogrewrite
集成,以便在合并前自动重写存档。这有助于确保元数据在更改生产环境和 PMDA 时的一致性。例如,如果在日志间隔期间更新一个监控的主机上的 pmcd
,则主机上一些指标的语义可能会被更新,从而使新存档与该主机上之前记录的存档不兼容。