大数据-171 Elasticsearch ES-Head 与 Kibana 配置 使用 测试
点一下关注吧!!!非常感谢!!持续更新!!!
目前已经更新到了:
- Hadoop(已更完)
- HDFS(已更完)
- MapReduce(已更完)
- Hive(已更完)
- Flume(已更完)
- Sqoop(已更完)
- Zookeeper(已更完)
- HBase(已更完)
- Redis (已更完)
- Kafka(已更完)
- Spark(已更完)
- Flink(已更完)
- ClickHouse(已更完)
- Kudu(已更完)
- Druid(已更完)
- Kylin(已更完)
- Elasticsearch(正在更新…)
章节内容
上节我们完成了如下的内容:
- Elasticsearch 集群模式
- 集群模式配置 启动 测试
ES-Head插件
为了我们测试和学习的方便,我们要安装一个叫:Elasticsearch Head插件。
它是一个界面化的集群操作和管理工具,可以对集群进行傻瓜式操作,你可以通过把插件把它集成到ES。
ES-Head主要是三个方面的操作:
- 显示集群的拓扑,能够快速访问并显示集群的状态,并且能够执行索引和节点级别的操作。
- 搜索接口能够查询集群中原始JSON或表格格式的检索数据
- 有一个输入窗口,允许任意调用RESTAPI
ES-Head 是一个用于 Elasticsearch 集群管理的开源可视化插件,帮助用户监控和管理集群状态、索引及数据分布。ES-Head 是轻量级的,界面简洁直观,适合开发者和运维人员实时观察集群运行状况。
官方地址
这是一个开源的插件:
https://github.com/mobz/elasticsearch-head
功能特点
集群健康监控
- 显示集群的健康状态(green、yellow、red)。
- 显示所有节点信息,包括主节点、副本节点状态。
索引管理
- 支持索引的查看、创建、删除、关闭和打开操作。
- 查看每个索引的元信息(例如文档数量、段数量、占用存储等)。
- 可以直接从界面更新索引的mapping和settings。
数据节点监控
- 显示每个节点的状态,包括已分配分片和未分配分片。
- 展示节点的硬件资源信息,如存储空间使用情况。
分片管理
- 可视化显示分片的分配情况。
- 支持查看未分配分片的原因,并手动重新分配分片。
RESTful 查询执行
- 提供查询编辑器,可以在插件中直接发送 RESTful 请求到集群。
- 支持 GET、POST、PUT、DELETE 等请求方法,帮助调试和验证 API。
索引分布可视化
- 提供分片在集群中的分布图,便于检查数据分布和副本均衡情况。
多集群支持
- 可以在一个界面管理多个集群,支持跨集群查看索引状态。
安装步骤
Elasticsearch-head是一个基于Node.js的前端工程,官方有可以运行的Elasticsearch-Head的方式,但是这里我们为了方便,就不从部署的方式去做了,直接用Chrome插件的方式:
https://chrome.google.com/webstore/detail/elasticsearch-head/ffmkiejjmecolpfloofpjologoblkegm/
安装之后,可以看到一个这样的插件:
测试连接
我们填写地址之后,访问(里边本来空的,后来为了测试,启动了Kibana之后,测试的这个):
使用场景
- 开发和调试:开发者可以在插件界面直接发送 REST 请求,查看索引结构和数据。
- 实时监控集群健康:管理员可以通过插件快速发现集群中的问题(如未分配的分片、节点挂掉等)。
- 资源均衡优化:可视化查看分片分布,帮助进行负载均衡。
注意事项
- 由于 ES-Head 插件不需要登录认证,一旦对外开放接口,可能会存在安全风险。在生产环境中使用时,应通过 VPN 或防火墙限制访问权限。
- 在大规模集群中,数据过多可能会导致界面响应缓慢。
Kibana
官方地址
https://www.elastic.co/cn/support/matrix#matrix_os
Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图标,如柱形图、线状图、饼图等。
而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。
核心功能
仪表盘(Dashboard)
- 将多个可视化图表集成到一个页面,形成实时动态的仪表盘。
- 支持图表拖拽、缩放和联动更新,方便数据展示。
数据探索(Discover)
- 提供灵活的搜索查询界面,可以按时间、字段和过滤条件进行数据检索。
- 支持使用 KQL(Kibana Query Language) 和 Lucene 语法 查询数据。
可视化(Visualizations)
- 支持创建多种类型的可视化图表,如柱状图、折线图、饼图、地图、热力图等。
- 可以将查询结果以图形方式展示,帮助更好地理解数据。
日志分析(Logs)
- 针对日志数据优化,支持快速查询和实时日志流分析。
- 适合用于系统运维、错误排查和日志监控。
监控(Monitoring)
- 可监控 Elasticsearch 集群和 Kibana 自身的运行状态,如集群健康状况、节点性能等。
- 可以帮助发现 Elasticsearch 集群中的瓶颈和问题。
安全性(Security)
- 支持用户认证和授权控制,与 Elasticsearch 的 X-Pack 安全插件集成。
- 可以基于角色和用户设置访问权限,确保数据安全。
告警(Alerting)
- 支持创建告警规则,基于查询结果触发事件(如错误日志或异常情况)。
- 可以将告警发送到电子邮件、Slack 或 Webhook。
机器学习(Machine Learning)
- 通过内置的机器学习功能,可以自动检测数据中的异常模式和趋势。
- 应用于日志分析、指标监控和预测分析。
Canvas
- 用于创建自定义的交互式报告和演示。
- 可以自定义图表样式和背景,适合数据驱动的商业演示。
Geo 可视化(Maps)
- 提供基于地理信息的可视化展示,支持 GeoJSON 数据。
- 用于展示与地理位置相关的数据,如用户分布、销售区域等。
安装步骤
(注意:我们要在ROOT用户下进行操作!)
我们现在项目并且上传(直接在服务器上下载也可以),上传到 h121 服务器上。
对应的截图内容如下:
解压配置
cd /opt/software
ls
tar -zxvf kibana-7.3.0-linux-x86_64.tar.gz
mv kibana-7.3.0-linux-x86_64 ../servers
对应的截图如下图所示:
改变Kibana目录拥有者账号:
chown -R es_server /opt/servers/kibana-7.3.0-linux-x86_64
此外,还需要设置访问权限:
chmod -R 777 /opt/servers/kibana-7.3.0-linux-x86_64
配置文件
修改配置文件:
vim /opt/servers/kibana-7.3.0-linux-x86_64/config/kibana.yml
在当中修改端口号等信息:
server.port: 5601
elasticsearch.hosts: ["http://h121.wzk.icu:9200"]
server.host: "0.0.0.0"
server.publicBaseUrl: "http://h122.wzk.icu:5601"
修改内容部分如下图所示:
启动服务
配置完成之后,我们切换用户进行启动:
su es_server
cd /opt/servers/kibana-7.3.0-linux-x86_64
bin/kibana
对应的截图如下:
访问服务
http://h122.wzk.icu:5601/
网页的页面如下:
(不一定有账号密码,高版本有要求,低版本直接进入就好)
账号密码是 elastic 和 elastic的密码(之前postman测试的那个)
我们点击右侧的:DevTool按钮,就可以进入 Kibana 提供的可视化工具了:
可以测试一下这些命令,发现是没问题的,以后的命令可以在这里测了:
使用场景
日志与系统监控
- 通过 Logstash 将日志文件发送到 Elasticsearch,使用 Kibana 实时监控系统日志和应用程序日志。
业务数据分析
- 在业务系统中,通过 Kibana 监控销售数据、客户数据等,支持企业决策。
异常检测与告警
- 使用 Kibana 监控系统性能或业务关键指标,当检测到异常时触发告警。
用户行为分析
- 监控网站或应用的用户行为,分析用户访问路径和流失率。
相关文章:

大数据-171 Elasticsearch ES-Head 与 Kibana 配置 使用 测试
点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…...

git 与 github 同步
1.配置账户 git config --global user.name "你的用户名" git config --global user.email "你的邮箱" 2.输入命令创建ssh key $ ssh-keygen -t rsa -C "邮箱" //你自己注册GitHub的邮箱 输入命令之后提示输入密码,回车直到出现…...

数学建模算法与应用 第10章 多元分析及其方法
目录 10.1 因子分析 Matlab代码示例:因子分析 10.2 主成分分析 Matlab代码示例:主成分分析 10.3 典型相关分析 Matlab代码示例:典型相关分析 10.4 判别分析 Matlab代码示例:线性判别分析 10.5 对应分析 Matlab代码示例&a…...

西门子828d的plc一些信息记录
1、虽然是200的plc但是引入了DB的形式替代原来的V存储区。 2、用户自定义DB块范围,DB9000-DB9063,共64个DB块。 可用地址范围如上图 机床MCP483面板地址表,其它类型的面板地址自己在828d简明调试手册里查看。 如何上载828d的plc程序: 1.通…...

为啥我的Python这么慢 - 项查找 (二)
上一篇为啥我的Python这么慢, 字符串的加和和join被陈群主分享到biopython-生信QQ群时,乐平指出字典的写法存在问题,并给了一篇知乎的链接https://zhuanlan.zhihu.com/p/28738634指导如何高效字典操作。 根据那篇文章改了两处写法,如下 (存储…...

