欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Linux下ELK环境搭建

程序员文章站 2022-06-24 14:26:46
一.准备工作 准备3台机器,这样才能完成分布式集群的实验,当然能有更多机器更好: 192.168.3.64(e1) 192.168.3.62 (e2) 192.168.3.63(e3) 角色划分: 3台机器全部安装jdk1.8,因为elasticsearch是java开发的 3台全部安装elasti ......

一.准备工作

准备3台机器,这样才能完成分布式集群的实验,当然能有更多机器更好:

  • 192.168.3.64(e1)
  • 192.168.3.62  (e2)
  • 192.168.3.63(e3)

角色划分:

  • 3台机器全部安装jdk1.8,因为elasticsearch是java开发的
  • 3台全部安装elasticsearch (后续都简称为es)
  • e1作为主节点
  • e2,e3作为数据节点
  • e1上需要安装kibana
  • 在e2上安装 logstash

 

二.es的安装配置

2.1es下载安装

[root@master-node ~]# rpm --import https://artifacts.elastic.co/gpg-key-elasticsearch
[root@master-node ~]# vim /etc/yum.repos.d/elastic.repo # 增加以下内容
[elasticsearch-6.x]
name=elasticsearch repository for 6.x packages
baseurl=
gpgcheck=1
gpgkey=https://artifacts.elastic.co/gpg-key-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
[root@master-node ~]# yum install -y elasticsearch

2.2主节点e1配置

[root@master-node ~]# vim /etc/elasticsearch/elasticsearch.yml # 增加或更改以下内容
: master-node # 集群中的名称
: master # 该节点名称
node.master: true # 意思是该节点为主节点
node.data: false # 表示这不是数据节点
network.host: 0.0.0.0 # 监听全部ip,在实际环境中应设置为一个安全的ip
http.port: 9200 # es服务的端口号
discovery.zen.ping.unicast.hosts: ["192.168.3.64", "192.168.3.62", "192.168.3.63"] # 配置自动发现

2.3 数据节点e2配置

[root@gtp3 ~]# vim /etc/elasticsearch/elasticsearch.yml # 增加或更改以下内容
: master-node # 集群中的名称
: data-node1 # 该节点名称
node.master: false # 意思是该节点为主节点
node.data: true # 表示这不是数据节点
network.host: 0.0.0.0 # 监听全部ip,在实际环境中应设置为一个安全的ip
http.port: 9200 # es服务的端口号
discovery.zen.ping.unicast.hosts: ["192.168.3.64", "192.168.3.62", "192.168.3.63"] # 配置自动发现

2.4数据节点e3配置

[root@gtp3 ~]# vim /etc/elasticsearch/elasticsearch.yml # 增加或更改以下内容
: master-node # 集群中的名称
: data-node2 # 该节点名称
node.master: false # 意思是该节点为主节点
node.data: true # 表示这不是数据节点
network.host: 0.0.0.0 # 监听全部ip,在实际环境中应设置为一个安全的ip
http.port: 9200 # es服务的端口号
discovery.zen.ping.unicast.hosts: ["192.168.3.64", "192.168.3.62", "192.168.3.63"] # 配置自动发现

2.5 在主节点e1中输入下面命令,启动es

systemctl start elasticsearch.service

2.6 查看es是否启动

[root@gtp1 ~]# ps aux |grep elasticsearch

Linux下ELK环境搭建

 

[root@gtp1 ~]# netstat -lntp |grep java  # es服务会监听两个端口

Linux下ELK环境搭建
9300端口是集群通信用的,9200则是数据传输时用的。

主节点启动成功后,依次启动其他节点即可。

2.7 查看集群情况

 

 

[root@gtp1 ~]# curl 'localhost:9200/_cluster/health?pretty'

Linux下ELK环境搭建

 

三.安装kibana

3.1 下载安装kibana

[root@gtp1 ~]# yum -y install kibana 
或者
[root@gtp1 ~]# wget https://artifacts.elastic.co/downloads/kibana/kibana-6.0.0-x86_64.rpm
[root@gtp1 ~]# rpm -ivh kibana-6.0.0-x86_64.rpm
3.2 kibana配置
[root@gtp1 ~]#vim /etc/kibana/kibana.yml # 增加以下内容

server.port: 5601  # 配置kibana的端口
server.host: 192.168.77.128  # 配置监听ip
elasticsearch.url: "http://192.168.77.128:9200"  # 配置es服务器的ip,如果是集群则配置该集群中主节点的ip
logging.dest: /var/log/kibana.log  # 配置kibana的日志文件路径,不然默认是messages里记录日志

3.3 创建日志文件

[root@gtp1 ~]# touch /var/log/kibana.log; chmod 777 /var/log/kibana.log

3.4 启动kibana服务,并检查进程和监听端口

 

[root@gtp1 ~]#systemctl start kibana

[root@gtp1 ~]# ps aux |grep kibana
root 16528 0.0 0.0 112660 968 pts/2 s+ 10:47 0:00 grep --color=auto kibana
kibana 29265 0.4 0.7 1315604 239188 ? ssl sep19 39:09 /usr/share/kibana/bin/../node/bin/node --no-warnings /usr/share/kibana/bin/../src/cli -c /etc/kibana/kibana.yml

3.5 浏览器访问 ,查看kibana

 

Linux下ELK环境搭建

 

四. 安装 logstash

4.1 在e2中安装logstash

 

[root@gtp2 ~]# yum install -y logstash
或者

[root@gtp2 ~]# wget https://artifacts.elastic.co/downloads/logstash/logstash-6.0.0.rpm
[root@gtp2 ~]# rpm -ivh logstash-6.0.0.rpm
 

4.2 启动logstash

 

[root@gtp2 ~]#systemctl restart logstash