日志监控(ELK) - huazai007

huazai007 2021-08-21 原文


日志监控(ELK)

1.ELK是什么?
ELK 其实并不是一款软件,而是一整套解决方案,是三个软件产品的首字母缩写
Elasticsearch:负责日志检索和储存
Logstash:负责日志的收集和分析、处理
Kibana:负责日志的可视化
这三款软件都是开源软件,通常是配合使用,而且又先后归于 Elastic.co 公司名下,故被简称为 ELK
2.ELK能做什么?
ELK组件在海量日志系统的运维中,可用于解决:
分布式日志数据集中式查询和管理
系统监控,包含系统硬件和应用各个组件的监控
故障排查
安全信息和事件管理
报表功能

3.简要概述Elasticsearch?
ElasticSearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful API 的 web 接口。
Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便
Elasticsearch的特点?
4.elasticsearch主要特点
1.实时分析
2.分布式实时文件存储,并将每一个字段都编入索引
3.文档导向,所有的对象全部是文档
4.高可用性,易扩展,支持集群(Cluster)、分片和复制(Shards 和 Replicas)
接口友好,支持 JSON
5.ES 没有什么?
Elasticsearch 没有典型意义的事务.
Elasticsearch 是一种面向文档的数据库。
Elasticsearch 没有提供授权和认证特性
6.ES相关概念
Node: 装有一个 ES 服务器的节点。
Cluster: 有多个Node组成的集群
Document: 一个可被搜素的基础信息单元
Index: 拥有相似特征的文档的集合
Type: 一个索引中可以定义一种或多种类型
Filed: 是 ES 的最小单位,相当于数据的某一列
Shards: 索引的分片,每一个分片就是一个 Shard
Replicas: 索引的拷贝

7.ES与关系数据库对比
ES 与关系型数据库的对比
在 ES 中,文档归属于一种 类型 (type) ,而这些类型存在于索引 (index) 中,类比传统关系型数据库
DB -> Databases -> Tables -> Rows -> Columns
关系型      数据库          表            行              列  

ES -> Indices   -> Types  -> Documents -> Fields
ES       索引            类型            文档           域(字段)

8.搭建ES流程安装第一台 ES 服务器
1.设置主机名称和 ip 对应关系 192.168.4.11 node1
2.解决依赖关系 openjdk1.8
3.安装软件包 elasticsearch
4.修改配置文件 elasticsearch.yml
5.启动服务
6.检查服务 netstat -lutunp (9200 9300)
curl:htttp://192.168.4.1:9200/
9.ES集群配置
只需要对配置文件做少量修改,其他配置一样
ES 集群配置
集群中的所有节点要相互能够 ping 通,要在所有集群机器上配置 /etc/hosts 中的主机名与 ip 对应关系
集群中所有机器都要安装 java 环境
cluster.name 集群名称配置要求完全一致
node.name 为当前节点标识,应配置本机的主机名
discovery 为集群节点机器,不需要全部配置
配置完成以后启动所有节点服务(有可能会有一定的延时,需要等待几十秒)

10.ES集群配置验证
curl http://192.168.4.11:9200/_cluster/health?
11.ES 常用插件
head 插件:
它展现ES集群的拓扑结构,并且可以通过它来进行索引(Index)和节点(Node)级别的操作
它提供一组针对集群的查询API,并将结果以json和表格形式返回
它提供一些快捷菜单,用以展现集群的各种状态
ES 常用插件
kopf 插件
是一个ElasticSearch的管理工具
它提供了对ES集群操作的API
bigdesk 插件
是elasticsearch的一个集群监控工具
可以通过它来查看es集群的各种状态,如:cpu、内存使用情况,索引数据、搜索情况,http连接数等

11.
Elasticsearch提供了一系列RESTful的API
检查集群、节点、索引的健康度、状态和统计
管理集群、节点、索引的数据及元数据
对索引进行CRUD操作及查询操作
执行其他高级操作如分页、排序、过滤等
POST 或 PUT 数据使用 json 格式
json
JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。
json 传输的就是一个字符串
python 中对应的 字符串,列表,字典都可以转换成对应的 json 格式
Rest API 的简单使用
_cat API 查询集群状态,节点信息
v 参数显示详细信息
http://192.168.4.15:9200/_cat/health?v

help 显示帮助                       信息
http://192.168.4.15:9200/_cat/health?help
Rest API 的简单使用
nodes 查询节点状态信息
http://192.168.4.15:9200/_cat/nodes?v
索引信息
http://192.168.4.15:9200/_cat/indices?v

HTTP Methods 和 RESTful API 设计
HTTP Methods 也叫 HTTP Verbs, 它们是 HTTP 协议的一部分, 主要规定了 HTTP 如何请求和操作服务器上的资源,常见的有GET, POST等
HTTP Methods 一共有九个,分别是 GET,HEAD,POST,PUT,DELETE,TRACE,OPTIONS,CONNECT,PATCH
HTTP Methods
在RESTful API 设计中,常用的有POST,GET,PUT,PATCH 和 DELETE。分别对应对资源的创建,获取,修改,部分修改和删除操作。
我们默认访问 ES API 的方法是 GET,如果要对数据库增加、删除、修改数据我们还要使用对应的方法
GET       查询
POST     增加
PUT       更改
DELETE  删除

12.kibana是什么
数据可视化平台工具

特点:
灵活的分析和可视化平台
实时总结和流数据的图表
为不同的用户显示直观的界面
即时分享和嵌入的仪表板

