ES 和Kibana-v2 带用户登录验证

embedded/2024/11/29 23:26:25/

1. 前言
ElasticSearch、可视化操作工具Kibana。如果你是Linux centos系统的话,下面的指令可以一路CV完成服务的部署。

2. 服务搭建
2.1. 部署ElasticSearch
拉取docker镜像

docker pull elasticsearch:7.17.21

创建挂载卷目录

mkdir /**/es-data -p
mkdir /**/es-plugins -p
mkdir /**/es-config -p
chmod 777 /**/es-data
chmod 777 /**/es-plugins
chmod 777 /**/es-config

第一次启动容器(目的是为了把配置文件考出)

docker run -d \--name es \-e "ES_JAVA_OPTS=-Xms512m -Xmx1024m" \-e "discovery.type=single-node" \--privileged \--network es-net \-p 9200:9200 \-p 9300:9300 \
elasticsearch:7.17.21

可以提前创建docker 网络

docker network create -d bridge es-net

拷贝出配置文件 

docker cp es:/usr/share/elasticsearch/config/ /**/es-config/

删除容器

docker rm -f es

以单机模式运行容器(也可以结合K8S进行集群部署,我们在后面的K8S系列文章中应该也会讲到)

docker run -d \--name es \-e "ES_JAVA_OPTS=-Xms512m -Xmx1024m" \-e "discovery.type=single-node" \-e "ELASTICSEARCH_USERNAME=root" \-e "ELASTICSEARCH_PASSWORD=你的密码" \-v /**/es-data:/usr/share/elasticsearch/data \-v /**/es-plugins:/usr/share/elasticsearch/plugins \-v /**/es-config/config:/usr/share/elasticsearch/config \--privileged \--network es-net \-p 9200:9200 \-p 9300:9300 \
elasticsearch:7.17.21

 `-e "cluster.name=es-docker-cluster"`:设置集群名称
`-e "http.host=0.0.0.0"`:监听的地址,可以外网访问
`-e "ES_JAVA_OPTS=-Xms512m -Xmx1024m"`:内存大小
`-e "discovery.type=single-node"`:非集群模式
`-v es-data:/usr/share/elasticsearch/data`:挂载逻辑卷,绑定es的数据目录
`-v es-logs:/usr/share/elasticsearch/logs`:挂载逻辑卷,绑定es的日志目录
`-v es-plugins:/usr/share/elasticsearch/plugins`:挂载逻辑卷,绑定es的插件目录
`--privileged`:授予逻辑卷访问权
`--network es-net` :加入一个名为es-net的网络中
`-p 9200:9200`:端口映射配置

进入容器内生成密码

docker exec -it es /bin/bash

生成密码 ,他会让你为各个预设角色设置密码,包括 apm_system、kibana、kibana_system、logstash_system、beats_system、remote_monitoring_user 以及 elastic。

elasticsearch-setup-passwords interactive

可能会有报错。

我们需要进入es的config目录中打开elasticsearch.yml

增加以下两项:

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

访问9200端口,测试服务是否正常启动,若正常启动会看到要求输入账号密码,我们这里账号输入elastic,密码输入你设置的

账号密码正确就会看到如下信息

2.2. 部署Kibana

拉取docker镜像

docker pull kibana:7.17.21

第一次运行容器

docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
--network=es-net \
-p 5601:5601  \
kibana:7.17.21

拷贝出kibana配置文件

docker cp kibana:/usr/share/kibana/config/ /local/kibana-config

删除容器

docker rm -f kibana

修改/local/kibana-config/config/kibana.yml配置文件,添加如下配置,让kibana有权限去访问ES

elasticsearch.username: "kibana_system"
elasticsearch.password: "你的密码"

此处密码为c**t1234

重启容器并挂载配置文件目录

docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
-v /local/kibana-config/config:/usr/share/kibana/config \
--network=es-net \
-p 5601:5601  \
kibana:7.17.21

访问5601端口,访问kibana界面,输入账号密码(账号就是预设用户,比如elastic,密码就是你在es容器中设置的密码)登录

如果网页能够进入,但是一直报错,可以尝试清空浏览器缓存,重新访问

密码使用kibana_system用户登录不上,使用elastic用户可以。


http://www.ppmy.cn/embedded/141597.html

相关文章

idea中git的将A分支某次提交记录合并到B分支

一 实操案例 1.1 背景描述 在开发过程中,有时候需要将A分支某次提交记录功能合并到B分支上。主要原理用到git的cherry pick功能。 1.2 案例 实现的功能: master分支的11.24提交记录合并到feature_A分支; 1.master分支提交的记录 2.fea…

一款适用于教育行业的免费word插件

适用于Office和WPS的Word 功能如下: 1、批量生成导航编号,方便拖动排序题目,并可以一键修正自动题目编号 2、批量添加和删除题目来源,删除时如果选中一个区域,只删除选中区域内的题目来源,没有选中则删除…

二刷代码随想录第16天

513. 找树左下角的值 找到深度最大的点,遍历方式左边节点在右边节点前面,找到就返回,一定就是最左下角的值了 class Solution { public:int max_depth -1;int result 0;int findBottomLeftValue(TreeNode* root) {traversal(root, 0);ret…

ubuntu 安装proxychains

在Ubuntu上安装Proxychains,你可以按照以下步骤操作: 1、更新列表 sudo apt-update 2、安装Proxychains sudo apt-get install proxychains 3、安装完成后,你可以通过编辑/etc/proxychains.conf文件来配置代理规则 以下是一个简单的配置示例&…

信息技术与数据安全:打造高效、安全的数据处理系统

信息技术与数据安全:打造高效、安全的数据处理系统 在当今这个信息化高速发展的时代,数据已成为企业运营和决策的核心资源。随着大数据、云计算、人工智能等信息技术的飞速发展,数据处理能力得到了前所未有的提升,但同时也对数据…

git的使用(简洁版)

什么是 Git? Git 是一个分布式版本控制系统 (DVCS),用于跟踪文件的更改并协调多人之间的工作。它由 Linus Torvalds 在 2005 年创建,最初是为了管理 Linux 内核的开发。Git 的主要目标是提供高效、易用的版本控制工具,使得开发者…

reactivex.Observable 超时问题

下面代码测试可知:超时设置需要在map之后才有效,换句话说就是,超时只对超时设置之前的代码有用 import io.reactivex.Observable; import java.util.concurrent.TimeUnit;public class TimeoutTest {public static void main(String[] args…

网络安全——SpringBoot配置文件明文加密

一、前言 在日常开发中,项目中会有很多配置文件。比如SpringBoot项目核心的数据库配置、Redis账号密码配置都在properties、yml配置文件 中。 如果这些信息以明文的方式存储,你的电脑被拿去修理,就会容易泄露,一旦被其他人获取到…