ELK官网 https://www.elastic.co ELK由Elasticsearch、Logstash和Kibana三部分组件组成; Elasticsearch是个开源分布式搜索引擎,它的特色有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。 Logstash是一个彻底开源的工具,它能够对你的日志进行收集、分析,并将其存储供之后使用 kibana 是一个开源和免费的工具,它能够为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,能够帮助您汇总、分析和搜索重要数据日志。
常见平台架构node
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]
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环境
下载地址 https://www.elastic.co/downloads nginx
在界面中下载 elasticsearch Logstash Kibanagit
访问 http://localhost:9200 github
启动成功 npm
在当前版本中,因为使用的是6.4.0进行环境搭建,须要使用node 等工具进行安装插件 json
步骤一。 安装node 在此再也不赘述 windows
步骤二。安装 npm install -g grunt-cli 安装 grunt 缓存
使用 grunt –version 查看安装 grunt的版本信息restful
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
下载地址 https://github.com/mobz/elasticsearch-head 中下载head插件,选择下载zip
访问界面
以上为elasticsearch 安装和查看教程
测试elasticsearch-head
1.使用cmd请求
curl -XGET http://127.0.0.1:9200/_cluster/health?pretty
请求结果
2.使用elasticsearch-head进行请求
请求结果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
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
启动 logstash 若是报错 将 logstash.bat 中的 "%CLASSPATH%" 使用 ”” 引号引发来,在执行便可
启动报错,不能当成持续服务
是文件格式问题。
进入到 kibana-6.4.0-windows-x86_64/bin 文件夹 双击 Kibana.bat
刚启动时 ,须要等大概一分钟 ,cmd命令 窗口没有反应
使用安装命令 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": "中华" } } }
在bin中执行 elasticsearch-service.bat install
使用nssm进行安装
nssm下载地址 (官网地址) https://nssm.cc/ci/nssm-2.24-101-g897c7ad.zip
使用
进入到 ELK_WORK\nssm-2.24-101-g897c7ad\win64>nssm install logstash/Kibana
回车后会弹出执行框
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