centos7搭建ELK Cluster集群日志分析平台
应用场景:ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用、易用的监控架构,
很多公司利用它来搭建可视化的海量日志分析平台。
官网下载地址:https://www.elastic.co/downloads
Elasticsearch:
是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。
Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。
设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
Logstash:
用于管理日志和事件的工具,你可以用它去收集日志、转换日志、解析日志并将他们作为数据提供给其它模块调用,例如搜索、存储等。
Kibana:
是一个优秀的前端日志展示框架,它可以非常详细的将日志转化为各种图表,为用户提供强大的数据可视化支持。
Filebeat:类似于 “agent” 装在被监控端上(数据源),用来实时收集日志文件数据。

【最简单的架构图】
安装环境:

安装步骤:
前提:已经装好 Java 8(官方建议5.4版本最至少Java 8 或以上):

1. 导入官方PGP-Key
~]#rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
2. 建立下载rpm包的repo
~]# vim /etc/yum.repos.d/elk.repo
[elasticsearch-5.x]
name=Elasticsearch repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
保存后退出;
3. 安装elasticsearch包
~]#yum install elasticsearch
4. 编辑配置文件
~]# vim /etc/elasticsearch/elasticsearch.yml


保存,退出;
5. 启动服务
~]# systemctl daemon-reload
~]# systemctl start elasticsearch
~]# systemctl status elasticsearch

~]#systemctl enable elasticsearch //加入开机启动
6. 查看端口状态
~]#ss -tnl

至此,节点es-1配置完成。
7.配置集群中的另外节点es-2 和 es-3
配置同es-1,修改一下配置文件里的节点名和地址即可,不再赘述。
8. es集群的相关查询
注意:Elasticsearch 5.x版本不再支持相关插件:如 “elasticsearch-head”...,解释可以访问官网,实在需要,可以独立运行(此处跳过)。
Elasticseach 1.x 2.x仍可支持,请查看:http://mobz.github.io/elasticsearch-head/
查询集群状态方法①
~]# curl -XGET 'http://192.168.1.21:9200/_cat/nodes' //随意一台es中可执行,也可更换其中的 ip(这里可22或23)

~]# curl -XGET 'http://192.168.1.21:9200/_cat/nodes?v' //同上在后面添加 ?v ,表示详细显示

查询集群状态方法②
~]# curl -XGET 'http://192.168.1.21:9200/_cluster/state/nodes?pretty'

查询集群中的master
~]# curl -XGET 'http://192.168.1.21:9200/_cluster/state/master_node?pretty'
或
~]# curl -XGET 'http://192.168.1.21:9200/_cat/master?v'

查询集群的健康状态
~]# curl -XGET 'http://192.168.1.21:9200/_cat/health?v'
或
~]# curl -XGET 'http://192.168.1.21:9200/_cluster/health?pretty'

centos7搭建ELK Cluster集群日志分析平台(二):Logstash
续 centos7搭建ELK Cluster集群日志分析平台(一)
已经安装完Elasticsearch 5.4 集群.

安装Logstash步骤
1. 安装Java 8
官方说明:需要安装Java 8 ,不支持Java 9... //自行安装,略过

2. 安装Logstash
可以同elasticsearch一样建立repo文件通过yum安装,也可以去官网直接下载rpm包进行本地安装:
~]# rpm -ivh logstash-5.4.0.rpm //这里直接下载好进行本地安装
3. 添加配置文件logstash.conf
~]# cd /etc/logstash/conf.d/ //切换目录
conf.d]# vim logstash.conf //新增配置文件logstash.conf,文件名可自己定义
示例内容如下:
input {
beats { //后面将用到:filebeat作为agent
port => 5044 //开启5044端口监听
}
}
//注: 此处没有添加过滤“filter”段,只添加了input和output段
output {
elasticsearch {
hosts => "IP:9200" //IP换成某台elasticsearch的地址
manage_template => false
index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
document_type => "%{[@metadata][type]}"
}
}
保存,退出;
4. 启动logstash服务
conf.d]# systemctl start logstash
查看状态:
conf.d]# ss -tnl //存在延迟可能,多等些时间

