分布式ELK平台 、 ES集群安装 、 扩展插件 、 总结和答疑

 

ELK简介

什么是ELK

ELK是一整套解决方案,是三个软件产品的首字母缩写,很多公司都在使用,如何:Sina,携程,华为,美团等

ELK分别代表

-Elasticsearch:负责日志检索和存储

-Logstash:负责日志的收集分析,处理

-Kibana:负责日志的可视化

这三款软件都是开源软件,通常是配合使用,而且又先后归于Elastic.co公司名下,故被简称为ELK

 

ELK能做什么

ELK组件在海量日志系统的运维中,可用于解决

-分布式日志数据集中式查询和管理

-系统监控,包含系统硬件和应用各个组件的监控

-故障排查

-安全信息和事件管理

-报表功能

 

ELK什么样子

 

Elasticsearch部分

ElasticSearch是一个基于Lucene的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful API的Web接口

Elasticsearch是用Java开发的,并作为Apache许可条款下的开源源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便

 

主要特点

-实时分析

-分布式实时文件存储,并将每一个字段都编入索引

-文件导向,所有的对象全部是文档

-高可用性,易扩展,支持集群(Cluster),分片和复制(Shards和Replicas)

-接口优化,支持JSON

 

ES没有什么

-ElasticSearch没有典型意义的事务

-ElasticSearch是一种面向文档的数据库

-ElasticSearch没有提供授权和认证特性

 

相关概念

-Node:装有一个ES服务器的节点

-Cluster:有多个Node组成的集群

-Index:拥有相似特征的文档的集合  (类似于databases的库)

-Type:一个索引中可以定义一种或多种类型

-Document:一个可被搜索的基础信息单元

-Filed:是ES的最小单位,相当于数据的某一列

-Shards:索引的分片,每一个分片就是一个Shard

-Replcas:索引的拷贝

 

SQL与NoSQL

 

Elasticsearch架构图

 

 

 

ES基础

ES集群安装

安装第一台ES服务器

-设置主机名称和ip对应关系

-解决依赖关系

-启动服务

-检查服务

 

案例

 

 

 

ES集群配置

 

 

status:green为状态正常

 

 

案例

 

ES插件的使用

ES常用插件

head插件

-它展现ES集群的拓扑结构,并且可以通过它来进行索引(Index)和节点(Node)级别的操作

-它提供一组针对集群的查询API,并将结果以json和表格形式返回

-它提供一些快捷菜单,用以展现集群的各种状态

 

kopf插件

-是一个ElasticSearch的管理工具

-它提供了对ES集群操作的API

bigdesk插件

-是ElasticSearch的一个集群监控工具

-可以通过它来查看es集群的各种状态,如:cpu、内存使用情况,索引数据,搜索情况,http连接数等

 

ES插件安装、查看

-查看安装的插件

-安装插件

注:必须使用url的方式进行安装,不能以绝对路径。也可以使用ftp的方式安装

 

ES HEAD插件

 

ES KOPF插件

 

ES bigdesk插件

 

案例

 

 

HTTP协议简介

http请求由三部分组成

-分别是:请求行,消息报头,请求正文

-请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和协议版本,格式如下:

 

http请求方法

-常用方法 GET,POST,HEAD

-其他方法 OPTIONS,PUT,DELETE,TRACE和CONNECT

ES常用

-PUT   增

-DELETE  删

-POST  改

-GET  查

 

系统命令curl

在LINUX中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持多种请求模式,自定义请求头等强大功能,是一款综合工具

 

curl常用参数

-A修改请求agent

-X设置请求方法

-i 显示返回头信息

 

RESTful API调用

Elasticsearch提供了一系列RESTful的API

-检查集群、节点、索引的健康度、状态和统计

-管理集群、节点、索引的数据及元数据

-对索引进行CRUD操作及查询操作

-执行其他高级操作如分页,排序、过滤等

 

POST或PUT数据使用json格式

 

JSON

-JSON(JavaScript Object Notation),意思是JavaScript对象表示法,它是一种基于文本独立语言的轻量级数据交换格式

-JSON格式

-数组["aa","bb","cc"]

-键值对{key:value}

 

RESTful API的简单使用

-_cat API查询集群状态,节点信息

-  v参数显示详细信息

 -  help显示帮助信息

 

 

案例

 

批量导入数据

使用_bulk批量导入数据

-批量导入数据使用POST方式,数据格式为json,url编码使用data-binary

-导入含有index配置的json文件

 

map映射

 

案例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值