一、系统配置
操作系统:CentOS7.6 2C4G (单节点)
服务版本:elastisearch 7.7.1、logstash 7.7.1、kibana 7.7.1
elastic官网地址:https://www.elastic.co/cn/
elastic产品地址:https://www.elastic.co/cn/elastic-stack
yum源地址:https://mirrors.tuna.tsinghua.edu.cn/elasticstack/yum
二、部署步骤
1.安装JDK
yum安装:
yum install java -y
或者自行下载JDK配置环境变量
2.配置ELK yum源
vi /etc/yum.repos.d/elk.repo
[ELK]
name=ELK-Elasticstack
baseurl=https://mirrors.tuna.tsinghua.edu.cn/elasticstack/yum/elastic-7.x/
gpgcheck=0
enabled=1
3.部署elasticsearch
3.1.安装elasticsearch
yum install -y elasticsearch-7.7.1
3.2.修改配置文件
vi /etc/elasticsearch/elasticsearch.yml
cluster.name: es-test
node.name: node-1
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 192.168.7.114 # 自己服务器IP
http.port: 9200
discovery.seed_hosts: ["192.168.7.114"] # 自己服务器IP
cluster.initial_master_nodes: ["node-1"] # 跟node.name一致
3.3.添加防火墙
systemctl restart firewalld
firewall-cmd --add-port=9200/tcp --permanent
firewall-cmd --reload
3.4.启动elasticsearch服务
systemctl restart elasticsearch
#查看端口监听
netstat -anpt
验证
页面访问http://ip:9200,出现如下界面,说明启动成功
4.部署kibana
Kibana是node.js 编写的,不需要java环境,直接安装即可。
4.1.安装kibana
yum install -y kibana-7.7.1
4.2.修改配置文件
vi /etc/kibana/kibana.yml
server.port: 5601
server.host: “192.168.7.114” # 自己服务器IP
elasticsearch.hosts: [“http://192.168.7.114:9200”] # 自己服务器IP
4.3.添加防火墙
firewall-cmd --add-port=5601/tcp --permanent
firewall-cmd --reload
4.4.启动kibana
systemctl restart kibana
4.5.验证
浏览器上输入:http://ip:5601,出现以下界面,则安装成功。同时由于启动较慢,可多刷新几次。
5.部署logstash
由于直接使用yum install -y logstash-7.7.1,无法启动,所以这里使用rpm安装方式。
5.1.下载安装包
curl -LO https://mirrors.tuna.tsinghua.edu.cn/elasticstack/yum/elastic-7.x/7.7.1/logstash-7.7.1.rpm
5.2.安装logstash
rpm -ivh logstash-7.7.1.rpm
5.3.修改配置文件
vim /etc/logstash/logstash.yml
http.host: "192.168.7.114" # 自己服务器IP
http.port: 9600-9700
5.4.增加配置
vi /etc/logstash/conf.d/logstash.conf
根据实际需求来配置该文件,示例:
input { tcp { port => 9601 codec => "json" } } output { elasticsearch { hosts => ["192.168.7.114:9200"] # 自己服务器IP index => “logstash-%{+YYYY.MM.dd}” } }
5.5.添加防火墙
firewall-cmd --add-port=5044/tcp --permanent
firewall-cmd --add-port=9600/tcp --permanent
firewall-cmd --reload
5.6.启动logstash
systemctl restart logstash
5.7.验证
在/usr/share/logstash/bin目录下,通过执行./logstash -e 'input { stdin { } } output { stdout {} }',然后在输入hello,出现如下界面说明,logstash可以正常使用。
6.部署filebeat
在需要收集日志的服务器上安装filebeat。
6.1.安装filebeat
curl -LO https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.7.1-x86_64.rpm
6.2.修改配置文件,配置采集日志及日志输出位置
vi /etc/filebeat/filebeat.yml
# 配置需要采集的日志
# 配置采集日志输出位置,修改配置将日志输出到elasticsearch中
output.elasticsearch: # 注释掉输出到elasticsearch的配置
hosts: ["192.168.7.114:9200"]
启动filebeat: systemctl restart filebeat
登录kibana,http://ip:5601/,在kibana中可以看到可以看到日志展示:
参考:ELK详细安装部署_xllove2008的博客-CSDN博客_elk部署