elk的搭建
一:准备工作
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的搭建的更多相关文章
- ELK+redis搭建nginx日志分析平台
ELK+redis搭建nginx日志分析平台发表于 2015-08-19 | 分类于 Linux/Unix | ELK简介ELKStack即Elasticsearch + Logstas ...
- 使用elk+redis搭建nginx日志分析平台
elk+redis 搭建nginx日志分析平台 logstash,elasticsearch,kibana 怎么进行nginx的日志分析呢?首先,架构方面,nginx是有日志文件的,它的每个请求的状态 ...
- linux下利用elk+redis 搭建日志分析平台教程
linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm elk 日志分析+redis数据库可以创建一个不错的日志分析平台了 ...
- ELK初学搭建(kibana)
ELK初学搭建(kibana) elasticsearch logstash kibana ELK初学搭建 kibana 1.环境准备 centos6.8_64 mini IP:192.168.10. ...
- ELK初学搭建(elasticsearch)
ELK初学搭建(elasticsearch) elasticsearch logstash kibana ELK初学搭建 elasticsearch 1.环境准备 centos6.8_64 mini ...
- ELK初学搭建(logstash)
ELK初学搭建(logstash) elasticsearch logstash kibana ELK初学搭建 logstash 1.环境准备 centos6.8_64 mini IP:192.168 ...
- ELK平台搭建(上)
一.目的 为指导在Centos6.8系统下搭建标准ELK平台的工作. 二.定义 Elasticsearch Logstash Kibana结合Redis协同工作. 三.适用范围 适用于运营维护组运维工 ...
- 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 ...
- ELK 环境搭建3-Logstash
一.Logstash是一款轻量级的日志搜集处理框架,可以方便的把分散的.多样化的日志搜集起来,并进行自定义的处理,然后传输到指定的位置,比如某个服务器或者文件或者中间件. 二.搭建 1.因为要涉及到收 ...
- ELK 环境搭建2-Kibana
一.安装前准备 1.节点 192.168.30.41 2.操作系统: Centos7.5 3.安装包 a.java8: jdk-8u181-linux-x64.tar.gz b.Kibana kiba ...
随机推荐
- Redis 的底层数据结构(压缩列表)
上一篇我们介绍了 redis 中的整数集合这种数据结构的实现,也谈到了,引入这种数据结构的一个很大的原因就是,在某些仅有少量整数元素的集合场景,通过整数集合既可以达到字典的效率,也能使用远少于字典的内 ...
- html5自动弹出软键盘的方法
html5自动弹出软键盘的方法<pre> <textarea placeholder="说点什么......" autofocus="autofocus ...
- vue的相关知识
一.DOM vs 函数库 vs框架 DOM: API繁琐 函数库:JQuery对DOM的每个步骤的API进行一对一的简化,但并没有改变DOM做事的步骤和方法. 框架:一个包含部分已经实现的功能的半成 ...
- 接口测试专题(Java & jmeter & Linux基础)
以下是我和两个朋友原创文章合集,主题是接口测试,有Java接口测试案例和jmeter的案例,还有接口测试相关服务器操作基础.欢迎点赞.关注和转发. 接口测试 httpclient处理多用户同时在线 h ...
- stdClass Object 数据的处理
stdClass Object 数据的处理 在调用接口的时候往往返回的是 stdClass Object 类型的数据,我们在取数据值的时候就阔以直接使用对象->属性值的方式操作值 $ret = ...
- nyoj 21-三个水杯(BFS)
21-三个水杯 内存限制:64MB 时间限制:1000ms Special Judge: No accepted:7 submit:18 题目描述: 给出三个水杯,大小不一,并且只有最大的水杯的水是装 ...
- React动画库
npm i react-transition --save import {CSSTransition} from 'react-transition-group'
- PHP-会话控制Cookie和Session
会话控制:就是为了我们在访问页面和页面之间的跳转是,能够识别到你的登录状态,已经你的登录时长等 在php的会话控制当中,涉及到两个概念Cookie和Session Cookie 会话控制 原理:在登录 ...
- vue-cli从2升级到3报错error 404 Not Found: @wry/context@^0.4.0
vue3出来了,想尝尝鲜. 于是按官方的方法卸载2安装3. npm uninstall vue-cli -g npm install -g @vue/cli 但是报错了 error 404 Not F ...
- goroutiine同步/channel、互斥锁、读写锁、死锁/条件变量
1. Goroutine同步[数据同步] 为什么需要goroutine同步 gorotine同步概念.以及同步的几种方式 1.1 为什么需要goroutine同步 package main impor ...