至此,Logstash安装配置完成。
centos7搭建ELK Cluster集群日志分析平台(三):Kibana
续 centos7搭建ELK Cluster集群日志分析平台(一)
续 centos7搭建ELK Cluster集群日志分析平台(二)
已经安装好elasticsearch 5.4集群和logstash 5.4

安装kibana步骤
1.下载安装Kibana
~]#wget https://artifacts.elastic.co/downloads/kibana/kibana-5.4.0-x86_64.rpm
如果链接失效,官网下载:https://www.elastic.co/downloads
~]# rpm -ivh kibana-5.4.0-x86_64.rpm //本地安装rpm包
2. 编辑配置文件
~]#vim /etc/kibana/kibana.yml //变更如下


保存后,退出;
3. 启动kibana
~]# systemctl start kibana //启动
~]# systemctl enable kibana //加入开机启动
~]# ss -tnl

4. 添加Nginx反向代理
~]# yum -y install epel-release //安装epel源,从epel源中获取Nginx
~]# yum -y install nginx httpd-tools //yum安装Nginx,和httpd用户认证工具

5. 更该配置文件
①删除或注释掉文件/etc/nginx/nginx.conf中的一段server{}
~]#vim /etc/nginx/nginx.conf

保存,退出;
②新增kibana.conf文件
~]# cd /etc/nginx/conf.d/ //在该配置目录下新增
conf.d]# vim kibana.conf //内容如下
server {
listen 80;
server_name kibana;
auth_basic "Restricted Access";
auth_basic_user_file /etc/nginx/kibana-user; //注 :该认证文件后续马上创建
location / {
proxy_pass http://192.168.1.25:5601; //代理的kibana地址
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
保存,退出;
6. 生成页面登录用户认证文件
~]# htpasswd -cm /etc/nginx/kibana-user adrian //生成文件kibana-user,并添加用户adrian

7. 启动Nginx
~]# nginx -t

~]# systemctl start nginx
~]# systemctl enable nginx

8. 浏览器登录kibana

登录页面展示:

至此,Kibana安装配置完成。
centos7搭建ELK Cluster集群日志分析平台(四):Fliebeat-简单测试
续之前安装好的ELK集群
各主机:es-1 ~ es-3 :192.168.1.21/22/23
logstash: 192.168.1.24
kibana: 192.168.1.25
测试机:client: 192.168.1.26
在测试机上安装并启动filebeat
1. 下载filebeat
~]# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.4.0-linux-x86_64.tar.gz
这里下载测试使用的是tar包,也可以自行下载安装rpm包,原理一样:修改配置文件和启动服务即可。
2. 修改配置文件
~]#tar zxvf filebeat-5.4.0-linux-x86_64.tar.gz //解压tar包
~]# cd filebeat-5.4.0-linux-x86_64 //进入解压后的文件夹,如果是rpm包安装,寻找/etc/filebeat/目录
~]vim filebeat.yml //编辑配置文件


保存,退出;
3. 启动filebeat服务
filebeat-5.4.0-linux-x86_64]# ./filebeat -e -c filebeat.yml //继续在当前目录下执行启动命令
如果是rpm包安装的话,直接通过 ~]#systemctl start filebeat 启动即可。
4. 浏览器登录Kibana
① 在
栏如下操作:

② 创建好之后,再点击左侧栏的

③ 尝试搜索:

