一:准备工作

1.准备一台虚拟机

192.168.175.222      elk-node2

2.关闭防火墙以及selinux

命令:systemctl stop firewalld       #关闭firewall防火墙

命令:iptables  -F                        #清除iptables防火墙规则

命令:setenforce 0      #临时有效,重启无效

命令:vim /etc/selinux/config         #selinux的配置文件路径

3.部署java环境

将tar包解压到 /usr/local下 版本为jdk-8u211-linux-x64.tar.gz     #路径为/usr/local/jdk1.8.0_211(解包后自动生成)

命令:wget http://192.168.130.150/jdk/jdk-8u211-linux-x64.tar.gz       #下载需要的安装包

命令:tar xf jdk-8u211-linux-x64.tar.gz -C /usr/local/         #解包到/usr/local,意思是本机用户环境启动

命令:echo "export JAVA_HOME=/usr/local/jdk1.8.0_211" >> /etc/profile.d/jdk8.sh        #在配置文件里声明路径(指定路径)

命令:echo "export CLASS_PATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/jar/tools.jar:\$JAVA_HOME/jre/lib" >> /etc/profile.d/jdk8.sh       #在配置文件里声明Java变量环境

命令:echo "export PATH=\$JAVA_HOME/bin:\$JAVA_HOME/jre/bin:\$PATH" >> /etc/profile.d/jdk8.sh         #在配置文件里声明启动Java变量环境

命令:echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/local/apr/lib" >> /etc/profile.d/jdk8.sh            #在配置文件里声明启动Java变量环境路径

命令:chmod +x /etc/profile.d/jdk8.sh       #给Java变量环境添加执行权限

命令:source /etc/profile.d/jdk8.sh          #重启环境

命令:java -version            #查看Java变量环境

(注意:上面的命令可以直接做成脚本,不过执行完脚本之后,要重新source一下才可以,因为脚本内的java环境已经重启,本地电脑的环境并没有重启)

现在准备工作已经差不多了,接下来就是搭建elk

二:搭建elk

搭建elasticsearch

1.配置yum源

导入GPG key    #GPG公钥

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch         #检查机制(类似密钥)

命令:yum update curl              #如果报错执行一下这个 刷新yum源

命令:vim /etc/yum.repos.d/elasticsearch.repo        #自定义yum源文件名

[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum         #指定包路径
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch     #检查机制
enabled=1
autorefresh=1
type=rpm-md

安装目录:

命令:mkdir /usr/share/elasticsearch     #意思是本机用户共用一定放在这

命令:yum -y  install elasticsearch         #yum源安装

2.配置文件的修改

命令:chkconfig --add elasticsearch     #配置自动启动

命令:mkdir -p /data/elasticsearch/lib     #指定数据文件路径

命令:mkdir -p /data/elasticsearch/log      #指定日志文件路径

命令:chmod 777 -R /data/elasticsearch     #添加目录以及子目录权限,可以让任何数据和日志文件都能收集到

命令:vim /etc/elasticsearch/elasticsearch.yml           #修改elasticsearch配置文件

path.data: /data/elasticsearch/lib               #指定数据路径

path.logs: /data/elasticsearch/log              #指定日志文件路径

network.host: 0.0.0.0                                 #打开连接端口,允许所有

修改配置文件

命令:vim /etc/security/limits.conf          #设置连接次数

* soft nofile 65536
* hard nofile 65536          #放在文件最后

修改配置文件

命令:vim  /etc/elasticsearch/jvm.options        #设置内存大小配置文件

-Xms8g
-Xmx8g                #需要根据自己虚拟机的配置修改,内存的大小

启动服务service elasticsearch

命令:service elasticsearch start

注意:如果启动失败

请输入命令:tail -F /var/log/messages

which: no java in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)

解决办法:

命令:vim /etc/sysconfig/elasticsearch

在配置文件里添加   JAVA_HOME=/usr/local/jdk1.8.0_211   #指定java环境路径

然后再重启服务

命令:service elasticsearch restart       #重启

验证安装:

命令:curl -X GET "localhost:9200/"

看见这些就证明验证成功了

端口配置
iptables -I INPUT -p tcp --dport 9200 -j ACCEPT            #允许端口9200通过,若清空了防火墙,就无需配置
service iptables save
service iptables restart

好了,现在elasticsearch已经搭建完成了,接下来搭建Logstash

三:搭建Logstash

1.先配置yum源

导入GPG key           #官方签名机制

命令:rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch     #下载机制

注意:如果报错,就不用下载了,前面已经下载一次了,如果安装失败,重新下载一次

如果还是报错

解决方案:

命令:wget https://packages.elastic.co/GPG-KEY-elasticsearch --no-check-certificate     #查找相应的GPG密钥,并导入到RPM