计算机毕业设计python+spark知识图谱课程推荐系统 课程预测系统 课程大数据 课程数据分析 课程大屏 mooc慕课推荐系统 大数据毕业设计
指导教师意见: 1.对“文献综述”的评语: 对教育领域数据可视化的相关背景和现状做了综述,明确了课题的研究目标和研究重点,并对研究手段进行了概述。为后面的毕业设计做好了准备。 对本课题的深度、广度及工作量的…...

阿里 C++面试,算法题没做出来,,,
我本人是非科班学 C 后端和嵌入式的。在我面试的过程中,竟然得到了阿里 C 研发工程师的面试机会。因为,阿里主要是用 Java 比较多,C 的岗位比较少,所以感觉这个机会还是挺难得的。 阿里 C 研发工程师面试考了我一道类似于快速…...

【自动驾驶汽车通讯协议】GMSL通信技术以及加串器(Serializer)解串器(Deserializer)介绍
文章目录 0. 前言1. GMSL技术概述2. 为什么需要SerDes?3. GMSL技术特点4.自动驾驶汽车中的应用5. 结论 0. 前言 按照国际惯例,首先声明:本文只是我自己学习的理解,虽然参考了他人的宝贵见解及成果,但是内容可能存在不准…...

Uiautomator2与weditor配置一直报错咋办
作者在配置这两个的时候绞尽脑汁了,u2的init总是报错并且无法自动在手机上安装atx,weditor可以打开但是只要对元素操作或者任意操作就会让你去重新init,搞得作者焦头烂额,而且网上各种各样的报错信息眼花缭乱,作者几乎…...

Java后端面试题:MySQL篇
目录 MySQL基础部分 1. SELECT语句完整的执行顺序是什么? 2. 说一说内连接和外连接。 3. 请说说数据库三大范式。 4. 请你说说视图的作用,视图可以更改么? 架构 5. 请你说一说MySQL架构。 6. 请你说说一条SQL语句的执行过程ÿ…...

# Excel 操作大全
Excel 操作大全 文章目录 Excel 操作大全单元格文本换行计算SUM 单元格 文本换行 设置自动换行,在文本前面使用 AltEnter键即可换行文本前面可以输入空格实现段前缩进的效果 计算SUM 求和函数...

