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.rhkb.cn/news/209945.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dcat admin日志扩展 dcat-log-viewer 遇到的问题记录

扩展地址&#xff1a; https://github.com/duolabmeng6/dcat-log-viewer 问题描述&#xff1a; 使用很简单&#xff0c;直接安装扩展包&#xff0c;开启扩展就可以了&#xff0c;会自动生成菜单。 之前在别的系统用过&#xff0c;没问题&#xff0c;今天在一个新的系统用的时…

【网络奇缘】- 计算机网络|分层结构|深入探索TCP/IP模型|5层参考模型

​ &#x1f308;个人主页: Aileen_0v0&#x1f525;系列专栏: 一见倾心,再见倾城 --- 计算机网络~&#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 OSI参考模型与TCP/IP参考模型相同点 OSI参考模型与TCP/IP参考模型不同点 面向连接三阶段&#xff08…

单片机系统

我们来看单片机 的例子&#xff0c;读者可能会担心单片机&#xff08;又称MCU&#xff0c;或微控制器&#xff09; 过于专业而无法理解。完全没必要&#xff01;在这里我们仅借它谈论一下有关时间的话题&#xff0c;顺带提一下单片机系统的概念。 单片机顾名思义是集成到一个芯…

基于SSM框架的网上书店系统

基于SSM框架的网上书店系统 文章目录 基于SSM框架的网上书店系统 一.引言二.系统设计三.技术架构四.功能实现五.界面展示六.源码获取 一.引言 随着互联网的普及和电子商务的快速发展&#xff0c;网上书店系统成为了现代人购买图书的主要方式之一。网上书店系统不仅提供了便捷的…

Redis队列stream,Redis多线程详解

Redis 目前最新版本为 Redis-6.2.6 &#xff0c;会以 CentOS7 下 Redis-6.2.4 版本进行讲解。 下载地址&#xff1a; https://redis.io/download 安装运行 Redis 很简单&#xff0c;在 Linux 下执行上面的 4 条命令即可 &#xff0c;同时前面的 课程已经有完整的视…

【UGUI】实现背包的常用操作

1. 添加物品 首先&#xff0c;你需要一个包含物品信息的类&#xff0c;比如 InventoryItem&#xff1a; using UnityEngine;[CreateAssetMenu(fileName "NewInventoryItem", menuName "Inventory/Item")] public class InventoryItem : ScriptableObje…

Postman:专业API测试工具,提升Mac用户体验

如果你是一名开发人员或测试工程师&#xff0c;那么你一定知道Postman。这是一个广泛使用的API测试工具&#xff0c;适用于Windows、Mac和Linux系统。今天&#xff0c;我们要重点介绍Postman的Mac版本&#xff0c;以及为什么它是你进行API测试的理想选择。 一、强大的功能和易…

第3章 表、栈和队列

3.4 队列ADT 像栈一样&#xff0c;队列(queue)也是表。然而&#xff0c;使用队列时插入在一端进行而删除则在另一端 进行。 3.4.1 队列模型 队列的基本操作是Enqueue(入队)一它是在表的末端(叫作队尾(rear))插入一个元素&#xff0c;还有Dequeue(出队)——它是删除(或返回)在…

前端组件库开发

通常我们会使用很多组件库&#xff0c;有时候我们会去看源码比如element&#xff0c;antd&#xff0c;然后发现多少是按需导出&#xff0c;和vue.use全局注册&#xff0c;依赖于框架的拓展。 组件库的开发依赖框架的版本和node的版本&#xff0c;这个是需要说明的&#xff0c;然…

探索人工智能领域——每日20个名词详解【day6】

目录 前言 正文 总结 &#x1f308;嗨&#xff01;我是Filotimo__&#x1f308;。很高兴与大家相识&#xff0c;希望我的博客能对你有所帮助。 &#x1f4a1;本文由Filotimo__✍️原创&#xff0c;首发于CSDN&#x1f4da;。 &#x1f4e3;如需转载&#xff0c;请事先与我联系以…