至此,ELK简单测试完成。
centos7搭建ELK Cluster集群日志分析平台的更多相关文章
- centos7搭建ELK Cluster集群日志分析平台(四):Fliebeat-简单测试
续之前安装好的ELK集群 各主机:es-1 ~ es-3 :192.168.1.21/22/23 logstash: 192.168.1.24 kibana: 192.168.1.25 测试机:cli ...
- centos7搭建ELK Cluster集群日志分析平台(三):Kibana
续 centos7搭建ELK Cluster集群日志分析平台(一) 续 centos7搭建ELK Cluster集群日志分析平台(二) 已经安装好elasticsearch 5.4集群和logst ...
- centos7搭建ELK Cluster集群日志分析平台(二):Logstash
续 centos7搭建ELK Cluster集群日志分析平台(一) 已经安装完Elasticsearch 5.4 集群. 安装Logstash步骤 . 安装Java 8 官方说明:需要安装Java ...
- centos7搭建ELK Cluster集群日志分析平台(一):Elasticsearch
应用场景: ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用.易用的监控架构, 很多公司利用它来搭建可视化的海量日志分析平 ...
- ELK+Kafka集群日志分析系统
ELK+Kafka集群分析系统部署 因为是自己本地写好的word文档复制进来的.格式有些出入还望体谅.如有错误请回复.谢谢! 一. 系统介绍 2 二. 版本说明 3 三. 服务部署 3 1) JDK部 ...
- 集中式日志分析平台 - ELK Stack - 安全解决方案 X-Pack
大数据之心 关注 0.6 2017.02.22 15:36* 字数 2158 阅读 16457评论 7喜欢 9 简介 X-Pack 已经作为 Elastic 公司单独的产品线,前身是 Shield, ...
- 【精】搭建redis cluster集群,JedisCluster带密码访问【解决当中各种坑】!
转: [精]搭建redis cluster集群,JedisCluster带密码访问[解决当中各种坑]! 2017年05月09日 00:13:18 冉椿林博客 阅读数:18208 版权声明:本文为博主 ...
- 安装logstash+kibana+elasticsearch+redis搭建集中式日志分析平台
安装logstash+kibana+elasticsearch+redis搭建集中式日志分析平台 2014-01-16 19:40:57| 分类: logstash | 标签:logstash ...
- centos7搭建伪分布式集群
centos7搭建伪分布式集群 需要 centos7虚拟机一台: jdk-linux安装包一个 hadoop-2.x安装包1个(推荐2.7.x) 一.设置虚拟机网络为静态IP(最好设成静态,为之后编程 ...
随机推荐
- 对C++多态的一点理解
作为一个C++新手,我浅谈一下我对多态的一点理解. 首先,引用几句话: 1.继承是一种抽象,它允许程序员在某些时候忽略相似对象的差异,又在其他时候利用这些差异.——<C++沉思录> 2.继 ...
- 【php增删改查实例】 第三节 - mysql 建表
这一节,来给数据库中添加一些测试数据. 登陆mysql: 找到%xampp%\mysql\bin 目录, 在此处打开命令窗口,用root用户登陆mysql 用户表建表sql: CREATE TABLE ...
- C标准库string.h中几个常用函数的使用详解
strlen 计算字符串长度 size_t strlen(const char *str) 计算字符串 str 的长度,直到空结束字符,但不包括空结束字符. 函数实现: int Strlen(cons ...
- idea 开启 tomcat 访问日志记录
all 为 设置为 查看所有类型的请求 (包括ajax)
- 修改 input[type="radio"] 和 input[type="checkbox"] 的默认样式
表单中,经常会使用到单选按钮和复选框,但是,input[type="radio"] 和 input[type="checkbox"] 的默认样式在不同的浏览器或 ...
- [CF981F]Round Marriage[二分+霍尔定理]
题意 洛谷 分析 参考了Icefox 首先二分,然后考虑霍尔定理判断是否有完美匹配.如果是序列的话,因为这里不会出现 \(j<i,L(i)<L(j)\) 或者 \(j<i,R(i)& ...
- PowerBI开发 第八篇:查询参数
在PowerBI Desktop中,用户可以定义一个或多个查询参数(Query Parameter),参数的功能是为了实现PowerBI的参数化编程,使得Data Source的属性.替换值和过滤数据 ...
- 关于Unity物理事件的执行顺序的最新理解
物体A: public class A:{ B b; void FixedUpdate(){ if(input.GetKeyDow(Keycode.I)) { collider.enable=fals ...
- abcdocker 的博客
技术参考总结 abcdocker 的博客 09月 3 篇 20日 Centos7 图形化创建KVM 10日 Nginx 代理Google 进行*** 10日 mac 安装装逼神器cmatrix 08月 ...
- java BigDecimal实现精确加减乘除运算
java.math.BigDecimal.BigDecimal一共有4个够造方法,让我先来看看其中的两种用法: 第一种:BigDecimal(double val)Translates a doubl ...