ElasticSearch 说明

本章,我们主要以在 Windows 中对ElasticSearch 安装进行介绍!

1、 下载 ElasticSearch

这里我们下载的版本为7.17.4为例进行介绍。

下载 ElasticSearch 的地址为:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.4-windows-x86_64.zip

下载 Kibana 的地址为:https://artifacts.elastic.co/downloads/kibana/kibana-7.17.4-windows-x86_64.zip

更多历史版本请到https://www.elastic.co/cn/downloads/past-releases进行浏览下载:


2、 安装 ElasticSearch

新建目录D:\Net_Program\Net_ElasticSearch,将下载下来的 elasticsearch-7.17.4-windows-x86_64.zip 解压到该目录下。


3、 修改环境变量

因为新版的 ElasticSearch 已经弃用了 JAVA_HOME 环境变量,转而使用了 ES_JAVA_HOME 环境变量,并且在新版的安装包中已经提供了 Java 运行环境,因此我们需要增加 ES_JAVA_HOME 这个环境变量,不然在后续配置中可能会出现“warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME”的警告信息。

我们在系统变量中新建变量名为ES_JAVA_HOME,值为D:\Net_Program\Net_ElasticSearch\jdk的环境变量,如下图所示:


4、 修改 elasticsearch-env 文件

修改 D:\Net_Program\Net_ElasticSearch\bin 下的elasticsearch-env文件(注意是没有后缀的这个文件),注释掉关于 JAVA_HOME 相关的部分,目的就是让 ElasticSearch 使用自带的 ES_JAVA_HOME,如下图所示:


5、 修改 elasticsearch.yml 文件

编辑D:\Net_Program\Net_ElasticSearch\config\elasticsearch.yml文件,在文件末尾增加如下配置:

#设置快照存储地址
path.repo: ["D:\\Net_Program\\Net_ElasticSearch\\backup"] #数据存放路径(可不设置,默认就是如下地址)
path.data: D:/Net_Program/Net_ElasticSearch/datas
#日志存放路径
path.logs: D:/Net_Program/Net_ElasticSearch/logs #节点名称
node.name: node-1
#节点列表
discovery.seed_hosts: ["192.168.3.200"]
#初始化时master节点的选举列表
cluster.initial_master_nodes: ["node-1"] #集群名称
cluster.name: es-main
#对外提供服务的端口
http.port: 9200
#内部服务端口
transport.port: 9300 #启动地址,如果不配置,只能本地访问
network.host: 192.168.3.200
#跨域支持
http.cors.enabled: true
#跨域访问允许的域名地址
http.cors.allow-origin: "*"

6、 修改 JVM 内存

如果你的服务器内存有限,则需要根据实际情况设置 ElasticSearch 的内存限制。

编辑 config 文件夹中的jvm.options文件,增加如下配置即可,此处我设置的是 4G 范围内。

特别说明:此步骤需要注意,建议最好根据服务器的内存情况进行设置,以免后期再来调整。同时此步骤需要在将 ElasticSearch 安装为服务前进行设置,否则安装服务后,即便是重启服务也不会生效。

#设置最小内存
-Xms4g
#设置最大内存
-Xmx4g

:::warning 注意

我们在设置-Xms-Xmx属性的时候,一定要设置为相同的值,否则在启动服务的时候出现如下的错误,倒是启动 ElasticSearch 服务失败。

比如我们都可以设置为 4g,-Xms4g-Xmx4g