CloudCompare简单开发

一、概述 CloudCompare如何进行二次开发&#xff1f;_cloudcompare 二次开发-CSDN博客 开发一个功能&#xff0c;在原始CC的基础上添加一个拓展功能&#xff0c;如下&#xff1a; 二、功能开发 1、修改MainWindow.UI 重点是&#xff1a;要编译&#xff0c;不然在mainwindow.…

【从零开始学习Redis | 第六篇】爆改Setnx实现分布式锁

前言&#xff1a; 在Java后端业务中&#xff0c; 如果我们开启了均衡负载模式&#xff0c;也就是多台服务器处理前端的请求&#xff0c;就会产生一个问题&#xff1a;多台服务器就会有多个JVM&#xff0c;多个JVM就会导致服务器集群下的并发问题。我们在这里提出的解决思路是把…

Docker-简介、基本操作

目录 Docker理解 1、Docker本质 2、Docker与虚拟机的区别 3、Docker和JVM虚拟化的区别 4、容器、镜像的理解 5、Docker架构 Docker客户端 Docker服务器 Docker镜像 Docker容器 镜像仓库 Docker基本操作 1、Docker镜像仓库 镜像仓库分类 镜像仓库命令 docker lo…

Selenium 连接到现有的 Google Chrome 示例

python 3.7 selenium 3.14.1 urllib3 1.26.8 Google Chrome 119.0.6045.160 (64位) chromedriver.exe 119.0.6045.105(win32) 1 Google Chrome 添加参数 "--remote-debugging-port9222" 2 测试效果(chromedriver.exe 要和 Google Chrome 版本…

01、Tensorflow实现二元手写数字识别

01、Tensorflow实现二元手写数字识别&#xff08;二分类问题&#xff09; 01、Tensorflow实现二元手写数字识别&#xff08;二分类问题&#xff09; 02、Tensorflow实现手写数字识别&#xff08;数字0-9&#xff09; 开始学习机器学习啦&#xff0c;已经把吴恩达的课全部刷完了…

使用Redis构建简易社交网站(1)-创建用户与动态界面

目的 本文目的&#xff1a;实现简易社交网站中创建新用户和创建新动态功能。&#xff08;完整代码附在文章末尾&#xff09; 相关知识 本文将教会你掌握&#xff1a;1.redis基本命令&#xff0c;2.python基本命令。 redis基本命令 hget&#xff1a;从哈希中获取指定域的值…

java后端技术演变杂谈(未完结)

1.0版本javaWeb&#xff1a;原始servletjspjsbc 早期的jsp&#xff1a;htmljava&#xff0c;页面先在后端被解析&#xff0c;里面的java代码动态渲染完成后&#xff0c;成为纯html&#xff0c;再通过服务器发送给浏览器显示。 缺点&#xff1a; 服务器压力很大&#xff0c;因为…

python提取通话记录中的时间信息

您需要安装适合中文的SpaCy模型。您可以通过运行 pip install spacypython -m spacy download zh_core_web_sm来安装和下载所需的模型。 import spacy# 加载中文模型 nlp spacy.load(zh_core_web_sm)# 示例电话记录文本 text """ Agent: 今天我们解决一下这…

QT之QString

QT之QString 添加容器 点击栅格布局 添加容器&#xff0c;进行栅格布局 布局总结&#xff1a;每一个模块放在一个Group中&#xff0c;排放完之后&#xff0c;进行栅格布局。多个Group进行并排时&#xff0c;先将各个模块进行栅格布局&#xff0c;然后都选中进行垂直布…

华清远见嵌入式学习——C++——作业3

作业要求&#xff1a; 代码&#xff1a; #include <iostream>using namespace std;class Per { private:string name;int age;double *high;double *weight; public://有参构造函数Per(string n,int a,double h,double w):name(n),age(a),high(new double(h)),weight(ne…