命令:rpm --import GPG-KEY-elasticsearch       #利用RPM下载密钥

2.新建repo文件

命令:vim /etc/yum.repos.d/logstash.repo

[logstash-6.x]
name=Elastic repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

3.安装
命令:yum -y install logstash

4.测试 加启动 并且 需要持续的启动

命令:/usr/share/logstash/bin/logstash -e 'input { stdin { } } output {stdout {} }'   #测试logstash

报错:WARNING:Could not find logstash.yml which is typically located in $LS_HOME/config or /etc/logstash.You can specify the path using --path.settings.

Continuing using the defaults             #找不到logstash.yml,它通常位于$LS_HOME/config或/etc/logstash中

报错:Could not find log4j2 configuration at path /usr/share/logstash/cinfig/log4j2.properties. Using default config which logs errors to the console

#在路径/usr/share/logstash/config/log4j2.properties.中找不到log4j2配置文件,无法建立控制台,找到log4j2配置文件放入上面路径即可解决报错

解决办法:

命令:find / -name logstash.yml -type f           #利用find查找logstash.yml文件所在地

命令:find / -name log4j2.properties -type f        #利用find查找log4j2.properties文件所在地

命令:cp -r /etc/logstash/logstash.yml   /usr/share/logstash/config/                  #将配置logstash.yml文件复制到 /usr/share/logstash/config/

命令:cp -r /etc/logstash/log4j2.properties  /usr/share/logstash/config/                 #将配置log4j2.properties文件复制到 /usr/share/logstash/config/

命令:vim /usr/share/logstash/config/logstash.yml

path.data: /data/elasticsearch/lib            #指定文件路径

path.logs: /data/elasticsearch/log           #指定日志文件路径

5.创建日志收集规则

命令:vim /root/file.conf

input {
    file {
      path => "/var/log/messages"
      type => "system"
      start_position => "beginning"
    }
}                               #输入规则

output {
    elasticsearch {
       hosts => ["192.168.1.151:9200"]
       index => "system-%{+YYYY.MM.dd}"
    }
}                             #输出规则

6.按照配置好的收集日志的规则去启动logstash

命令:/usr/share/logstash/bin/logstash -f /root/file.conf

命令:/usr/share/logstash/bin/logstash -f /root/file.conf &              #后台登录

注意:配置文件默认目录配置文件拷贝到这下面(/etc/logstash/conf.d/)执行 systemctl restart logstach 是不行的

只能指定文件启动

输入命令:ps aux | grep logstash看看服务是否启动

好了,接下来就安装kibana

四:安装 Kibana

导入GPG Key
命令:rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

如果失败,就将网站链接在浏览器上输入一遍,然后会自动弹出对话框,然后点击保存文件,

在命令行内再次输入rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch就可以了

1.新建repo文件:

命令:vim  /etc/yum.repos.d/kibana.repo
[kibana-6.x]
name=Kibana repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

2安装
命令:yum -y  install kibana

3.配置
命令:vim /etc/kibana/kibana.yml
   server.port: 5601             #打开kibana端口
   server.host: "0.0.0.0"              #可以收集所有网段的ip
   elasticsearch.hosts: ["http://localhost:9200"]           #打开节点端口
   i18n.locale: "zh-CN" #最后一行汉化                #可以支持中文,当然了,英语好的不用修改

4.启动服务

命令:/usr/share/kibana/bin/kibana             #启动服务

命令:systemctl restart kibana                    #持续开启服务

温馨提示:elasticsearch,logstash,kibana启动服务的时候命令行会一直停在那,不能结束,否则后续步骤不能进行,多开几个界面就行了

或者可以放在后台启动也行,不过个人建议多开几个界面,如果某个服务停了,利于排查故障

5.在浏览器上访问http://192.168.175.100:5601

温馨提示:kibana支持很多可视图插件,如:elasticsearch-head-master,elasticsearch-kopf-master,bigdesk-master(集群插件),根据自己需要安装

添加索引

温馨提示:因为是刚刚搭建完毕,所以里面并没有什么数据,只能通过系统文件建立索引,只是为了演示