[2022-10-19T09:47:57,423][INFO ][o.e.n.Node               ] [node-1] initialized
[2022-10-19T09:47:57,423][INFO ][o.e.n.Node ] [node-1] starting ...
[2022-10-19T09:47:57,438][INFO ][o.e.x.s.c.f.PersistentCache] [node-1] persistent cache index loaded
[2022-10-19T09:47:57,438][INFO ][o.e.x.d.l.DeprecationIndexingComponent] [node-1] deprecation component started
[2022-10-19T09:47:57,660][INFO ][o.e.t.TransportService ] [node-1] publish_address {110.185.107.18:9300}, bound_addresses {110.185.107.18:9300}
[2022-10-19T09:47:57,973][INFO ][o.e.b.BootstrapChecks ] [node-1] bound or publishing to a non-loopback address, enforcing bootstrap checks
[2022-10-19T09:47:57,989][ERROR][o.e.b.Bootstrap ] [node-1] node validation exception
[1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch.
bootstrap check failure [1] of [1]: initial heap size [4294967296] not equal to maximum heap size [16106127360]; this can cause resize pauses
[2022-10-19T09:47:57,989][INFO ][o.e.n.Node ] [node-1] stopping ...
[2022-10-19T09:47:58,035][INFO ][o.e.n.Node ] [node-1] stopped
[2022-10-19T09:47:58,035][INFO ][o.e.n.Node ] [node-1] closing ...
[2022-10-19T09:47:58,051][INFO ][o.e.n.Node ] [node-1] closed
[2022-10-19T09:47:58,051][INFO ][o.e.x.m.p.NativeController] [node-1] Native controller process has stopped - no new native processes can be started

:::


7、 安装 ElasticSearch 服务

以管理员身份运行 CMD 并定位到 ElasticSearch 的 bin 目录,执行如下命令,执行完后 Windows 服务中就多了一个显示名称为 Elasticsearch 7.17.4 (elasticsearch-service-x64)的服务,如下图所示:

elasticsearch-service.bat install


8、 配置 SSL 证书

  • 启动刚才安装的Elasticsearch 7.17.4 (elasticsearch-service-x64)服务。

  • D:\Net_Program\Net_ElasticSearch目录下新建certs文件夹,用于存放生成的 CA 证书。

  • CMD 定位到 bin 目录,输入如下命令:

    elasticsearch-certutil ca

    接着输入 ca 证书输出地址和密码(如果设置了密码,请记住,下面会用到):

    ca 证书地址:

    D:\Net_Program\Net_ElasticSearch\certs\elastic-stack-ca.p12

    ca 证书密码:

    123456

  • 输入如下命令:

    elasticsearch-certutil cert --ca D:\Net_Program\Net_ElasticSearch\certs\elastic-stack-ca.p12

    接着分别输入上一步生成 CA 证书的密码、此集群证书的输出地址和密码(如果设置了密码,请记住,下面会用到)

    ca 证书密码:

    123456

    此集群证书的输出地址:

    D:\Net_Program\Net_ElasticSearch\certs\elastic-certificates.p12

    此集群证书的密码:

    123456

  • 分别输入如下命令:

    elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password

    接着输入密码 123456(该密码为上面生成证书设置的密码)

    elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password

    接着输入密码 123456(该密码为上面生成证书设置的密码)

  • 此时,SSL 证书生成完成,我们将 certs 文件夹拷贝到 config 下:

  • 在 elasticsearch.yml 文件中增加如下配置:

    #开启xpack
    xpack.security.enabled: true
    xpack.license.self_generated.type: basic
    xpack.security.transport.ssl.enabled: true
    #证书配置
    xpack.security.transport.ssl.verification_mode: certificate
    xpack.security.transport.ssl.client_authentication: required
    xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12
    xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12

9、 设置账户密码

重启服务,以管理员身份运行 CMD 并定位到 ElasticSearch 的 bin 目录,执行如下命令,然后紧接着输入 y 确定,然后输入每个账户的密码和确认密码即可,如下图所示:

elasticsearch-setup-passwords interactive



此时我们在浏览器中访问http://192.168.3.200:9200/发现要求输入账户和密码,这是我们输入 elastic(账户)和 123456(密码,刚才设置的密码)即可访问成功。

到此,ElasticSearch 的安装就完成了!

10、 Kibana 安装

10.1、 安装 Kibana

将下载下来的kibana-7.17.4-windows-x86_64.zip解压到D:\Net_Program\Net_ElasticSearchKibana文件夹下

10.2、 修改文件

编辑 D:\Net_Program\Net_ElasticSearchKibana\config\kibana.yml 文件,在文件末尾增加如下配置:

#设置中文显示
i18n.locale: "zh-CN" #设置访问用户
elasticsearch.username: "elastic"
#设置访问密码
elasticsearch.password: "123456" #ElasticSearch连接地址
elasticsearch.hosts: ["http://192.168.3.200:9200"] #IP访问地址和端口号
server.host: "192.168.3.200"
server.port: 5601
#设置中文显示
i18n.locale: "zh-CN" #设置访问用户
elasticsearch.username: "elastic"
#设置访问密码
elasticsearch.password: "123456" #ElasticSearch连接地址
elasticsearch.hosts: ["http://192.168.3.200:9200", "http://192.168.3.200:9201", "http://192.168.3.200:9202"] #IP访问地址和端口号
server.host: "192.168.3.200"
server.port: 5601

注意:为了避免访问 Kibana 出现server.publicBaseUrl 缺失,在生产环境中运行时应配置。某些功能可能运行不正常。的提示,请在上述配置文件中增加如下的配置(具体可参考官网说明:https://www.elastic.co/guide/en/kibana/7.17/settings.html#server-publicBaseUrl):

server.publicBaseUrl: "http://192.168.3.200:5601/"

10.3、 安装 Kibana 服务

这里我们使用的是 NSSM 工具将 Kibana 安装为 Windows 服务。

  • 在 nssm.exe 所在文件夹鼠标右键,选择“在此处打开 Powershell 窗口(s)”选项,如下图所示:

  • 然后输入如下命令调出设置窗体

    .\nssm install

    在弹出的窗体中,Application 选项卡中设置各个参数值:

    • Path:选择 kibana.bat 所在的路径,如D:\Net_Program\Net_ElasticSearchKibana\bin\kibana.bat

    • Startup directory:选择 Path 后,Startup directory 选择会自动填充

    • Argument:为启动服务的参数,此处为空即可

    • Service name:服务名称,如ElasticSearch-KibanaService

    设置完成后点击Install service按钮即完成,此时去查看系统服务有多了一个叫ElasticSearch-KibanaService的服务了

10.4、 浏览验证

启动刚才安装的ElasticSearch-KibanaService服务,​ 浏览器中输入http://192.168.3.200:5601/进行访问,登录账号 elastic 和密码 123456,如下图所示:



ElasticSearch之Windows中环境安装的更多相关文章

  1. Windows(Server)环境安装Web服务器(Apache,PHP,Mysql)图文教程

    Windows下Apache+PHP+MySQL搭建web服务器的方法,windows Server Install Apache PHP MySQL(图文详解) 环境准备: Windows Serv ...

  2. Appium+Robotframework实现Android应用的自动化测试-1:Appium在Windows中的安装

    让我们开始在Windows中开始安装Appium吧,Appium在OS X中的具体安装后面的文章会介绍. 另外,官网上说先要装Node.js,还要装Apache Ant和Apache Maven,Gi ...

  3. Windows 10环境安装VIM代码补全插件YouCompleteMe

    Windows 10环境安装VIM代码补全插件YouCompleteMe 折腾一周也没搞定Windows下安装VIM代码补全插件YouCompleteMe,今天在家折腾一天总算搞定了.关键问题是在于P ...

  4. redis 在 windows 中的安装

    redis 在 windows 中的安装 redis 官方并没有提供 redis 的 windows 版本.但是微软提供了 redis 的 windows 版本.有2.8和3.0版本.3.0版本支持集 ...

  5. 一步一步教你elasticsearch在windows下的安装

    首先下载最新的elasticsearch安装版本:elasticsearch下载.下载最新的elasticsearch 0.90.1版本.下载完成后.解压缩在安装目录.在cmd命令行进入安装目录,再进 ...

  6. [ES]Elasticsearch在windows下的安装

    1.环境 win7 64位 2.下载包环境 https://www.elastic.co/cn/downloads/elasticsearch 选择对应安装包 3.安装过程 解压安装包,例如我的,解压 ...

  7. windows中配置安装mysql数据库

    MySql 是一种免费的关系型数据库,相较于 MsSqlServer 和 Oracle 比较轻量化,安装也很简单,而且免费不需要的版权费用,个人认为一般的小项目采用还是比较合适的,当然也有部分数据量很 ...

  8. Windows中 RabbitMQ安装与环境变量配置

    RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议.1:安装RabbitMQ需要先安装Erlang语言开发包.下载地址 ht ...

  9. Elasticsearch在centos6中的安装

    一安装, 在你可以从 elasticsearch.org\/download 下载最新版本的Elasticsearch.tar文件. 一.用户设置 如果已经是普通用户登录可跳过此步骤. Elastic ...

随机推荐

  1. 如何实现 System.out.println("a") 显示 b

    今天看到一篇文章不用反射,能否交换两个字符串的值. 心想字符串常量在常量池里面,是在就算用了反射也交换不了吧.转念一想,不对,字符串常量虽然本身在常量池里面,但是它依然是个对象,那么 private ...

  2. LuoguP1799 数列_NOI导刊2010提高 (动态规划)

    $ f[j]=max(f[i−1][j],f[i−1][j−1]+(x == j) $ #include <iostream> #include <cstdio> #inclu ...

  3. TCP实现多个客户端发送数据给服务器端

    SocketThread给服务端用的线程类: public class SocketThread extends Thread{ private Socket socket; public Socke ...

  4. 记一次有意思的 SQL 实现 → 分组后取每组的第一条记录

    开心一刻 今天,朋友气冲冲的走到我面前 朋友:我不是谈了个女朋友,谈了三个月嘛,昨天我偷看她手机,你猜她给我备注什么 我:备注什么? 朋友:舔狗 2 号! 我一听,气就上来了,说道:走,找她去,这婆娘 ...

  5. 详解MySQL隔离级别

    一个事务具有ACID特性,也就是(Atomicity.Consistency.Isolation.Durability,即原子性.一致性.隔离性.持久性),本文主要讲解一下其中的Isolation,也 ...

  6. smile——Java机器学习引擎

    资源 https://haifengl.github.io/ https://github.com/haifengl/smile 介绍 Smile(统计机器智能和学习引擎)是一个基于Java和Scal ...

  7. MAC上PKG打包

    pkg是Mac平台上非常常见的一种安装包格式,如果你想要快速将软件制作为pkg文件,就千万不要错过Packages Mac版,Packages Mac版是Mac平台上能够快速为您生成pkg程序包的一款 ...

  8. 第三十九篇:Vue3 watch(ref和reactive的监视)

    好家伙, 1.vue2中的watch是调用配置项,(只能写一个) vue3中的watch是一个函数(可以写很多个) 2.watch一些用法: 这里是定义的数据 set up(){ let sum =r ...

  9. FR801xH开发

    一.空间分配 二.代码流程 1)user_custom_parameters 函数 __jump_table 结构体中保存了一些配置信息: void user_custom_parameters(vo ...

  10. Hive的基本知识与操作

    Hive的基本知识与操作 目录 Hive的基本知识与操作 Hive的基本概念 为什么使用Hive? Hive的特点: Hive的优缺点: Hive应用场景 Hive架构 Client Metastor ...