当前位置: 首页 > article >正文

ElasticSearch学习笔记(一)

计算机软件的学习,最重要的是举一反三,只要大胆尝试,认真验证自己的想法就能收到事办功倍的效果。在开始之前可以看看别人的教程做个快速的入门,然后去官方网站看看官方的教程,有中文教程固然是好,没有中文教程大家也不要怕,硬着头皮看下去一定有收获

本人对ES并不熟悉,虽然十几年前就接触过Lucene,但是无奈当时技术太菜根本就没有深入下去,最近准备认真的研究一下ES,边探索,边记录,可能会有错误的理解,回头再更正吧。我想我这笔记最重要的是给正在学习编程技术的同学点启发,以便能够在编程之路上走的再快些再稳些。

一、安装Elasticsearch

win10下安装

ElasticSearch下载

在这里插入图片描述
下载完成后直接解压缩就可以使用了。

解压后的ElasticSearch目录如下图所示。
在这里插入图片描述

  • bin 可执行文件目录.
  • config 配置文件目录
  • jdk Elasticsearch是依赖JDK,这里是Elastic内置的JDK环境
  • lib 类库
  • logs 日志
  • modules 模块
  • plugins 插件

二、ElasticSearch启动

进入bin目录,双击elasticsearch.bat批处理文件就可以启动ES了。
在这里插入图片描述
如果出现下图所示的黑窗口说明ES启动成功,ES启动完成后不要关闭cmd窗口。
在这里插入图片描述
打开浏览器,在地址栏中输入https://localhost:9200,应该能够出现ES的登录界面。

👿 ES 8.11默认是开启SSL的,所以一定要注意使用https://localhost:9200

在这里插入图片描述
可是我们好像并不知道用户名和密码啊?

三、重置ES内置用户密码

ES内置了一个用户名为elastic的用户,但是这个用户的密码我们却不知道,翻看了ES的启动信息也没有找到。

进入bin目录,仔细观察会发现有个password相关的批处理文件elasticsearch-setup-passwords.bat
在这里插入图片描述
双击这个文件一闪就退出了,用编辑器打开看看里面的内容吧。
在这里插入图片描述
大胆猜测这个批处理文件其实是调用了安全相关的模块,需要使用cmd命令行来运行它。
在这里插入图片描述
进行elasticsearch-reset-password.bat批处理文件,窗口输出了帮助信息。从帮助信息可以得知批处理文件必选参数是-u,后跟用户名。

命令格式如下

elasticsearch-reset-password.bat -u elastic

在这里插入图片描述
使用我们重置的新密码就可以登录了。

在这里插入图片描述
上图是登录成功的截图。
使用elasticsearch-reset-password.bat命令我们重置了内置用户elastic的密码,可是这个密码的复杂度有点高,很难记忆,作为练习使用的elasticsearch我想设置一个简单易记的密码。好吧,再研究一下elasticsearch-reset-password.bat这个批处理吧。
在这里插入图片描述
通过-h帮助我们可以看到上图的输出信息。从这些信息中可以得知批处理后可以加Eabfhisu url v这几个参数,其中-u是必加参数,-i是交互式参数。那么就运行一下-i参数看看有什么输出吧。
在这里插入图片描述提示你将要重置用户[elastic]的密码,你是否继续,[y/N]的意思是如果你在交互模式下输入y,表示你将进入重置密码的流程,大写的N表示默认输入是N,如果你直接回车则不进入重置密码流程。

💁‍♂ [y/N]和[Y/n]在很多交互模式中都通用的,要学会举一反三。
在这里插入图片描述
输入两次新密码后就重置成功了,连原密码都不要,从这里也能让大家明白,所谓的安全都是相对的。很多软件的安全性都是基于操作系统的,操作系统的安全性,是你整个安全系统的第一道屏障。
在这里插入图片描述
上图是直接回车的输出。

