Elastic Stack 玩转系列
文章平均质量分 63
ELK是开源的海量文档数据存储分析收集的一体化解决方案,通过学习后可以在大多数的场景中应用ELK来解决大多数的问题。
叶康铭
云原生布道者,华为云享专家,阿里云栖专家。
公众号:云原生架构
展开
-
Beat 修改 Index 踩坑记录
问题:更改 Beat 中关于 Index 的设置报错:setup.template.name and setup.template.pattern have to be set if index name is modified原因: 需要指定 setup.template.name 以及 setup.template.pattern 这两个配置后才能修改 Indexoutput.elasticsearch: hosts: ["http://elasticsearch:9200"] usern原创 2020-10-21 17:07:19 · 4741 阅读 · 1 评论 -
APM 追踪 Java 应用性能
在分布式系统下,如何去发现某一些服务的工作性能情况,以及追踪一次会话相关的服务调用呢,通过 Elastic APM 服务,就可以很简单的对不同开发语言的程序进行统一监控。架构设计涉及到 Elastic Stack 中 Metricbeat 是用于采集 Kubernetes 相关的性能指标, Elasticsearch 是用于对于数据落地存储和搜索的引擎, Kibana 是用于对数据可视化的工具。本例子采用 Java 开发语言,由于 Java Agent 是在 Class 被装载到 ClassLo.原创 2020-10-21 15:34:06 · 2212 阅读 · 0 评论 -
APM Server 部署安装 (Docker)
为什么要使用 Docker来部署 APM Server 呢,传统使用软件在操作系统上安装和配置的方法过于繁琐,并且受一些跨平台的约束,例如Mac、Windows、Linux等,所以无论安装什么软件,通过 Docker 进行部署是最为简单并且便捷的。APM启动容器docker run -d --user=root --name=apm-server --link elasticsearch -p 8200:8200 docker.elastic.co/apm/apm-server:7.9.2参数.原创 2020-10-21 15:33:44 · 3915 阅读 · 0 评论 -
ELK Stack & Elastick Stack
ELK 是什么呢?ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。Elasticsearch 是搜索和分析引擎,Logstash 数据采集和处理的工具,Kibana 是与 Elasticsearch交互使数据可视化的工具。在2015年,Elastic公司在 ELK Stack 中加入轻量级的采集工具 Beats,那就是现在的 Elastic Stack了。ElasticsearchElasticsearch 在2010年首次发布原创 2020-10-14 08:44:18 · 1551 阅读 · 1 评论 -
Elasticsearch & Kibana 部署安装 (Docker)
为什么要使用 Docker来部署 Elasticsearch 和 Kibana 呢,传统使用软件在操作系统上安装和配置的方法过于繁琐,并且受一些跨平台的约束,例如Mac、Windows、Linux等,所以无论安装什么软件,最好通过 Docker 进行部署是最为简单并且便捷的。Elasticsearch启动容器docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -v.原创 2020-10-15 07:54:36 · 1961 阅读 · 0 评论 -
Elasticsearch & Kibana 部署安装 (Kubernetes)
为什么要使用 Kuberentes 来部署 Elasticsearch 和 Kibana 呢,在实际的生产环境中,大部分都是使用 Kubernetes 来进行应用的托管,因为通过 Kuberentes 的一些高级功能,很轻易的实现服务发现,故障自愈,水平扩容等等的好处。ElasticsearchapiVersion: apps/v1kind: Deploymentmetadata: labels: app: elasticsearch name: elasticsearch-d.原创 2020-10-16 07:38:32 · 1817 阅读 · 1 评论 -
Elasticsearch Mapping & Setting
Mapping & Setting 是 Index 最重要的组成部分,Mapping 定义了 Index中的字段名称以及字段类型等信息, Setting 则定义了 Index 分片数量及副本数量等信息,通过了解 Mapping 和 Setting,可以更加合规的去设计 Index。Node一个节点就是一个Elasticsearch 实例,在操作系统层面看实质上就是一个进程,节点在启动时就拥有成为主节点的资格(Master Eligible),经过选举后每一个Master Eligible节.原创 2020-10-16 13:54:29 · 1865 阅读 · 1 评论 -
Elasticsearch Document & Type & Index
要了解Eleasticsearch,首先就要从基本的对象进行了解,这一篇是介绍什么是文档(Document),什么是类型(Document Type),什么是索引(Index),如何去创建和使用。文档(Document)文档是 Elasticsearch 中可被搜索的最小单位,文档由多个字段的值组成,通过序列化 JSON 格式保存在Elasticsearch中,每一个文档都有唯一的ID。例如个人的简历、歌曲的详情等等都可以存储在文档中。文档元数据用于标注文档的相关信息_index :文档所属的.原创 2020-10-17 07:49:59 · 3147 阅读 · 0 评论 -
Elasticsearch DSL - CRUD
Elasticsearch 支持 JSON 格式的操作数据,它就是 DSL (Domain Specific Language),通过将查询的 DSL 看待成 AST (Abstract Syntax Tree),其中包括叶子查询子句(单一逻辑)及复合查询子句(组合逻辑)。以下操作都在 Kibana Dev Tools 中进行实践。索引(Index)创建索引# 创建索引PUT materiel{ "settings" : { "number_of_shards" : 3, .原创 2020-10-17 07:51:26 · 1571 阅读 · 1 评论 -
Elasticsearch 英文分词 & 中文分词
对于倒排索引来说,很重要的一件事情就是需要对文本进行分词,经过分词可以获取情感、词性、质性、词频等等的数据。Elasticsearch 分词工作原理在 Elasticsearch 中进行行分词的需要经过分析器的3个模块,字符过滤器将文本进行替换或者删除,在由分词器进行拆分成单词,最后由Token过滤器将一些无用语气助词删掉。英文分词在Elasticsearch 中共支持5种不同的分词模式,在不同的场景下发挥不同的效果。standard (过滤标点符号)GET /_analyze{ ".原创 2020-10-17 07:53:56 · 6784 阅读 · 2 评论 -
Elasticsearch 倒排索引原理
Elasticsearch 最强悍的功能之一就是全文检索,如何可以做到呢,其实本质上的原理就需要用的倒排索引了,本文将探索一下倒排索引的工作原理。正排索引 (Forward Index)根据 ID 去找到对应的文档倒排索引 (Inverted Index)根据 内容 去找到对应的文档工作原理通过标记位匹配,找到相关度最高的词进行评分后输出同样的场景下对文本进行搜索,正排索引的时间复杂度为O(n),意思就是有多少条数据就得扫描多少次,但倒排索引的时间复杂度为只需要O(1),意思就是扫描.原创 2020-10-17 08:11:27 · 1932 阅读 · 1 评论 -
Filebeat 采集 Nginx 日志
Nginx 日志可用于分析用户地址位置,行为画像等,如何通过 Elastic Stack 进行一站式的数据采集,数据清洗,数据落地,数据可视化,让数据发挥真正的价值呢?架构设计涉及到 Elastic Stack 中 Filebeat 是用于采集 Nginx 相关的日志, Elasticsearch 是用于对于数据落地存储和搜索的引擎, Kibana 是用于对数据可视化的工具。在 Nginx 中相关的日志是存储在 /var/log/nginx 目录下的,分别是访问日志 access.log,错误日志.原创 2020-10-20 15:48:29 · 4057 阅读 · 12 评论 -
Metricbeat 采集 Nginx 指标
Nginx 状态页可用于分析目前的服务健康状态和负载,如何通过 Elastic Stack 进行一站式的数据采集,数据清洗,数据落地,数据可视化,让数据发挥真正的价值呢?架构设计涉及到 Elastic Stack 中 Metricbeat 是用于采集 Nginx 相关的性能指标, Elasticsearch 是用于对于数据落地存储和搜索的引擎, Kibana 是用于对数据可视化的工具。在 Nginx 中相关的状态页面需要通过打开 http_stub_status_module 这个模块获取,在编译.原创 2020-10-20 15:48:41 · 2038 阅读 · 0 评论 -
Filebeat 采集 Docker 日志
由于容器的特性,在容器重新创建后日志会废弃掉,如何通过持久化和中心化的处理容器日志变成一个棘手的问题,如何通过 Elastic Stack 进行一站式的数据采集,数据清洗,数据落地,数据可视化,让数据发挥真正的价值呢?架构设计涉及到 Elastic Stack 中 Filebeat 是用于采集 Docker 相关的日志, Elasticsearch 是用于对于数据落地存储和搜索的引擎, Kibana 是用于对数据可视化的工具。在 Docker 中容器的日志是存储在/var/lib/docker/c.原创 2020-10-20 15:49:18 · 5146 阅读 · 1 评论 -
Metricbeat 采集 Docker 指标
Dokcer本身命令行界面去管理集群内的资源对象,例如有需求想查看某一些容器在任意的时间段性能的使用情况,如何通过 Elastic Stack 进行一站式的数据采集,数据清洗,数据落地,数据可视化,让数据发挥真正的价值呢?架构设计涉及到 Elastic Stack 中 Metricbeat 是用于采集 Docker 相关的性能指标, Elasticsearch 是用于对于数据落地存储和搜索的引擎, Kibana 是用于对数据可视化的工具。通过将宿主机的 Docker 套接字映射到 Metricbe.原创 2020-10-20 15:49:23 · 2713 阅读 · 0 评论 -
Filebeat 采集 Kubernetes 日志
由于容器的特性,在容器重新创建后日志会废弃掉,如何通过持久化和中心化的处理容器日志变成一个棘手的问题,如何通过 Elastic Stack 进行一站式的数据采集,数据清洗,数据落地,数据可视化,让数据发挥真正的价值呢?架构设计涉及到 Elastic Stack 中 Filebeat 是用于采集 Kubernetes Pod 相关的日志,Elasticsearch 是用于对于数据落地存储和搜索的引擎, Kibana 是用于对数据可视化的工具。在 Docker 中容器的日志是存储在/var/lib/.原创 2020-10-20 15:49:49 · 2686 阅读 · 0 评论 -
Metricbeat 采集 Kubernetes 指标
Kubernetes 本身命令行界面去管理集群内的资源对象,例如有需求想查看某一些Pod在任意的时间段性能的使用情况,如何通过 Elastic Stack 进行一站式的数据采集,数据清洗,数据落地,数据可视化,让数据发挥真正的价值呢?架构设计涉及到 Elastic Stack 中 Metricbeat 是用于采集 Kubernetes 相关的性能指标, Elasticsearch 是用于对于数据落地存储和搜索的引擎, Kibana 是用于对数据可视化的工具。首先 Kubernetes 需要部署 .原创 2020-10-20 15:49:35 · 2124 阅读 · 0 评论