当前位置: 首页>数据库>正文

ES版本选择 es常用版本

1.1. 安装配置

1、新版本要求至少jdk1.8以上。

1)从Elasticsearch 5开始需要 Java 8 以上版本;
2)Elasticsearch 6.5 开始支持 Java 11;
3)Elasticsearch 7.0 开始,内置了 Java 环境,因此安装 7.0+ 版本会方便很多。

2、支持tar、zip、rpm等多种安装方式。在windows下开发建议使用ZIP解压方式安装,Linux下推荐使用tar.gz解压方式安装。

3、同时也支持docker方式安装。详情参见官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html

1.2. 下载ElasticSearch

最新版本需要访问 ElasticSearch 官网下载: https://www.elastic.co/cn/downloads/elasticsearch,
其他版本见Elastic 中文社区,地址:https://elasticsearch.cn/download我这里下载的是:ElasticSearch-7.4.2,分别有Linux和Windows版本
Windows:elasticsearch-7.4.2-windows-x86_64.zip
Linux:elasticsearch-7.4.2-linux-x86_64.tar.gz
官网下载可能有些慢,因此一般采用国内镜像或者是其他人下载好上传到网盘的版本,这里将我使用的挂出来,百度网盘链接:https://pan.baidu.com/s/1_hpK03HaFA2xxlUWDU2RUQ,提取码:gblk

2. Windows下安装

将下载elasticsearch的Windows版,指定位置解压缩。会得到如下所示文件和文件夹目录结构。

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择,第1张

bin:脚本目录,包括:启动、停止等可执行脚本

config:配置文件目录

data:索引目录,存放索引文件的地方

jdk:内置的jdk

lib:依赖的jar,类库

logs:日志目录

modules:模块目录,包括了es的功能模块

plugins:插件目录,es支持插件机制(用于扩展,常见的有集成分词器ik等)

2.1. 启动ES

在bin目录下找到elasticsearch.bat,双击运行。

ES版本选择 es常用版本,ES版本选择 es常用版本_elasticsearch_02,第2张

启动成功,界面输出默认访问的端口号,分别是http访问的9200端口和java程序通信的tcp访问端口:9300如示。

ES版本选择 es常用版本,ES版本选择 es常用版本_elasticsearch_03,第3张

浏览器验证,地址栏输入:http://127.0.0.1:9200,显示如下内容表示ES安装完成。

ES版本选择 es常用版本,ES版本选择 es常用版本_elasticsearch_04,第4张

3. Linux下安装

3.1. ES安装文件上传

1、首先选择下服务器的上传目录,例如在/usr/apps/ elasticsearch(此目录为我这里放置es的目录),使用ftp工具上传文件包(例如我这里使用的是Xftp,他和Xshell一般用于连接服务器)。

ES版本选择 es常用版本,ES版本选择 es常用版本_Elastic_05,第5张

2、解压压缩包,命令行:tar -zxvf elasticsearch-7.4.2-linux-x86_64.tar.gz目录树如下所示。

ES版本选择 es常用版本,ES版本选择 es常用版本_Java_06,第6张

3.2. 运行 Elasticsearch

前台启动命令: bin/elasticsearch启动可能的错误:future versions of Elasticsearch will require Java 11; your Java version from [/usr/apps/java/jdk1.8.0_221/jre] does not meet this requirement

