容器化:ES和Kibana

1 缘起

最近在学习使用ES,
为了找一个功能强大的可视化工具,之前使用了ES-Head,可以满足学习需求。
闲暇时间又折腾了另一个工具Kibana,
分享如下。

在这里插入图片描述

Kibana优点:

用户友好性:Kibana提供直观易用的用户界面,支持可视化数据和交互式查询。
实时监控:能够实时监控数据,快速识别趋势、问题和异常。
灵活性:支持自定义仪表板和图表,可以根据需求定制展示数据。
整合性:与Elasticsearch等开源工具集成紧密,为数据分析和可视化提供全面解决方案。
多功能性:支持多种数据源和格式,包括日志文件、指标数据和地理空间数据等。

Kibana缺点:

学习曲线:对于新手来说,可能需要一定时间来熟悉Kibana的各项功能和配置选项。
性能限制:处理大规模数据时可能会影响性能,特别是在数据可视化较为复杂的情况下。
维护复杂性:需要定期维护和更新,以确保系统的稳定性和安全性。
扩展性限制:在某些情况下,Kibana的扩展性可能受到限制,无法满足一些高级或定制化的需求。
资源消耗:运行Kibana可能需要较多的系统资源,尤其是在处理大量数据或复杂查询时。

版本:
ES:8.12.2
Kibana:8.12.2

2 容器化ES

参考文章:https://blog.csdn.net/Xin_101/article/details/136418895

3 容器化Kibana

3.1 配置ES账密

# 进入ES容器,添加用户kibana-user
/usr/share/elasticsearch/bin/elasticsearch-users useradd kibana-user
# 配置密码:kibana-pwd

#增加授权:
#superuser能正常打开es的9200端口,kibana_system配置后才可以正常对接kb和es
/usr/share/elasticsearch/bin/elasticsearch-users roles -a superuser kibana-user
/usr/share/elasticsearch/bin/elasticsearch-users roles -a kibana_system kibana-user

3.1.1 移除授权

/usr/share/elasticsearch/bin/elasticsearch-users roles -r kibana_admin kibana-user

3.1.2 查看授权

/usr/share/elasticsearch/bin/elasticsearch-users roles -v kibana-user

kibana-user : kibana_system,superuser

3.2 部署Kibana

# 拉取镜像
docker pull kibana:8.12.2
# 前台启动,获取配置文件
docker run --name kibana -p 5601:5601 kibana:8.12.2
# 新建配置路径
mkdir -p /home/xindaqi/data/kibana-8-12-2
# 拷贝配置文件
docker cp kibana:/usr/share/kibana/config /home/xindaqi/data/kibana-8-12-2
# 修改配置文件
vi /home/xindaqi/data/kibana-8-12-2/config/kibana.yml
elasticsearch.username: "kibana-user"
elasticsearch.password: "kibana-pwd"

启动

docker run -dit \
--restart=always \
--name kibana-8-12-2 \
-p 5601:5601 \
-v /home/xindaqi/data/kibana-8-12-2/config:/usr/share/kibana/config \
kibana:8.12.2

3 应用

3.1 登录Kibana

http://172.22.75.234:5601/login?next=%2Fapp%2Fhome#/
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3.2 查看索引

在这里插入图片描述

3.3 查询数据

在这里插入图片描述

在这里插入图片描述

4 小结

(1)部署Kibana8.12.2连接ES8.12.2不能使用elastic用户名,需要配置新的用户;
(2)需要为新建的用户添加kibana角色:kibana_system;
(3)配置Kibana,为获取配置文件,可以先临时启动Kibana,从容器内拷贝配置文件到本地,本地修改后,挂在到容器内。

5 Q&A

5.1 Kibana无法使用用户名:elastic

原因

Kibana8.12.2版本中,Kibana配置ES用户名时,提示无法使用elastic,因为这个用户名是超级用户。

