容器化:ES和Kibana

news2025/3/15 17:41:53

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IC卡水表抄表是什么?什么叫IC卡水表抄表?

一、什么叫IC卡水表抄表 IC卡水表抄表是一种现代化水资源管理方法,主要是通过集成智能IC卡科技的水表开展计量检定和传送数据。用户在预付模式中,根据IC卡在线充值后再用,用水量会自动保存在卡上,大大提高了抄表效率精确性。 二…

机器学习预测-CNN手写字识别

介绍 这段代码是使用PyTorch实现的卷积神经网络(CNN),用于在MNIST数据集上进行图像分类。让我一步步解释: 导入库:代码导入了必要的库,包括PyTorch(torch)、神经网络模块&#xff0…

STM32H743的FDCAN使用方法(1):STM32CubeMX初始化代码生成

0 工具准备 1.STM32CubeMX1 前言 本文介绍基于STM32CubeMX,使用stm32h743xi的对FDCAN2进行配置的方法。 2 初始化代码生成 2.1 选择FDCAN引脚 本例选择PB5、PB6作为FDCAN2的RX、TX引脚。 2.2 选择FDCAN时钟源 本例选择PLL2Q作为FDCAN时钟源,频率…

Redis(1)-Jedis连接配置

问题 阿里云安装并启用Redis后,尝试在本地用Jedis调用,发现报错 public class Jedis01 {Testpublic void connect(){Jedis jedis new Jedis("101.37.31.211", 6379); // 公网ipjedis.auth("123"); // 密码String ping jedis.pin…

可转债日内自动T+0交易,行情推送+策略触发+交易接口

说明 目前这个项目已编译打包,下载即可测试,直接生成多平台可执行文件,详见运行方法。行情部分与策略弱相关,拆分解耦单独作为一个项目。行情项目请移步GitHub - freevolunteer/hangqing: A股行情订阅工具,支持股票/可转债level2/level2数据&…

Golang实现递归复制文件夹

代码 package zdpgo_fileimport ("errors""os""path/filepath""strings" )// CopyDir 复制文件夹 // param srcPath 源文件夹 // param desPath 目标文件夹 // return error 错误信息 func CopyDir(srcPath, desPath string) error {…

机器学习第十次课

前言 因为考了一次试,所以没讲太多新东西,唯一的问题是有的知识刚讲完就考了,导致我爆了...... 正文 主要讲的就是一个贝叶斯分类模型,这是属于生成式的分类器了 Bayesian decision theory 我的理解是贝叶斯公式则是利用条件概率和全概率公式计算后验概率,就这么简单 但是…

智慧农业可视化大屏,当个农民是不是小伙伴的梦想。

智慧农业可视化大屏是指通过数据可视化技术,将农业生产过程中的各种数据、指标和信息以图表、图像等形式展示在大屏上,以便农业从业者能够直观地了解农田、作物、气象、设备等方面的情况,从而进行农业生产的监控、管理和决策。以下是智慧农业…

怎么快速批量导出文本二维码?文件批量生码的方法和步骤

随着互联网的快速发展,二维码的应用也越来越广泛,现在很多二维码会用来展示物品信息,将编辑好的文字内容生成二维码之后,让其他人通过扫码的方式来获取相关内容。那么当有多条信息时,有什么方法能够一次批量生成二维码…

PHP质量工具系列之php_CodeSniffer

PHP_CodeSniffer 是一组两个 PHP 脚本:主脚本 phpcs 对 PHP、JavaScript 和 CSS 文件进行标记,以检测是否违反定义的编码标准;第二个脚本 phpcbf 自动纠正违反编码标准的行为。PHP_CodeSniffer 是一个重要的开发工具,可以确保你的…

04Django项目基本运行逻辑及模板资源套用

对应视频链接点击直达 Django项目用户管理及模板资源 对应视频链接点击直达1.基本运行逻辑Django的基本运行路线:视图views.py中的 纯操作、数据返回、页面渲染 2.模版套用1.寻找一个好的模版2.模板部署--修改适配联动 OVER,不会有人不会吧不会的加Q1394…

AI大模型到底能帮我干什么?

这周百度文心一言大模型正式发布了,不少网民拿着各种段子搞笑和玩梗。我在的其中某个微信群里,一位老兄针对当下的大模型,发出来如下的问题: 大家这么玩梗真没意思 我一直没弄明白这些大模型怎么帮助我工作 这个问题有一定的代表性…

关于sklearn决策树手动指定节点进行剪枝调整的实现

一、决策树剪枝 决策树的剪枝方式有两种,预剪枝和后剪枝,后剪枝在python的sklearn方法中提供了CCP代价复杂度剪枝法(Cost Complexity Pruning)具体实现代码如下: # -*- coding: utf-8 -*- from sklearn.datasets imp…

Java入门基础学习笔记44——String

为什么要学习String的处理呢? 开发中,对字符串的处理是非常常见的。 String是什么?可以做什么? java.lang.String 代表字符串。可以用来创建对象封装字符串数据,并对其进行处理。 1、创建对象 2、封装字符串数据 3…

超过GPT4.0?Claude3官网及国内镜像站,国内使用克劳德3的方法

近期又有一个大模型横空出世,这就是由Anthropic公司推出的Claude 3(克劳德3),在多项基准测试中得分超越了GPT-4,那么他到底是什么情况呐?其实大家在国内也是可以使用上的! 克劳德Claude3 关于…

Python 闭包的高级用法详解

所谓闭包,就是指内函数使用了外函数的局部变量,并且外函数把内函数返回出来的过程,这个内函数称之为闭包函数。可以理解为是函数式编程中的封装。 内部函数可以使用外部函数定义的属性:外部函数调用后,返回内部函数的地…

Java入门基础学习笔记36——面向对象基础

面向对象编程快速入门: 计算机是用来处理数据的。 单个变量 数组变量 对象数据 Student类: package cn.ensource.object;public class Student {String name;double chinese_score;double math_score;public void printTotalScore() {System.out.pr…

AUTOMATIC1111/stable-diffusion-webui/stable-diffusion-webui-v1.9.3

配置环境介绍 目前平台集成了 Stable Diffusion WebUI 的官方镜像,该镜像中整合如下资源: GpuMall智算云 | 省钱、好用、弹性。租GPU就上GpuMall,面向AI开发者的GPU云平台 Stable Diffusion WebUI版本:v1.9.3 Python版本:3.10.…

HCIE是什么证书?为什么要考?

每当我发一些关于HCIE的话题时,总有小伙伴过来问“啥是HCIE啊?”今天就一起来了解下,到底什么是HCIE?为什么这么多人都要考HCIE? HCIE是华为认证ICT专家的缩写,它是华为认证体系中最高级别的ICT技术认证。HCIE全称为H…

windows 设置系统字体 (win11 win10)

由于微软的字体是有版权的,所以我打算替换掉 1.下载替换工具 github的项目,看起来很多人对微软默认字体带版权深恶痛绝。 项目地址:nomeiryoUi地址 这里选取最新的版本即可 2.打开软件 这里显示标题栏不能改,确认,其…