13.
elk-(elasticsearch—kibana—-logstash)
kibanna(批量导入数据—批量查询–在kibana里展示)
logstash(input模块file—tcp&udp—-syslog)
 (output模块rubydebug—elasticsearch)
        (filter模块grok)
        (codec)
 (filebeat)

15logstash 是什么
logstash是一个数据采集、加工处理以及传输的工具

16.logstash 特点:
所有类型的数据集中处理
不同模式和格式数据的正常化
自定义日志格式的迅速扩展
为自定义数据源轻松添加插件
17.logstash  工作结构

{ 数据源 } ==>
             input {   } ==>
                              filter {   } ==>
                                             output {   } ==>
                                                                { ES }
17.logstash 里面的类型
布尔值类型:  ssl_enable => true
字节类型:     bytes => “1MiB”
字符串类型:  name => “xkops”
数值类型:     port => 22
数组:            match => [“datetime”,”UNIX”]
哈希:            options => {k => “v”,k2 => “v2”}
编码解码:     codec => “json”
路径:            file_path => “/tmp/filename”
注释:            #

18.logstash 条件判断
等于:         ==
不等于:      !=
小于:          <
大于:          >
小于等于:   <=
大于等于:   >=
匹配正则:   =~
不匹配正则: !~
logstash 条件判断
包含:         in
不包含:     not in
与:   and
或:     or
非与:        nand
非或:   xor
复合表达式:   ()
取反符合:      !()
 

发表于
2019-06-03 10:28 
huazai007 
阅读(3074
评论(0
编辑 
收藏 
举报

 

版权声明:本文为huazai007原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/huazai007/articles/10966151.html

日志监控(ELK) - huazai007的更多相关文章

  1. Eclipse – Tasks介绍

    介绍Eclipse的插件Tasks的使用方法。 完整的过程 1.1、新定义标签 位置:Window —— Pr […]...

  2. windows 2000下最多可以承受有多大容量外存???? – surprise

    windows 2000下最多可以承受有多大容量外存???? 我现在在一台hp服务器上装了windows 20 […]...

  3. MySql取得日期(前一天、某一天) – 阳光下的小草

    MySql取得日期(前一天、某一天) 取得当天: SELECT curdate(); mysql> SE […]...

  4. 第二次作业 – 路03

    第二次作业 第二次作业:APP案例分析 App案例分析 产品:王者荣耀 选择理由   当今社会手机已经渐渐取代 […]...

  5. 机器学习入门二 —– 机器学习术语表 – 王守昌

    机器学习入门二 —– 机器学习术语表 机器学习术语表 本术语表中列出了一般的机器学习术 […]...

  6. 何使用ultraiso软碟通制作u盘启动盘(转载) – EOS666

    何使用ultraiso软碟通制作u盘启动盘(转载)     现在很多网友都不知道如何用UltraISO软件来制 […]...

  7. 跟着弦哥学人工智能2—什么是人工智能 – 传说中的弦哥

    跟着弦哥学人工智能2—什么是人工智能 《跟着弦哥学人工智能-序》发了之后,大部分群众表示喜大普奔,在这里对大家 […]...

  8. PHP 制作通讯录(一) – zimmerk

    PHP 制作通讯录(一) 最近在学PHP ,觉得比较简单,可能是因为有一点编程经验的缘故吧,今天教大家用PHP […]...

随机推荐

  1. 免费公共 DNS 大全

    收集全球免费公共DNS服务器IP,不定期更新,在使用下面DNS之前请先通过ping命令测试一下连通性。 腾讯 […]...

  2. IOS – OpenGL ES 图像漩涡 GPUImageSwirlFilter

    目录一.简介二.效果演示三.源码下载四.猜你喜欢零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础零基础 OpenGL (ES) 学习路线推荐 : OpenGL (...

  3. HTML5新标签与特性

    1.HTML5新标签与特性达标:掌握html5的常用新标签-新属性1.1 什么是HTML5HTML5 : HTML 标准的最新版本,是对 HTML 的第五次重大修改。HTML5的出现,对于WEB来说意义重大,其目的是想要把目前WEB...

  4. 华为交换机基本原理

    第四章 交换机基本原理 一、交换机工作原理 1、基于源MAC地址转发 2、基于已知目标MAC地址转发 3、当目 […]...

  5. 什么是架构师?他有着怎样的作用,成为一名架构师需要具备怎样的能力?

    在比尔· 盖茨的众多称谓中,据说他更偏爱“首席软件架构师”。同样,在网易创始人丁磊名字前,也有“首席架构师”这 […]...

  6. Gitlab的安装及项目新建

      1. Gitlab的安装及仓库创建 1.1下载gitlab安装包 1).官网下载速度较慢 建议先行下载 国 […]...

  7. |NO.Z.00006|——————————|Deployment|——|Hadoop&Spark环境部署.v06|——|Hadoop.v06|集群启动|单节点启动|

    一、启动HDFS集群### --- 启动集群注意事项~~~ # 注意:如果集群是第一次启动,需要在Namenode所在节点格式化NameNode,~~~ # 非第一次不用执行格式化Namenode操作!!二、单节点启动:格...

  8. Java面向对象程序设计第14章3-8和第15章6

    Java面向对象程序设计第14章3-8和第15章6 3.完成下面方法中的代码,要求建立一个缓冲区,将字节输入流 […]...

展开目录

目录导航