LogCollector 支持自动升级和手动升级,本文档介绍升级 LogCollector 的操作步骤。
LogCollector 是日志服务提供的日志采集工具,为保证日志采集的稳定性与效率,日志服务建议您始终选用最新版本的 LogCollector 采集服务器日志。为便于版本更新与迭代,日志服务提供自动升级和手动升级两种升级方式。
升级方式 | 说明 |
---|---|
自动升级 | 创建机器组时,如果开启了LogCollector 自动升级,表示启用自动升级功能。 说明 弹性容器实例 VCI场景下,暂不支持 LogCollector 自动升级,需手动替换镜像。 启用自动升级,请参考自动升级。 |
手动升级 | 关闭了LogCollector 自动升级功能的机器组,或不满足 LogCollector 版本要求的机器组,只能手动升级 LogCollector。 |
开启自动升级之后,日志服务会在每天的指定时间段对指定机器组进行以下升级前检查,仅在满足所有升级条件的情况下才会执行自动升级操作。
检查项 | 说明 |
---|---|
当前的 LogCollector 版本是否为 V1.0.8 及后续版本。 | 仅 V1.0.8 及后续版本的 LogCollector 支持自动升级。 |
当前的 LogCollector 版本是否为最新版本。 | 日志服务会定期检查 LogCollector 的版本更新情况,若有版本更新,才会进行下一步升级前检查。 |
LogCollector 的心跳状态是否为正常。 | 心跳状态失败的 LogCollector 无法自动升级,请参考机器组心跳问题排查进行心跳排查。 |
说明
弹性容器实例 VCI场景下,暂不支持 LogCollector 自动升级,需手动替换镜像。
说明
手动升级 LogCollector 时,需要备份旧版本的断点文件目录及采集配置文件目录,并在卸载、重装 LogCollector 后拷贝回原目录。
手动升级步骤如下:
执行以下命令停止运行旧版本 LogCollector。
systemctl stop filebeatd.service
备份旧版本中的断点文件目录(/usr/local/filebeat-7.12.0/data
)和采集配置文件目录(/usr/local/filebeat-7.12.0/etc
)到其他目录,例如备份至 /tmp/LogCollector-backup
目录。
mkdir -p /tmp/LogCollector-backup cp -r /usr/local/filebeat-7.12.0/data /tmp/LogCollector-backup cp -r /usr/local/filebeat-7.12.0/etc /tmp/LogCollector-backup
卸载旧版本 LogCollector。
您可以选择如下一种方式进行卸载。
cd /usr/local/filebeat-7.12.0/tools/ && ./filebeat.sh uninstall
cd /usr/local/filebeat-7.12.0/tools/ && ./logcollector.sh uninstall
下载并安装最新版本的 LogCollector。
下载 LogCollector。
此处以华北2(北京)私网下载地址为例,详细地址说明请参考1 下载 LogCollector。
wget https://logcollector-cn-beijing.tos-cn-beijing.ivolces.com/logcollector.sh -O logcollector.sh; chmod 755 logcollector.sh
安装 LogCollector。
命令中的endpoint
、secret_id
、secret_key
和 region
参数配置请参考2 安装并启动 LogCollector。
说明
安装后提示是否运行 LogCollector 时,请选择不运行。
sudo ./logcollector.sh install --endpoint {endpoint} --secret_id {AccessKeyID} --secret_key {AccessKeySecret} --region {region}
复制步骤 2 中所备份的断点文件目录和采集配置文件目录到新版本 LogCollector 目录下。
注意
如果未备份并覆盖相关目录和配置,或者安装后直接启动 LogCollector,可能会造成日志采集异常,例如重复采集日志或 LogCollector 采集配置丢失。
cp -r /tmp/LogCollector-backup/data /usr/local/filebeat-7.12.0/ cp -r /tmp/LogCollector-backup/etc /usr/local/filebeat-7.12.0/
启动 LogCollector。
systemctl start filebeatd.service