javascript中快速获取最大值和最小值
在 ES6 中,你可以使用 Math.max 和 Math.min 函数来获取一组数字中的最大值和最小值。这两个函数都接受一个可变数量的参数,并返回这些参数中的最大值或最小值。 以下是一个示例: const numbers [1, 2, 3, 4, 5];const max Math.max(...n…...

git merge啥意思
git merge 是 Git 中的一个命令,用于将一个分支的更改合并到另一个分支中。当你在一个项目中有多个开发人员同时工作,或者你在不同的特性分支上开发新功能时,git merge 命令就非常有用。它可以帮助你将不同分支上的更改整合在一起。 git mer…...

Web编程---Servlet技术
文章目录 一、目的二、原理三、过程1. TestServlet02文件演示效果2. TestServlet03文件演示效果3. TestServlet04与TestServlet05文件演示效果4. 控制台展示生命周期过程 四、代码web.xml文件TestServlet02.java文件TestServlet03.java文件TestServlet04.java文件TestServlet05…...

【cocos creator】输入框滑动条联动小组建
滑动条滑动输入框内容会改变 输入框输入,滑动条位置改变 const { ccclass, property } cc._decorator;ccclass() export default class SliderEnter extends cc.Component {property({ type: cc.Float, displayName: "最大值", tooltip: "" }…...

Flink时间窗口程序骨架结构
前言 Flink 作业的基本骨架结构包含三部分:创建执行环境、定义数据处理逻辑、提交并执行Flink作业。 日常大部分 Flink 作业是基于时间窗口计算模型的,同样的,开发一个Flink时间窗口作业也有一套基本的骨架结构,了解这套结构有助…...

计算机视觉之可做什么
1、计算机视觉的应用 计算机视觉在我们生活中已经有了很广泛的应用,在我们可见、不可见;可感知、不可感知的地方,深深地影响了我们的生活、生产方式。 日常生活:美颜相机、火车站刷脸进站、线上办理业务的身份认证、自动驾驶等等…...

观察者模式的思考
观察者模式由来 观察者模式(Observer Pattern)是一种行为型设计模式,它的起源可以追溯到20世纪90年代初,由设计模式四人帮(Erich Gamma, Richard Helm, Ralph Johnson 和 John Vlissides)在其著作《设计模…...

ORACLE SELECT INTO 赋值为空,抛出 NO DATA FOUND 异常
例子: DECLARE ORDER_NUM VARCHAR2(20); BEGIN SELECT S.ORDER_NUM INTO ORDER_NUM FROM SALES_ORDER S WHERE S.ID122344; DBMS_OUTPUT.PUT_LINE(单号: || ORDER_NUM); END; 在查询结果为空的情况下,以上代码会报错:未找到任何数据 解决方…...

GPT提示词
参考 提示词大全: GPT提示词大全(中英文双语)持续更新 提示词.com...

Redis协议详解及其异步应用
目录 一、Redis Pipeline(管道)概述优点使用场景工作原理Pipeline 的基本操作步骤C 示例(使用 [hiredis](https://github.com/redis/hiredis) 库) 二、Redis 事务概述事务的前提事务特征(ACID 分析)WATCH 命…...

LeetCode213:打家劫舍II
题目链接:213. 打家劫舍 II - 力扣(LeetCode) 代码如下 class Solution { public:int rob(vector<int>& nums) {if(nums.size() 0) return 0;if(nums.size() 1) return nums[0];if(nums.size() 2) return max(nums[0…...

linux一二三章那些是重点呢
第一章 静态库动态库的区别 什么是库 库文件是计算机上的一类文件,可以简单的把库文件看成一种代码仓库,它提供给使用者一些可以直接 拿来用的变量、函数或类。 如何制作 静态动态库 静态库: GCC 进行链接时,会把静态库中代码打…...

C语言中的程序入口:超越main函数的探索
在C语言中,尽管main函数是标准程序的默认入口点,但借助编译器特性和链接器选项,我们可以指定其他函数作为程序的入口。GCC编译器通过-e选项,允许我们将任何符合签名的函数作为程序的入口。这一特性可以用于特定的实验需求、特定系…...

《面试之MQ篇》
《面试之MQ篇》 1. 为什么要使用MQ 首先,面试官问的第一个问题或者说是逼问的一个问题:“为什么要使用MQ”其实面试官问这个问题就是想考察你MQ的特性,这个时候呢,我们必须要答出三点:解耦、异步、削峰。 1. 解耦 1. 传统系统…...

Git 分支操作-开发规范
一、背景 在实际开发中,一般在主分支的基础上单独创建一个新的分支进行开发,最后合并到master分支,而不是直接在master分支进行开发。 二、新建分支 1、初始状态,local为本地分支,remote为远程分支 2、单击 “Remot…...

JSONArray根据指定字段去重
JSONArray dataList new JSONArray();这儿省略dataList 加数据的过程 dataList new JSONArray(dataList.stream().distinct().collect(Collectors.toList())); Set<String> timestamps new HashSet<>();根据时间字段去重 dataList dataList.stream().map(obj -…...

线程有哪几种状态? 分别说明从一种状态到另一种状态转变有哪些方式?
在 Java 中,线程的生命周期管理通过不同的状态来跟踪。一个线程在其生命周期中可以处于多种状态,不同的状态之间会通过特定的事件发生转变。以下是 Java 线程的几种状态及其之间的转移方式: 1. 线程的状态 1.1 NEW(新建状态&…...

自注意力机制self-attention中的KV 缓存
在自注意力机制中,KV 缓存(Key-Value Caching)主要用于加速模型在推理阶段的计算,尤其是在处理长序列或者生成任务(如文本生成)时,这种缓存机制可以显著提高效率。 1. KV 缓存的背景 在 Trans…...

前端库--nanoid(轻量级的uuid)
文章目录 定义:生成方式:现实使用:NanoID 只有 108 个字节那么大NanoID更安全NanoID它既快速又紧凑 使用步骤1.安装nanoid包2.引入使用3.使用4.自定义字母 定义: UUID 是 通用唯一识别码(Universally Unique Identifierÿ…...