日志清理的目的是为了释放磁盘存储空间。对于重要日志信息,运维人员可以先考虑备份后再做清理。日常巡检中,考虑清理的日志有:
1、所有管理节点的 gc_recover 日志
gc_recover 进程服务是集群数据一致性同步服务,在各 gcluster 节点上运行。集群在执行 DDL、DML 语句时,因某种原因,出现有的节点执行成功、有的节点执行失败。gcware 探测到集群节点之间出现数据不一致后,会调用任意 gcluster节点的 gc_recover进程,gc_recover 进程解析FEVENTLOG 并调度执行DDLEVENT、DMLEVENT、DMLSTORAGEEVENT 的同步进行自动恢复。
gc_recover 日志记录了集群自动恢复的相关信息,如:出现分片不一致的时间、节点和具体分片标识,以及调用了哪个好的节点分片进行修复等信息。gc_recover 进程会循环恢复不一致的数据,直到集群所有数据恢复正常为止。
查看 gc_recover 日志的磁盘占用情况:
du -sh /集群安装目录/gcluster/log/gcluster/gc_recover.log
清理该日志时,删除集群各 gcluster 节点上的该日志文件即可。
2、所有管理节点的 GCware 日志
GCware 作为 GBase 8a 集群的管理集群模块,主要负责管理整个集群的一致性。包括集群所有节点的服务进程一致性和数据一致性。gcware 会定时探测集群的服务进程以及数据是否一致,发现不一致会自动调用相关服务进行自动恢复。GCware 日志主要记录各个节点的服务状态变化(节点网络离线上线等信息)、整个集群一致性资源的分配记录(TableID、SCN、锁等)、以及集群数据不一致时调用 gc_recover 服务的信息记录等。巡检时,如果集群状态良好且磁盘占用过多,可考虑清理此日志。
查看 GCware 日志的磁盘占用方法如下:
du -sh /集群安装目录/gcware/log/
3、所有管理节点的加载日志
加载日志有三类:
- 加载结果日志:记录加载任务成功与否和执行时间等。
- 错误信息日志:记录未加载成功的源数据。
- 溯源信息日志:记录加载失败原因,定位错误数据位置。
默认情况下,集群开启日志自动汇总功能。各节点上的加载日志会自动汇总到执行加载任务的节点,其保存位置在“/集群安装目录/gcluster/log/gcluster/loader_logs/ 任务 id 目录”下。假如,人为关闭日志自动汇总功能:set global gbase_loader_logs_collect=0,加载日志会默认存储在各加载节点的/opt/gnode/log/gbase/loader_logs 目录下。强烈建议不要关闭日志自动汇总功能。当加载数据成功入库后,加载日志不再那么重要,为释放磁盘空间可考虑清理。
查看加载日志占用空间的方法如下:
du -sh /集群安装目录/gcluster/log/gcluster/loader_logs/
4、所有数据节点的同步日志
gnode 节点的每个表分片在同步的时候都会分别产生 sync_client 和 sync_server 的日志文件,这些日志文件存储在 gnode/log/gbase/sync_log 目录下。如果每天有同步执行,会随着时间逐渐增加,产生大量的同步日志,占用大量磁盘空间。巡检时,若发现目录空间占用很大,可先排查一下原因再对所有同步日志压缩转储,之后删除该日志。
查看方法:
du -sh /集群安装目录/gnode/log/gbase/sync_log