在 CentOS 上升级 Filebeat,常见有两种方式:RPM 包升级(官方推荐)和 手动替换二进制。下面按最常见场景一步步说明,并给出注意事项。
filebeat version
或
rpm -qa | grep filebeat
查看仓库配置:
ls /etc/yum.repos.d/ | grep elastic
常见文件:
elastic-8.x.repo
elastic-7.x.repo
如果没有,先添加(以 8.x 为例):
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
sudo tee /etc/yum.repos.d/elastic-8.x.repo <<EOF
[elastic-8.x]
name=Elastic repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
如果是 7.x,把
8.x改成7.x
sudo yum clean all
sudo yum makecache
sudo yum update filebeat
或(等价):
sudo yum install filebeat
sudo systemctl restart filebeat
sudo systemctl status filebeat
cd /tmp
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.12.2-x86_64.rpm
版本号可到官网查看: https://www.elastic.co/downloads/beats/filebeat
sudo systemctl stop filebeat
sudo rpm -Uvh filebeat-8.12.2-x86_64.rpm
sudo systemctl daemon-reload
sudo systemctl start filebeat
Filebeat 升级 不会覆盖 配置文件,但新版本可能:
建议升级前检查:
filebeat test config
必须阅读官方升级文档
常见变化:
setup.template 方式变化ilm.enabled 默认行为官方文档:
https://www.elastic.co/guide/en/beats/filebeat/current/upgrading.html
cp -a /etc/filebeat /etc/filebeat.bak
filebeat version
systemctl status filebeat
journalctl -u filebeat -xe
filebeat test config
检查是否启用了正确仓库:
yum repolist
yum info filebeat
如果你能告诉我:
我可以给你 精确升级命令和兼容性建议。