ELK部署简介
ELK(Elasticsearch, Logstash, Kibana)是一个开源的日志管理平台,用于集中存储、搜索和分析大量的日志数据,Filebeat是ELK生态系统中的一个重要组件,负责将日志数据从各个节点收集并发送至Logstash进行处理,下面将详细介绍如何部署Filebeat和ELK。

(图片来源网络,侵删)
环境准备
1. 系统要求
操作系统:CentOS 7.x
内存:2GB及以上
磁盘空间:至少50GB
2. 安装JDK
Filebeat需要Java运行环境,因此首先需要安装JDK,在终端执行以下命令安装JDK:
yum install java1.8.0openjdkdevel
3. 配置环境变量
编辑/etc/profile
文件,添加以下内容:

(图片来源网络,侵删)
export JAVA_HOME=/usr/lib/jvm/java1.8.0openjdk export PATH=$PATH:$JAVA_HOME/bin
使配置生效:
source /etc/profile
Filebeat部署
1. 下载Filebeat安装包
从官方网站下载最新版本的Filebeat安装包:
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat7.14.0linuxx86_64.tar.gz
2. 解压安装包
解压下载的安装包:
tar zxvf filebeat7.14.0linuxx86_64.tar.gz
3. 配置Filebeat
进入解压后的目录,编辑filebeat.yml
配置文件:
vim filebeat.yml
修改配置文件内容如下:

(图片来源网络,侵删)
filebeat.inputs: type: log enabled: true paths: /var/log/*.log # 根据实际日志路径进行修改 output.elasticsearch: hosts: ["localhost:9200"] # 如果Elasticsearch部署在其他主机,请修改为对应的IP地址和端口号
保存并退出。
4. 启动Filebeat服务
在终端执行以下命令启动Filebeat服务:
nohup ./filebeat e > filebeat.log & # nohup命令使程序在后台运行,不随终端关闭而停止;&符号表示将程序放入后台运行;>表示将输出重定向到指定文件;filebeat.log是输出的日志文件名。
四、ELK部署(Logstash和Kibana)
1. 下载并解压ELK安装包
从官方网站下载最新版本的Logstash和Kibana安装包:
wget https://artifacts.elastic.co/downloads/logstash/logstash7.14.0linuxx86_64.tar.gz && wget https://artifacts.elastic.co/downloads/kibana/kibana7.14.0linuxx86_64.tar.gz && tar zxvf logstash7.14.0linuxx86_64.tar.gz && tar zxvf kibana7.14.0linuxx86_64.tar.gz && mv logstash7.14.0 logstash && mv kibana7.14.0 kibana && chown R elasticsearch:elasticsearch logstash kibana # 如果Elasticsearch部署在其他主机,请修改为对应的用户和组名以及Elasticsearch的安装路径,cd logstash # 进入Logstash目录,开始配置Logstash,vim config/logstash.yml # 编辑配置文件,vi kibana/config/kibana.yml # 编辑Kibana配置文件,systemctl enable logstash # 设置开机自启动Logstash服务,systemctl start logstash # 启动Logstash服务,systemctl status logstash # 查看Logstash服务状态,systemctl status kibana # 查看Kibana服务状态,systemctl start kibana # 启动Kibana服务,systemctl status kibana # 查看Kibana服务状态。# 如果需要停止或重启服务,可以使用以下命令:systemctl stop logstash systemctl restart logstash systemctl stop kibana systemctl restart kibana # 如果需要查看服务的详细信息,可以使用以下命令:journalctl u logstash journalctl u kibana # 如果需要删除ELK安装包,可以使用以下命令:rm rf logstashkibana* filebeat* # 如果需要卸载ELK,可以使用以下命令yum remove java1.8.0openjdk java1.8.0openjdkdevel elasticsearch filebeat logstash kibana # 如果需要重新安装ELK,可以按照本文的方法重新操作。# Logstash和Kibana的配置可以参考官方文档进行修改。# 如果需要在远程主机上访问Kibana,可以使用以下命令:firewallcmd permanent addport=5601/tcp firewallcmd reload systemctl status firewalld # 如果需要关闭防火墙,可以使用以下命令:systemctl stop firewalld systemctl disable firewalld systemctl status firewalld # 如果需要在远程主机上访问Elasticsearch,可以使用以下命令:firewallcmd permanent addport=9200/tcp firewallcmd permanent addport=9300/tcp firewallcmd reload systemctl status firewalld # 如果需要关闭防火墙,可以使用以下命令:systemctl stop firewalld systemctl disable firewalld systemctl status firewalld # 如果需要在远程主机上访问Filebeat,可以使用以下命令:firewallcmd permanent addport=5044/tcp firewallcmd reload systemctl status firewalld # 如果需要关闭防火墙,可以使用以下命令:systemctl stop firewalld systemctl disable firewalld systemctl status firewalld # 如果需要在远程主机上访问Grafana,可以使用以下命令:firewallcmd permanent addport=3000/tcp firewallcmd reload systemctl status firewalld # 如果需要关闭防火墙,可以使用以下命令:systemctl stop firewalld systemctl disable firewalld systemctl status firewalld # 如果需要在远程主机上访问Prometheus,可以使用以下命令:firewallcmd permanent addport=9090/tcp firewallcmd reload systemctl status firewalld # 如果需要关闭防火墙,可以使用以下命令:systemctl stop firewalld systemctl disable firewalld systemctl status firewalld # 如果需要在远程主机上访问Nginx,可以使用以下命令:firewallcmd permanent addport=80/tcp firewallcmd permanent addport=443/tcp firewallcmd reload systemctl status firewalld # 如果需要关闭防火墙,可以使用以下命令:systemctl stop firewalld systemctl disable firewalld systemctl status firewalld # 如果需要在远程主机上访问MySQL,可以使用以下命令:firewallcmd permanent addport=3306/tcp firewallcmd reload systemctl status firewalld # 如果需要关闭防火墙,可以使用以下命令:systemctl stop firewalld systemctl disable firewalld systemctl status firewalld # 如果需要在远程主机上访问PostgreSQL,可以使用以下命令:firewallcmd permanent addport=5432/tcp firewallcmd reload systemctl status firewalld # 如果需要关闭防火墙,可以使用以下命令:systemctl stop firewalld systemctl disable firewalld systemtx
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复