[config validation of [elasticsearch].username]: value of “elastic” is forbidden. This is a superuser account that cannot write to system indices that Kibana needs to function. Use a service account token instead. Learn more: https://www.elastic.co/guide/en/elasticsearch/reference/8.0/service-accounts.html
Error: [config validation of [elasticsearch].username]: value of “elastic” is forbidden. This is a superuser account that cannot write to system indices that Kibana needs to function. Use a service account token instead. Learn more: https://www.elastic.co/guide/en/elasticsearch/reference/8.0/service-accounts.html
at ensureValidConfiguration (/usr/share/kibana/node_modules/@kbn/core-config-server-internal/src/ensure_valid_configuration.js:23:11)
at Server.preboot (/usr/share/kibana/node_modules/@kbn/core-root-server-internal/src/server.js:162:5)
at Root.preboot (/usr/share/kibana/node_modules/@kbn/core-root-server-internal/src/root/index.js:47:14)
at bootstrap (/usr/share/kibana/node_modules/@kbn/core-root-server-internal/src/bootstrap.js:97:9)
at Command. (/usr/share/kibana/src/cli/serve/serve.js:241:5)

FATAL Error: [config validation of [elasticsearch].username]: value of “elastic” is forbidden. This is a superuser account that cannot write to system indices that Kibana needs to function. Use a service account token instead. Learn more: https://www.elastic.co/guide/en/elasticsearch/reference/8.0/service-accounts.html

方案

新增ES用户,并配置角色:kibana_system

# 进入ES容器,添加用户kibana-user
/usr/share/elasticsearch/bin/elasticsearch-users useradd kibana-user
# 配置密码:kibana-pwd

#增加授权:
#superuser能正常打开es的9200端口,kibana_system配置后才可以正常对接kb和es
/usr/share/elasticsearch/bin/elasticsearch-users roles -a superuser kibana-user
/usr/share/elasticsearch/bin/elasticsearch-users roles -a kibana_system kibana-user

#移除授权:
/usr/share/elasticsearch/bin/elasticsearch-users roles -r kibana_admin kibana-user

#查看授权:
/usr/share/elasticsearch/bin/elasticsearch-users roles -v kibana-user

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/643342.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

项目思考-编辑器

1、文本生成编辑器 2、图片合成编辑器(未完待续) 3、文字和图像版本的技术要点,区别(未完待续) 4、编辑器的人员配置考虑,技术难点分析(未完待续) 1、文本生成编辑器

【Python】 掌握 Flask 请求数据获取的艺术

基本原理 在Web开发中,Flask是一个用Python编写的轻量级Web应用框架。它被广泛用于快速开发简单的Web应用。当用户通过浏览器或其他客户端向服务器发送请求时,Flask需要能够接收和解析这些请求中的数据。这些数据可以是GET请求的查询字符串、POST请求的…

收集 VSCode 常用快捷键

快速复制行 Shift Alt ↑/↓ 都是往下复制行,区别是:按↓复制时光标会跟着向下移动,按↑复制时光标不移动。 向上/向下移动一行 Alt ↑/↓ 删除整行 Ctrl Shift KCtrl x 剪切快捷键在VSCode 可以直接删除一行 垂直编辑 Ctrl…

用于时间序列概率预测的蒙特卡洛模拟

大家好,蒙特卡洛模拟是一种广泛应用于各个领域的计算技术,它通过从概率分布中随机抽取大量样本,并对结果进行统计分析,从而模拟复杂系统的行为。这种技术具有很强的适用性,在金融建模、工程设计、物理模拟、运筹优化以…

HACL-Net:基于MRI的胎盘植入谱诊断的分层注意力和对比学习网络

文章目录 HACL-Net: Hierarchical Attention and Contrastive Learning Network for MRI-Based Placenta Accreta Spectrum Diagnosis摘要方法实验结果 HACL-Net: Hierarchical Attention and Contrastive Learning Network for MRI-Based Placenta Accreta Spectrum Diagnosis…

Linux驱动设备导论(1)

最近本人在学习Linux驱动,本系列教程是本人在一边学习,一边总结的系列教程,希望能够给很多刚学驱动小伙伴一些总结。 1.Linux设备分类 驱动针对的对象是存储器和外设,不是针对CPU,可以分为以下三大类: 1.…

01-Linux【准备篇】

一、学Linux的作用? 1.Linux下开发(部署)软件项目 2.Linux运维 二、Linux的强与弱 1.薄弱 个人桌面领域的应用 此领域是传统Linux应用薄弱的环节,近些年随着Ubuntu、fedora等优秀桌面环境的兴起,Linux在个人桌面领域的占有率在慢慢提高…

[国产大模型简单使用介绍] 开源与免费API

个人博客:Sekyoro的博客小屋 个人网站:Proanimer的个人网站 随着大模型技术蓬勃发展和开源社区越来越活跃,国内的大模型也如雨后春笋一般.这时,一些就会问了,有了llama3,Mistral还有Gemma等等,国外大厂接连发力,一些开源社区也会有一些不错的模型,国内怎么比?对一个人使用,oll…

Debezium+Kafka:Oracle 11g 数据实时同步至 DolphinDB 解决方案

随着越来越多用户使用 DolphinDB,各式各样的应用场景对 DolphinDB 的数据接入提出了不同的要求。部分用户需要将 Oracle 11g 的数据实时同步到 DolphinDB 中来,以满足在 DolphinDB 中实时使用数据的需求。本篇教程将介绍使用 Debezium 来实时捕获和发布 …

03_前端三大件CSS

文章目录 CSS用于页面元素美化1.CSS引入1.1style方式1.2写入head中,通过写style然后进行标签选择器加载样式1.3外部样式表 2.CSS样式选择器2.1 元素选择器2.2 id选择器2.3 class选择器 3.CSS布局相关3.1 CSS浮动背景:先设计一些盒子因此,引出…

【Go专家编程——内存管理——垃圾回收】

垃圾回收 所谓的垃圾就上不在需要的内存块,垃圾如果不清理,这些内存块就没有办法再次被分配使用。在不支持垃圾回收的编程语言中,这些垃圾内存就上泄露的内存。 1. 垃圾回收算法 常见的垃圾回收算法有3种 引用计数:对每个对象…

Vue学习笔记3——事件处理

事件处理 1、事件处理器(1)内联事件处理器(2)方法事件处理器 2、事件参数3、事件修饰符 1、事件处理器 我们可以使用v-on 指令(简写为)来监听DOM事件,并在事件触发时执行对应的JavaScript。 用法: v-on:click"me…

牛客NC334 字典序第K小【困难 10叉树 Java/Go/PHP/C++】,力扣 440. 字典序的第K小数字

题目 题目链接: https://www.nowcoder.com/practice/670c2bda374241d7ae06ade60de33e8b https://leetcode.cn/problems/k-th-smallest-in-lexicographical-order/description/ 本答案核心 10叉树, 数学规律Java代码 import java.util.*;public class Solution {…

出题123

题目时限空间说明 无特殊均默认 1 s , 256 M B 1s,256MB 1s,256MB Problem a 最大化 在最大化目标值的基础上选择的操作越多越好,且输出操作应当按照顺序执行,即你的输出顺序就是你的执行顺序,当有多个执行顺序可以最大化目标值时&#xff0…

49 序列化和反序列化

本章重点 理解应用层的作用,初识http协议 理解传输层的作用,深入理解tcp的各项特性和机制 对整个tcp/ip协议有系统的理解 对tcp/ip协议体系下的其他重要协议和技术有一定的了解 学会使用一些网络问题的工具和方法 目录 1.应用层 2.协议概念 3. 网络计…

网络爬虫原理及其应用

你是否想知道Google 和 Bing 等搜索引擎如何收集搜索结果中显示的所有数据。这是因为搜索引擎对其档案中的所有页面建立索引,以便它们可以根据查询返回最相关的结果。网络爬虫使搜索引擎能够处理这个过程。 本文重点介绍了网络爬虫的重要方面、网络爬虫为何重要、其…

Docker学习(3):镜像使用

当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载。 一、列出镜像列表 可以使用 docker images 来列出本地主机上的镜像。 各个选项说明: REPOSITORY&am…

vue源码2

vue之mustache库的机理其实是将模板字符串转化为tokens 然后再将 tokens 转化为 dom字符串&#xff0c;如下图 对于一般的将模板字符串转化为dom字符串&#xff0c;这样不能实现复杂的功能 let data {name:小王,age:18 } let templateStr <h1>我叫{{name}},我今年{{ag…

MySQl创建数据库与管理表

创建数据库与管理表 基础知识 完整的数据存储过程 同时&#xff0c;数据库系统层次 数据库服务器 -》 数据库 -》 数据表 -》 行与列 数据库命名规则&#xff1a; 库名、表名不得超过30字符&#xff1b;变量名&#xff08;字段&#xff09;不超过29字符 只能包含A-Z、a-z、…

hive3从入门到精通(二)

第15章:Hive SQL Join连接操作 15-1.Hive Join语法规则 join分类 在Hive中&#xff0c;当下版本3.1.2总共支持6种join语法。分别是&#xff1a; inner join&#xff08;内连接&#xff09;left join&#xff08;左连接&#xff09;right join&#xff08;右连接&#xff09;…