[2020-09-12T22:52:06,657][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [192.168.235.129] uncaught exception in thread [main]

org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root

信息如示。

ES版本选择 es常用版本,ES版本选择 es常用版本_Elastic_07,第7张

原因:1、说明这个版本对应的jdk应该是java11。但是我们服务器安装环境中jdk是java8。而新版的es是自带jdk的,于是和机器环境变量的冲突了(但是这个不是主因,因为他使用的是自带的jdk)。
2、错误的真正原因是:es在Linux下启动时不能使用root用户,因此需要额外添加用户解决这个问题

3.3. 添加用户

由于Elasticsearch5.0之后,不能使用root账户启动,因此需要创建一个es用户。

添加命令:useradd esuser赋权命令:chown -R esuser:esuser /usr/apps/elasticsearch/elasticsearch-7.4.2

再次启动(前台启动命令):bin/elasticsearch,结果信息显示有“Security is disabled”表示启动完成,如下图所示。

ES版本选择 es常用版本,ES版本选择 es常用版本_elasticsearch_08,第8张

推荐使用后台启动的方式。命令:bin/elasticsearch -d

验证启动,命令:curl 'http://127.0.0.1:9200',显示信息如示。表示可以正常使用

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择_09,第9张

3.4. 修改核心配置文件elasticearch.yml

elasticearch.yml文件中主要定义以下内容:
1、集群名称;
2、当前的es节点名称;
3、data数据保存地址和日志数据保存地址;
4、绑定es网络ip;
5、集群节点修改为之前的节点名称

第一步、添加集群名称和节点名称(ES支持进行集群搭建,它自身对集群自定义实现,可以快速搭建),若是仅使用单机版(此步骤可不用设置)

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择_10,第10张

第二步、添加es的 data数据保存地址和日志数据保存地址

ES版本选择 es常用版本,ES版本选择 es常用版本_Java_11,第11张

第三步、添加es的映射外部访问的ip和端口号

ES版本选择 es常用版本,ES版本选择 es常用版本_Elastic_12,第12张

第四步、设置节点名称和主节点数据(单机版主节点设置为1,节点名称采用易于记忆的名称,如:记录在Node位置配置名称)

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择_13,第13张

第五步、设置是否可以通过正则或者_all删除或者关闭索引库,默认true表示必须需要显式指定索引库名称

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择_14,第14张

elasticsearch.yml的其它可配置信息:

属性名

说明

cluster.name

配置elasticsearch的集群名称,默认是elasticsearch。建议修改成一个有意义的名称。

node.name

节点名,es会默认随机指定一个名字,建议指定一个有意义的名称,方便管理

path.conf

设置配置文件的存储路径,tar或zip包安装默认在es根目录下的config文件夹,rpm安装默认在/etc/ elasticsearch

path.data

设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开

path.logs

设置日志文件的存储路径,默认是es根目录下的logs文件夹

path.plugins

设置插件的存放路径,默认是es根目录下的plugins文件夹

bootstrap.memory_lock

设置为true可以锁住ES使用的内存,避免内存进行swap

network.host

设置bind_host和publish_host,设置为0.0.0.0允许外网访问

http.port

设置对外服务的http端口,默认为9200。

transport.tcp.port

集群结点之间通信端口

discovery.zen.ping.timeout

设置ES自动发现节点连接超时的时间,默认为3秒,如果网络延迟高可设置大些

discovery.zen.minimum_master_nodes

主结点数量的最少值 ,此值的公式为:(master_eligible_nodes / 2) + 1 ,比如:有3个符合要求的主结点,那么这里要设置为2

3.5. 配置内存设置文件jvm.options

内存容量较小时修改默认配置:-Xms1g -Xmx1g为-Xms512m -Xmx512m。

ES版本选择 es常用版本,ES版本选择 es常用版本_Java_15,第15张

备注:配置好内存大小以及es所需各项参数后。启动报错:

ERROR: [3] bootstrap checks failed
  • 1

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择_16,第16张

解决方法:需要切换到root用户修改配置。

1、修改/etc/security/limits.conf 文件

添加内容如下所示。

* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
  • 1
  • 2
  • 3
  • 4

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择_17,第17张

ES版本选择 es常用版本,ES版本选择 es常用版本_Java_18,第18张

2、修改 /etc/sysctl.conf 文件。增加 vm.max_map_count=262145

ES版本选择 es常用版本,ES版本选择 es常用版本_elasticsearch_19,第19张

修改完成使用命令:sysctl -p 刷新使用

ES版本选择 es常用版本,ES版本选择 es常用版本_elasticsearch_20,第20张

注意点:

1、机器内存可能不够,就需要修改 JVM 参数,配置文件路径为 config/jvm.options,ES V7.1 版本默认为 1g, 老版本为2g,可自行修改。

2、Xmx 和Xms 数值请设置相同;

3、Xmx 不要超过机器内存的 50%;

4、内存总量不要超过 30GB, 参见官方文档 https://www.elastic.co/cn/blog/a-heap-of-trouble;

3.6. 开启防火墙的访问端口

1、添加端口:

firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --zone=public --add-port=9300/tcp --permanent
  • 1
  • 2

2、重启防火墙:firewall-cmd --reload3、查看开放端口:firewall-cmd --list-port

ES版本选择 es常用版本,ES版本选择 es常用版本_Java_21,第21张

4、外部访问地址(ip+端口),例如:192.168.235.129:9200

1)查看前台方式(bin/elasticsearch)启动结果

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择_22,第22张

外部访问看到信息:

ES版本选择 es常用版本,ES版本选择 es常用版本_ES版本选择_23,第23张

2)后台启动结果(bin/elasticsearch -d或者到bin目录下执行./elasticsearch -d

ES版本选择 es常用版本,ES版本选择 es常用版本_Java_24,第24张

查看日志信息,命令:cat logs/my-elasticsearch.log(其中:my-elasticsearch表示配置的集群名称)

最后的结果如下:

ES版本选择 es常用版本,ES版本选择 es常用版本_Java_25,第25张

浏览器访问如示。

ES版本选择 es常用版本,ES版本选择 es常用版本_Elastic_26,第26张

以上单机版安装就此结束,已经可以正常使用es了。


https://www.xamrdz.com/database/6na1926428.html

相关文章: