ELK的文档搭建
一、安装elasticsearch
官网:https://www.elastic.co/guide/index.html
https://www.elastic.co/guide/en/elasticsearch/reference/2.3/index.html
参考搭建文档
Elasticsearch-6.0.
logstash-6.0.
kibana-6.0.
filebeat-6.0.
https://blog.51cto.com/zero01/2079879 上篇
https://blog.51cto.com/zero01/2082794 下篇
参考 https://www.cnblogs.com/superlinux/p/10591428.html
filebeat写入kafka :https://www.jianshu.com/p/da8113f58115
1)环境准备
[root@k8s6 ~]# java -version
openjdk version "1.8.0_201"
OpenJDK Runtime Environment (build 1.8.0_201-b09)
OpenJDK -Bit Server VM (build 25.201-b09, mixed mode) )
[root@k8s6 ~]# ls elktools/
elasticsearch-2.3..rpm kibana-4.5.-.x86_64.rpm logstash-2.3.-.noarch.rpm
2)rpm包安装
[root@k8s6 ~]# rpm -ivh elktools/elasticsearch-2.3..rpm
3)修改配置文件
备份配置文件
cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak
修改配置文件
[root@k8s6 elasticsearch]# diff /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak
17c17
< cluster.name: myes
---
> # cluster.name: my-application
23c23
< node.name: master_node
---
> # node.name: node-
54c54
< network.host: 192.168.10.22
---
> # network.host: 192.168.0.1
58c58
< http.port:
---
> # http.port:
补充:
bootstrap.mlockall: false
bootstrap.system_call_filter: false
4)启动服务
[root@k8s6 elasticsearch]# systemctl start elasticsearch 启动服务
[root@k8s6 elasticsearch]# netstat -lntup|grep java
tcp6 192.168.10.22: :::* LISTEN /java
tcp6 192.168.10.22: :::* LISTEN /java
5)对elasticsearch的api验证
[root@k8s6 elasticsearch]# curl http://192.168.10.22:9200
{
"name" : "master_node",
"cluster_name" : "myes",
"version" : {
"number" : "2.3.5",
"build_hash" : "90f439ff60a3c0f497f91663701e64ccd01edbb4",
"build_timestamp" : "2016-07-27T10:36:52Z",
"build_snapshot" : false,
"lucene_version" : "5.5.0"
},
"tagline" : "You Know, for Search"
}
二、安装elasticsearch的插件安装
1)查看执行的命令和插件位置
[root@k8s6 ~]# ls /usr/share/elasticsearch/
bin lib LICENSE.txt modules NOTICE.txt plugins README.textile
2)安装head插件
[root@k8s6 ~]# /usr/share/elasticsearch/bin/plugin install mobz/elasticsearch-head 从github下载
[root@k8s6 ~]# ls /usr/share/elasticsearch/plugins/head/
Dockerfile Gruntfile.js LICENCE proxy src
Dockerfile-alpine grunt_fileSets.js package.json README.textile test
elasticsearch-head.sublime-project index.html plugin-descriptor.properties _site
2.1)访问测试
http://192.168.10.22:9200/_plugin/head/
3.1)安装 kopf 插件
[root@k8s6 ~]# /usr/share/elasticsearch/bin/plugin install lmenezes/elasticsearch-kopf
3.2)访问测试
http://192.168.10.22:9200/_plugin/kopf/
4)模拟提交post请求
刷新连接
二、es的集群测试
1)另一台机器同样安装好es,修改配置文件(主播模式)测试vm会存在问题
[root@node01 elasticsearch]# grep '^[a-Z]' elasticsearch.yml
cluster.name: myes
node.name: node01
path.data: /data/es-data
path.logs: /var/log/elasticsearch
bootstrap.mlockall: false
bootstrap.system_call_filter: false
network.host: 192.168.10.23
http.port:
创建目录,并授权
[root@node01 elasticsearch]# mkdir -p /data/es-data
[root@node01 elasticsearch]# chown elasticsearch:elasticsearch /data/es-data/
2)单播模式
[root@node01 elasticsearch]# grep '^[a-Z]' elasticsearch.yml
cluster.name: myes
node.name: node01
path.data: /data/es-data
path.logs: /var/log/elasticsearch
bootstrap.mlockall: true
network.host: 192.168.10.23
http.port:
discovery.zen.ping.unicast.hosts: ["192.168.10.22", "192.168.10.23"]
3)启动服务
强调,一点要关闭防火墙。否则无法弄成集群
[root@node01 elasticsearch]# /etc/init.d/elasticsearch start
4)查询集群的状态
[root@node01 ~]# curl -XGET 'http://192.168.10.22:9200/_cluster/health?pretty=true'
{
"cluster_name" : "myes",
"status" : "green",
"timed_out" : false,
"number_of_nodes" : , # 2个节点
"number_of_data_nodes" : ,
"active_primary_shards" : ,
"active_shards" : ,
"relocating_shards" : ,
"initializing_shards" : ,
"unassigned_shards" : ,
"delayed_unassigned_shards" : ,
"number_of_pending_tasks" : ,
"number_of_in_flight_fetch" : ,
"task_max_waiting_in_queue_millis" : ,
"active_shards_percent_as_number" : 100.0
}
三、在主节点安装 logstash
1)安装logstash
[root@k8s6 elktools]# rpm -ivh logstash-2.3.-.noarch.rpm
准备中... ################################# [%]
正在升级/安装...
:logstash-:2.3.- ################################# [%]
[root@k8s6 elktools]# rpm -qa|grep logstash
logstash-2.3.-.noarch
[root@k8s6 elktools]# rpm -ql logstash # 查看安装生成了哪些文件
2)模拟日志标准输出:/opt/logstash/bin/logstash -e 'input { stdin{} } output { stdout{} }'
[root@k8s6 elktools]# /opt/logstash/bin/logstash -e 'input { stdin{} } output { stdout{} }'
Settings: Default pipeline workers:
Pipeline main started
hello
--15T04::.106Z k8s6 hello
hello world
--15T04::.121Z k8s6 hello world
json格式输出: /opt/logstash/bin/logstash -e 'input { stdin{} } output { stdout{ codec => rubydebug } }'
[root@k8s6 elktools]# /opt/logstash/bin/logstash -e 'input { stdin{} } output { stdout{ codec => rubydebug } }'
Settings: Default pipeline workers:
Pipeline main started
hello world
{
"message" => "hello world",
"@version" => "",
"@timestamp" => "2019-03-15T04:47:12.509Z",
"host" => "k8s6"
}
3)命令行模拟输出到elasticsearch: /opt/logstash/bin/logstash -e 'input { stdin{} } output { elasticsearch{ hosts => ["192.168.10.22:9200"] index => "logstash-%{+YYYY.MM.dd}" } }'
[root@k8s6 elktools]# /opt/logstash/bin/logstash -e 'input { stdin{} } output { elasticsearch{ hosts => ["192.168.10.22:9200"] index => "logstash-%{+YYYY.MM.dd}" } }'
Settings: Default pipeline workers:
Pipeline main started
hhhee
查询到输出的值
4)同时进行屏幕输出并写入es
[root@k8s6 elktools]# /opt/logstash/bin/logstash -e 'input { stdin{} } output { stdout{ codec => rubydebug } elasticsearch{ hosts => ["192.168.10.22:9200"] index => "logstash-%{+YYYY.MM.dd}" } }'
Settings: Default pipeline workers:
Pipeline main started
天天向上
{
"message" => "天天向上",
"@version" => "",
"@timestamp" => "2019-03-15T05:02:55.388Z",
"host" => "k8s6"
}
四、使用配置文件启动logstash
检测语法
[root@node01 ~]# /opt/logstash/bin/logstash -t -f /etc/logstash/conf.d/nginx.conf
Configuration OK
1)进入到配置文件目录。cd /etc/logstash/conf.d/ ,该目录由/etc/init.d/logstash 这里定义的
[root@k8s6 elktools]# cd /etc/logstash/conf.d/
[root@k8s6 conf.d]# ls
[root@k8s6 conf.d]#
编辑 demo.conf文件,既输出在屏幕,也存入es
YYYY.MM.dd 每天
[root@k8s6 conf.d]# cat demo.conf
input {
stdin{}
} filter{
} output{
elasticsearch {
hosts => ["192.168.10.22:9200"]
index => "logstash-%{+YYYY.MM.dd}"
} stdout{ codec => rubydebug }
}
启动服务:[root@k8s6 conf.d]# /opt/logstash/bin/logstash -f /etc/logstash/conf.d/demo.conf
2)使用file插件,指定要记录日志的目录
[root@k8s6 conf.d]# cat file.conf
input {
file{
path => ["/var/log/messages", "/var/log/secure"]
type => "system-log"
start_position => "beginning"
}
} filter{
} output{
elasticsearch {
hosts => ["192.168.10.22:9200"]
index => "system-log-%{+YYYY.MM}"
}
}
file.conf
启动服务: /opt/logstash/bin/logstash -f /etc/logstash/conf.d/file.conf
五、安装kibana
1)在主节点安装kibana
[root@k8s6 elktools]# rpm -ivh kibana-4.5.-.x86_64.rpm
查看安装到了哪些位置
[root@k8s6 elktools]# rpm -ql kibana
2)修改配置文件
[root@k8s6 config]# pwd
/opt/kibana/config
[root@k8s6 config]# grep '^[a-Z]' kibana.yml
server.port:
server.host: "0.0.0.0"
elasticsearch.url: "http://192.168.10.22:9200"
kibana.index: ".kibana"
/opt/kibana/config/kibana.yml
启动服务:[root@k8s6 config]# /etc/init.d/kibana start
[root@k8s6 config]# netstat -lntup|grep
tcp 0.0.0.0: 0.0.0.0:* LISTEN /node
网页访问:192.168.10.22:5601
2)配置索引,配置哪个,显示哪个的日志文件
匹配到了创建,即可
ELK的文档搭建的更多相关文章
- ELK安装文档
ELK安装文档: http://cuidehua.blog.51cto.com/5449828/1769525 如何将客户端日志通过ogstash-forwarder发送给服务端的logstash h ...
- swagger在线api文档搭建指南,用于线上合适么?
在上一篇文章中,我们讲解了什么是 api,什么是 sdk: https://www.cnblogs.com/tanshaoshenghao/p/16217608.html 今天将来到我们万丈高楼平地起 ...
- ELK 部署文档
1. 前言 在日常运维工作中,对于系统和业务日志的处理尤为重要.尤其是分布式架构,每个服务都会有很多节点,如果要手工一个一个的去取日志,运维怕是要累死. 简单介绍: ELK 是 elasticsear ...
- Filebeat+ELK部署文档
在日常运维工作中,对于系统和业务日志的处理尤为重要.今天,在这里分享一下自己部署的Filebeat+ELK开源实时日志分析平台的记录过程,有不对的地方还望指出. 简单介绍: 日志主要包括系统日志.应用 ...
- ELK帮助文档
elasticsearch: API中文指南:https://es.xiaoleilu.com/010_Intro/15_API.html 官方文档:https://www.elastic.co/cn ...
- elk升级文档
1.kibana等都统一版本了,5.4版本的kibana要5.4版本的elasticsearch 2.现有架构: logstash logstash读取日志-------->内网redis做队列 ...
- 一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等
本文纯原创,搭建后的博客/文档网站可以参考: Java 全栈知识体系.如需转载请说明原处. 第一部分 - 博客/文档系统的搭建 搭建博客有很多选择,平台性的比如: 知名的CSDN, 博客园, 知乎,简 ...
- hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档
相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclip ...
- ASP.NET API Helper Page 创建并生成相关帮助文档
创建API项目 修改原工程文件,该行为是为了避免和引入第三方API工程文件冲突 修改发布设置 引入需要生成文档的相关文件,将第三方API依赖的相关文件(XML文件非常重要,是注释显示的关键),复制到文 ...
随机推荐
- Silverlight中验证码生成
public class ValidationCode { Random r = new Random(DateTime.Now.Millisecond); /// <summary> / ...
- Kafka运维填坑(转)
前提: 只针对Kafka 0.9.0.1版本; 说是运维,其实偏重于问题解决; 大部分解决方案都是google而来, 我只是作了次搬运工; 有些问题的解决方案未必一定是通用的, 若应用到线上请慎重; ...
- python中网络编程之线程
网络编程之线程 什么是线程? 程序的执行线路.每个进程默认有一条线程.线程包含了程序的具体步骤. 多线程就是一个进程中有除主线程(默认线程)外还有多个线程. 线程与进程的关系(进程包含线程,而线程依赖 ...
- WPF 学习笔记
依赖属性(Dependency Property) 相比较于普通属性,依赖属性有以下特点: 变化通知(change notification) 节省内存 使用某种带优先级决定策略(resolution ...
- json字符串和json对象之间的转化
一.json字符串转化为json对象 二.json对象转化为json字符串
- windows集群简单介绍
windows集群简单介绍仔细看过以前网友发表的一些文章,总觉得对windows集群没有详细介绍,我也是借花献佛,引用了一些技术性文档.目前应用最为广泛的集群计算技术可以分为三大类:高可用性集群技术. ...
- Game Engine Architecture 7
[Game Engine Architecture 7] 1.SRT Transformations When a quaternion is combined with a translation ...
- win7安装oracle 10g问题总结。
1.安装oracle10g的时候,出现此问题,如图: 右键安装程序(setup.exe) -> 属性 -> 兼容性 -> 以兼容模式运行这个程序 windows xp( servi ...
- java 诊断工具——Arthas
该说不说!小编做的这些功能,最讨厌的就是优化!某些前辈大佬写的代码小辈我实在不敢恭维!那逻辑!那sql! 接下来!今天的主角就登场了,阿里巴巴最近开源出来的一个针对 java 的工具,主要是针对 ja ...
- volatile和synchronized实现内存可见性的区别
先看看synchronized实现内存可见性 加锁(synchronized同步)的功能不仅仅局限于互斥行为,同时还存在另外一个重要的方面:内存可见性.我们不仅希望防止某个线程正在使用对象状态而另一个 ...