建设银行分期手机网站湛江做网站说
ELK学习笔记1:简介及安装
ELK的简介
ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具。
- Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
 - Logstash主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。
 - Kibana也是一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。

 
ES安装步骤
下载elasticsearch(6.8.7版本)
 elastic下载地址:https://www.elastic.co/cn/downloads/past-releases/elasticsearch-6-8-7
 遇到的问题:
- https://blog.csdn.net/weixin_40816738/article/details/123434998
 
1 解压es文件,并来到bin目录下
# 经历将该目录放在当前的用户目录下,否则可能会报权限拒绝问题
tar -zxvf elasticsearch-6.8.7.tar.gz 
ls
cd elstaicsearch-6.8.7/bin/
 
2 启动es,在es的bin目录下
./elstaicsearch
 
后台启动可以 ./elasticsearch -d
3 测试连接(另起一个界面),会看到一份JSON数据
如果curl没有安装,需要使用apt安装一下curl
 curl 127.0.0.1:9200
4 实现远程访问,在config/elasticsearch.yml配置
vi elasticsearch.yml
需要修改的配置内容,cluster.name(集群名称),path.data(数据存放位置),path.logs(日志存放位置),network.host(集群ip),http.port(集群端口)
cluster.name: my-application
path.data: /home/grid/elasticsearch-6.8.7/data
path.logs: /home/grid/elasticsearch-6.8.7/logs
network.host: 192.168.171.101
http.port: 9200
 
5 重新启动es
./elstaicsearch
 若出现错误,无法启动:请自行百度原因
 启动成功,访问网址测试连接http://127.0.0.1:9200/
 
安装head(elasticsearch-head-master)
elasticsearch-head-master是es的集群管理工具,可以用来数据的浏览和查询。
head是开源软件,托管在github,需要在github下载,地址:git://github.com/mobz/elasticsearch-head.git。
head的运行需要用到grunt,而grunt需要npm,所以需要安装nodejs。
es5.0之后,head已经不做为插件方在plugins目录,直接拷贝在本地就行。
1 安装nodejs
安装教程: https://baijiahao.baidu.com/s?id=1714641263988021723&wfr=spider&for=pc
2 下载elasticsearch-head-master
下载地址:https://github.com/mobz/elasticsearch-head
 下载zip后,解压到文件夹中。
3 安装grunt
npm install -g grunt-cli
4 安装head需要的npm包
来到head目录下安装head的依赖包,
cd elasticsearch-head-master/
 
npm install -g cnpm --registry=https://registry.npm.taobao.org
或者
npm install 
 
5 查看版本
grunt -version
 
6 修改各类配置文件
-  
修改Gruntfile.js配置文件
vim Gruntfile.js
在connect–>server–>options下面添加:hostname:’*’,允许所有IP可以访问hostname:'*',

 -  
修改_site目录下的 app.js 中 head 的默认连接地址
cd _site vi app.js
“http://localhost:9200"改成"http://192.168.171.101:9200”

 -  
配置es允许跨域访问,es目录下的config的elasticsearch.yml
cd config vi elasticsearch.yml
在文件末尾追加http.cors.enabled: true http.cors.allow-origin: "*"
 -  
启动head
grunt server
 
7 在浏览器访问head
http://127.0.0.1:9100/
 

安装Kibana
1 解压缩kibana
tar -zxvf kibana-6.8.7-linux-x86_64.tar.gz
2 修改配置文件在config下的kibana.yml
cd kibana-6.8.7-linux-x86_64/config/
vi kibana.yml
 
修改为以下内容:
server.port: 5601
server.host: "127.0.0.1"
elasticsearch.hosts: ["http://127.0.0.1:9200"]
 

3 启动kibana,在kibana的bin目录下执行
启动kibana之前需要先启动elasticsearch
 ./kibana
 浏览器访问:http://127.0.0.1:5601
 
安装中文分词器
下载网址:https://github.com/medcl/elasticsearch-analysis-ik
 将解压后的ik文件夹移动到es的plugins目录下
 
安装logstash
- 解压缩logstash
tar -zxvf logstash-6.8.7.tar.gz - 启动logstash小案例(在logstash目录的bin中)
./logstash -e 'input { stdin { } } output { stdout {} }' - 一般启动logstach是需要配置 input,output
比如新建一个demo,在demo中新建一个xxx.conf,将input和output配置。在conf时启动方式:
./logstash -f ../demo/xxx.conf 
Linux启动ELK步骤
-  
启动 elasticsearch
elasticsearch目录下(master)./bin/elasticsearch

 -  
启动 elasticsearch-head-master
elasticsearch-head-master目录下grunt server

 -  
启动 kibana
kibana目录下./bin/kibana

 -  
启动logstash(选择性是否启动)
logstash目录下./bin/logstash -e 'input {stdin {} } output{ stdout {}}'

 
至此ELK都安装成功
