Elasticsearch、Logstash和Kibana Windows环境搭建(一)

旧巷老猫 提交于 2020-05-04 23:50:52
一、概述
ELK官网 https://www.elastic.co
ELK由Elasticsearch、Logstash和Kibana三部分组件组成;

Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
Logstash是一个完全开源的工具,它可以对你的日志进行收集、分析,并将其存储供以后使用
kibana 是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。

db_vs_es

常见平台架构

ELK = Elasticsearch + Logstash + Kibana
EFK = Elasticsearch + Flume + Kibana

简单架构:
ELK+Redis
或
(Logstash/Flume)->(Kafka/Redis)->ES->Web

可更简单些:
Client(Filebeat) --> LogServer(Logstash-->Elasticsearch-->Kibana )
(可以不用Logstash,Filebeat直接输出到ES)

复杂架构:
数据采集层[离线/实时数据,MySQL/ES/Logstash/Flume]
->数据传输层[Kafka/Redis]
->数据缓存层[Storm->Kafka]
->计算存储层[离线计算(Kylin/Spark SQL/Impala/MR)、实时计算(Storm/Spark Streaming/Flink/Druid)、存储(ES/MySQL/Hbase/HDFS/Kudu)]
->应用层[Web/REST API]

二、下载安装ELK
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.4.3.tar.gz --no-check-certificate
wget https://artifacts.elastic.co/downloads/logstash/logstash-5.4.3.tar.gz --no-check-certificate
wget https://artifacts.elastic.co/downloads/kibana/kibana-5.4.3-windows-x86.zip --no-check-certificate

注意需要jdk8环境


在windows 上运行 elasticsearch 分布式日志分析,检索

下载地址 https://www.elastic.co/downloads  

在界面中下载  elasticsearch   Logstash  Kibana

1 .  elasticsearch   下载 ,zip 解压缩,进入bin 运行文件elasticsearch.bat  

访问 http://localhost:9200 

image

启动成功   


2 .由于elasticsearch 只是字符串 等文件信息 ,需要安装  elasticsearch-head 插件

            在当前版本中,由于使用的是6.4.0进行环境搭建,需要使用node 等工具进行安装插件

            步骤一。 安装node   在此不再赘述

            步骤二。安装 npm install -g grunt-cli   安装   grunt  

                         使用 grunt –version  查看安装 grunt的版本信息

 

3.修改elasticsearch/conf 文件夹 修改  elasticsearch.xml 文件  ,

 

进入安装目录下的config目录,修改elasticsearch.yml文件.在文件的末尾加入以

http.cors.enabled: true

http.cors.allow-origin: "*"

node.master: true

node.data: true

其他操作

然后去掉network.host: 192.168.0.1的注释并改为network.host: 0.0.0.0,去掉cluster.name;node.name;http.port的注释(也就是去掉#)

  双击elasticsearch.bat重启es


4.下载elasticsearch-head包


下载地址 https://github.com/mobz/elasticsearch-head  中下载head插件,选择下载zip

5.解压到指定文件夹下,G:\elasticsearch-6.6.2\elasticsearch-head-master  进入该文件夹,修改G:\elasticsearch-6.6.2\elasticsearch-head-master\Gruntfile.js 在对应的位置加上hostname:'*'

image

6. 修改完成后,使用cmd命令进入 elasticsearch-head-master 文件夹中  ,

     执行命令 npm install   然后在执行 npm run start   运行 head

运行成功 成功界面image


访问界面

image

以上为elasticsearch 安装和查看教程

测试elasticsearch-head 

  1.使用cmd请求 

curl -XGET http://127.0.0.1:9200/_cluster/health?pretty
请求结果
image
2.使用elasticsearch-head进行请求
请求结果
image

☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆

启动  logstash 服务

需要修改 conf中添加 logstash.conf   在新建的文件中粘贴

input {
     file {
         type => "nginx_access"
         path => "D:\nginx\logs\access.log"
     }
}
output {
     elasticsearch {
         hosts => ["192.168.10.105:9200"]
         index => "access-%{+YYYY.MM.dd}"
     }
     stdout {
         codec => json_lines
     }
}

进入到bin文件夹中 执行   
   命令1   logstash.bat agent –f   ../config/logstash.conf

    命令2   logstash.bat -f  ../config/logstash.conf

启动 logstash  如果报错  将  logstash.bat  中的  "%CLASSPATH%"  使用  ”” 引号引起来,在执行即可

image

启动报错,不能当成持续服务

     reason=>"Expected one of #, input, filter, output at line 1, column             1       (byte1)after "}

是文件格式问题。

Windows文件默认是utf8 。将文件格式改为:ansi格式就可以了。程序可以正常运行

bin\logstash -f ./config/test.conf


启动Kibana 服务

进入到   kibana-6.4.0-windows-x86_64/bin 文件夹  双击 Kibana.bat

刚启动时 ,需要等大概一分钟  ,cmd命令 窗口没有反应




Elasticsearsh 设置中文分词器

使用安装命令  elasticsearch-plugin.bat install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.0/elasticsearch-analysis-ik-6.4.0.zip

使用windows 安装会报错,不如直接下载  然后将文件  信息解压到 elasticsearch/plugs/ik文件夹下

验证 在kibana中可以进行 请求,也可在 elasticsearsh中进行请求

GET    _search    { "query": { "match": { "message": "中华" } } }




将elasticsearsh 设置为windows 系统服务

     在bin中执行   elasticsearch-service.bat install

将logstash   Kibana 设置为windows 服务

使用nssm进行安装

   nssm下载地址    (官网地址)   https://nssm.cc/ci/nssm-2.24-101-g897c7ad.zip

使用

进入到 ELK_WORK\nssm-2.24-101-g897c7ad\win64>nssm install logstash/Kibana

回车后会弹出执行框

image

NSSM  用法 (  Linux service 使用一样)

  show service installation GUI:

        nssm install [<servicename>]

To install a service without confirmation:

        nssm install <servicename> <app> [<args> ...]

To show service editing GUI:

        nssm edit <servicename>

To retrieve or edit service parameters directly:

        nssm dump <servicename>

        nssm get <servicename> <parameter> [<subparameter>]

        nssm set <servicename> <parameter> [<subparameter>] <value>

        nssm reset <servicename> <parameter> [<subparameter>]

To show service removal GUI:

        nssm remove [<servicename>]

To remove a service without confirmation:

        nssm remove <servicename> confirm

To manage a service:

        nssm start <servicename>

        nssm stop <servicename>

        nssm restart <servicename>

        nssm status <servicename>

        nssm statuscode <servicename>

        nssm rotate <servicename>

        nssm processes <servicename>

 

 

总结,

在windows中启动  ELK 日志收集分析查询 功能 ,

将会在服务中安装三个服务

Elasticsearch 服务  访问地址  192.168.10.105:9200

服务名  Elasticsearch 6.4.0 (elasticsearch-service-x64)


logstash 服务  访问地址 192.168.10.105:9600

Kibana   服务   访问地址:http://localhost:5601

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!