elk的搭建的更多相关文章

  1. ELK+redis搭建nginx日志分析平台

    ELK+redis搭建nginx日志分析平台发表于 2015-08-19   |   分类于 Linux/Unix   |  ELK简介ELKStack即Elasticsearch + Logstas ...

  2. 使用elk+redis搭建nginx日志分析平台

    elk+redis 搭建nginx日志分析平台 logstash,elasticsearch,kibana 怎么进行nginx的日志分析呢?首先,架构方面,nginx是有日志文件的,它的每个请求的状态 ...

  3. linux下利用elk+redis 搭建日志分析平台教程

    linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm   elk 日志分析+redis数据库可以创建一个不错的日志分析平台了 ...

  4. ELK初学搭建(kibana)

    ELK初学搭建(kibana) elasticsearch logstash kibana ELK初学搭建 kibana 1.环境准备 centos6.8_64 mini IP:192.168.10. ...

  5. ELK初学搭建(elasticsearch)

    ELK初学搭建(elasticsearch) elasticsearch logstash kibana ELK初学搭建 elasticsearch 1.环境准备 centos6.8_64 mini ...

  6. ELK初学搭建(logstash)

    ELK初学搭建(logstash) elasticsearch logstash kibana ELK初学搭建 logstash 1.环境准备 centos6.8_64 mini IP:192.168 ...

  7. ELK平台搭建(上)

    一.目的 为指导在Centos6.8系统下搭建标准ELK平台的工作. 二.定义 Elasticsearch Logstash Kibana结合Redis协同工作. 三.适用范围 适用于运营维护组运维工 ...

  8. ELK 环境搭建4-Kafka + zookeeper

    一.安装前准备 1.节点 192.168.30.41 192.168.30.42 192.168.30.43 2.操作系统: Centos7.5 3.安装包 a.java8: jdk-8u181-li ...

  9. ELK 环境搭建3-Logstash

    一.Logstash是一款轻量级的日志搜集处理框架,可以方便的把分散的.多样化的日志搜集起来,并进行自定义的处理,然后传输到指定的位置,比如某个服务器或者文件或者中间件. 二.搭建 1.因为要涉及到收 ...

  10. ELK 环境搭建2-Kibana

    一.安装前准备 1.节点 192.168.30.41 2.操作系统: Centos7.5 3.安装包 a.java8: jdk-8u181-linux-x64.tar.gz b.Kibana kiba ...

随机推荐

  1. python学习之【第五篇】:Python中的元组及其所具有的方法

    1.前言 Python的元组(tuple)与列表很相似,不同之处在于元组不能被修改,即元组一旦创建,就不能向元组中的增加新元素,不能删除元素中的元素,更不能修改元组中元素.但是元组可以访问任意元素,可 ...

  2. vue-cli3.X快速创建项目

    1.安装 Vue CLI 的包名称由 vue-cli 改成了 @vue/cli. 如果你已经全局安装了旧版本的 vue-cli (1.x 或 2.x),你需要先通过以下方式先卸载它: npm unin ...

  3. 『题解』洛谷P1351 联合权值

    更好的阅读体验 Portal Portal1: Luogu Portal2: LibreOJ Description 无向连通图\(\mathrm G\)有\(n\)个点,\(n - 1\)条边.点从 ...

  4. python、C++经典算法题:打印100以内的素数

    题目 打印100以内的素数 思路1 素数的特点: 素数一定是奇数 一个数如果是合数,那么它一定能够被2到这个合数的开平方内的某个素数整除(这个特点是提升效率的关键) 一个数如果不能被从2到它自身开平方 ...

  5. Dart编程语言从基础到进阶1

    Dart编程语言从基础到进阶Dart的语言的发展史以及Dart能做什么未来发展怎么样等等问题我们在这里是不讨论的.我相信既然选择了来学习它,那你内心基本已经认可了它,所以我们废话不多说直接进入主题. ...

  6. Java基础知识之常量变量(一)

    1.什么是变量,什么是常量?java的基本数据类型是什么 变量: 会发生改变的数据,叫做变量,如自定义一个a,并且对a进行赋值操作为1,也可以让a等于2,此时a就是一个变量 常量: 不会发生改变的值, ...

  7. ThreadLocal<T> 源码解析

    在activeJDBC框架内部的实现中看到了 ThreadLocal 这个类,记录下了每个线程独有的连接 private static final ThreadLocal<HashMap< ...

  8. UEFI+GPT电脑Win10下安装openSUSE Leap 42.2双系统

    安装过程仅供参考,最后实现方式不完美. 1       准备工具,一个8G以上U盘,已装好win10的UEFI+GPT电脑(本机为SSD+HDD双硬盘) 2       所需软件: 2.1       ...

  9. Python多线程与队列

    Python多线程与Queue队列多线程在感官上类似于同时执行多个程序,虽然由于GIL的存在,在Python中无法实现线程的真正并行,但是对于某些场景,多线程仍不失为一个有效的处理方法: 1,不紧急的 ...

  10. CentOS7和Ubuntu下安装Docker & Docker-Compose

    本篇介绍如何在CentOS 7.6和Ubuntu 16.04下安装Docker & Docker-Compose. CentOS篇 安装Docker # cat /etc/redhat-rel ...