通过上面的命令重置elastic的密码后,再刷新https://localhost:9200, ES会让你重新输入用户名和密码,这次你就可以使用便于记忆的密码了。

四、用户操作

再仔细查看bin目录,发现还有一个elasticsearch-users.bat批处理文件,见名知义,这个文件肯定是和用户操作相关的,大胆的试一下吧。
在这里插入图片描述
两个批处理文件的内容完全相同,可见这个批处理文件是通过文件名传参的,同样运行一下elasticsearch-users.bat看看有什么提示吧。
在这里插入图片描述从帮助说明中不难看出,添加用户的命令是

elasticsearch-users.bat useradd <用户名>

在这里插入图片描述
非常的简单。

接下来重置一下内置用户elastic的密码,再刷新页面https://localhost:9200果然又弹出了登录界面,使用上面我们新建的用户和密码登录,下图是新用户登录后的截图。

在这里插入图片描述
虽然登录成功了,但是报错了,大概意思是没有给新用户赋角色。
在这里插入图片描述
继续探索。
在这里插入图片描述
通过上面的命令,我似乎为新用户赋了superuser的角色。

再次刷新https://localhost:9200页面,出现下图。
在这里插入图片描述
看来为新用户赋角色成功了。

💁‍♂ 总结: bin目录是ES的各种可执行文件运行目录,使用cmd命令打开相关的批处理文件。

本文使用了elasticsearch-setup-passwords.bat重置用户密码批处理,和elasticsearch-users.bat新建用户批处理。

💁‍♂ 要给新建用户赋不同的角色,否则登录后会报错。

💁‍♂ 常见的用户角色有以下几种:

Known roles: [apm_system, watcher_admin, viewer, alfiy, logstash_system, rollup_user, kibana_user, beats_admin, remote_monitoring_agent, rollup_admin, snapshot_user, data_frame
_transforms_admin, monitoring_user, enrich_user, kibana_admin, logstash_admin, editor, data_frame_transforms_user, machine_learning_user, machine_learning_admin, watcher_user,
apm_user, beats_system, reporting_user, transform_user, kibana_system, transform_admin, transport_client, remote_monitoring_collector, ingest_admin, superuser]

上面的角色各类其实是我从cmd命令中复制出来的,想了解详情到官方文档去看吧。(我还没去看,下次我看到了会在此处加文档链接)。


http://www.kler.cn/a/157274.html

相关文章:

  • 网络安全攻防演练中的常见计策
  • 美国加州房价数据分析01
  • 一网多平面
  • 开发一个DApp项目:DeFi、DApp开发与公链DApp开发
  • alertmanager告警持久化方案:alertsnitch
  • 《计算机组成及汇编语言原理》阅读笔记:p48-p81
  • Redis Hash数据类型
  • C#的参数数组
  • 使用ES6 async awai t进行异步处理
  • python - abstractmethod作用 - `staticmethod`和`abc.abstractmethod`:它会混合吗?
  • Git和Git小乌龟安装
  • make -c VS make -f
  • 电脑发生0x80070002错误,0x80070002错误代码怎么解决
  • G口大带宽是什么意思?
  • Appium:进行iOS自动化测试遇到的问题与解决方案
  • Learning Normal Dynamics in Videos with Meta Prototype Network 论文阅读
  • 网络安全小白自学
  • 【qml入门教程系列】:qml property使用介绍
  • 【static】关键字静态成员:在类级别上共享数据和方法的机制
  • BFS求树的宽度——结合数组建树思想算距离
  • GPT市场将取代插件商店 openAI已经关闭plugins申请,全部集成到GPTs(Actions)来连接现实世界,可以与物理世界互动了。
  • 不再只是android,华为自爆Harmony将对标iOS
  • C# AES-128-CBC 加密
  • 【电源专题】什么是电源管理
  • OpenCV快速入门:移动物体检测和目标跟踪
  • python 运用pandas 库处理excel 表格数据