ELK知识点总结

ELK组件:

  • Elasticsearch 抓取日志分析
  • Logstash 日志格式处理
  • Kibana 前端数据可视化展示
  • Redis 数据缓存

概述:

ELK(R) = Elasticsearch + Logstash + Kibana (+ Redis) 是一套完整的工业级日志分析工具。

Elasticsearch 是整个日志分析系统的核心,它负责对日志数据进行分析、索引等重要工作;

Logstash 则主要用于对日志数据进行初步的过滤和筛选。例如,Logstash 可以将拥有日志数据的从节点(Slave Node)服务器内的日志数据发送到 Elasticsearch 的主服务器。

Kibana 则是为了让 Elasticsearch 更好的与用户进行交互而设计的一个 Web 前端工具,具备强大的数据可视化功能。

Redis 本身并不属于 ELK 技术栈里的一份子,而是作为一个插件存在于 ELK 技术栈中。Redis 提供了一个很好的缓冲区,它能够很好的帮助我们在主节点上屏蔽掉多个从节点之间不同日志文件的差异,负责管理日志端(从节点)的人可以专注于向 Redis 里生产数据,而负责数据分析聚合端的人则可以专注于从 Redis 内消费数据,达到分层目的。

总结上面所说的,我们可以得到下图:

三种方式安装ELK

安装jdk,版本不能低于1.8,这里不在多说

安装redis

Redis 作为 Logstash 的一个插件,Logstash 的运行依赖于 Redis 服务。在环境中安装 Redis:
sudo apt-get update 
sudo apt-get install -y redis-server 
redis-server -v
sudo service redis-server start  
sudo netstat -antulp | grep 6379

①、apt安装(适用于ubuntu系统)

导入 Elastic PGP Key:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

添加官方安装源:

sudo apt-get install apt-transport-https 
# 添加官方 apt 源信息 
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

安装 ELK 环境

sudo apt-get update sudo apt-get install elasticsearch  # 安装 elasticsearch 
sudo apt-get install kibana  # 安装 kibana 
sudo apt-get install logstash  # 安装 logstash

②、dpkg安装(适用于DeePin)

安装 elasticsearch:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.1-amd64.deb 
sudo dpkg -i elasticsearch-7.4.1-amd64.deb

安装 kibana:

wget https://artifacts.elastic.co/downloads/kibana/kibana-7.4.1-amd64.deb 
sudo dpkg -i kibana-7.4.1-amd64.deb

安装 logstash:

wget https://artifacts.elastic.co/downloads/logstash/logstash-7.4.1.deb 
sudo dpkg -i logstash-7.4.1.deb

③、tar方式安装ELK

下载地址:

# elasticsearch 
wget https://downloadfiles.oss-cn-hangzhou.aliyuncs.com/courses/aliyun/elk/elasticsearch-7.4.1-linux-x86_64.tar.gz 
# kibana 
wget https://downloadfiles.oss-cn-hangzhou.aliyuncs.com/courses/aliyun/elk/kibana-7.4.1-linux-x86_64.tar.gz 
# logstash 
wget https://downloadfiles.oss-cn-hangzhou.aliyuncs.com/courses/aliyun/elk/logstash-7.4.1.tar.gz

安装 elasticsearch:

curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.1-linux-x86_64.tar.gz 
tar -xvf elasticsearch-7.4.1-linux-x86_64.tar.gz

安装 kibana:

wget https://artifacts.elastic.co/downloads/kibana/kibana-7.4.1-linux-x86_64.tar.gz shasum -a 512 kibana-7.4.1-linux-x86_64.tar.gz tar -xzf kibana-7.4.1-linux-x86_64.tar.gz

安装 logstash:

curl -L -O https://artifacts.elastic.co/downloads/logstash/logstash-7.4.1.tar.gz 
tar -xzf logstash-7.4.1.tar.gz

启动 Elasticsearch

cd elasticsearch-7.4.1/bin 
# 启动 
./elasticsearch -d

查看启动进程:

ps -ef|grep -v grep|grep elasticsearch

Elasticsearch 监听在本地的 9200 端口,浏览器打开地址:localhost:9200

启动 Kibana

cd kibana-7.4.1-linux-x86_64/bin 
nohup ./kibana 2>&1 &

Kibana 的监听端口为 5601,浏览器打开地址:localhost:5601

启动 Logstash

$ cd logstash-7.4.1/bin # 测试 $ ./logstash -e 'input { stdin { } } output { stdout {} }' hello world

这里运行的是最简单的 Logstash pipeline 作为测试,其中 -e 参数表示通过命令行定义配置,配置信息表示的是从标准输入 stdin 获取输出,然后直接以格式化形式从标准输出 stdout 进行显示。可以看到输出的信息中还包括时间戳、主机名和版本号。

最后按 CTRL-D 退出 Logstash

发表评论

后才能评论