区块链技术博客
www.b2bchain.cn

Centos安装elasticsearch7.9.3最新版

这篇文章主要介绍了Centos安装elasticsearch7.9.3最新版的讲解,通过具体代码实例进行16463 讲解,并且分析了Centos安装elasticsearch7.9.3最新版的详细步骤与相关技巧,需要的朋友可以参考下https://www.b2bchain.cn/?p=16463

本文实例讲述了2、树莓派设置连接WiFi,开启VNC等等的讲解。分享给大家供大家参考文章查询地址https://www.b2bchain.cn/7039.html。具体如下:

Centos安装elasticsearch7.9.3最新版

    • 1.安装jdk
      • 1.1卸载系统原有jdk
      • 1.2安装JDK11
    • 2.下载elasticsearch
      • 2.1设置启动用户
      • 2.2下载
      • 2.3解压文件
      • 2.4 测试是否可以启动elasticsearch
      • 2.5 ES配置(重点)
      • 2.6 后台启动
      • 2.7 systemd 管理elasticsearch
      • 2.8 ES端口说明

1.安装jdk

这里因为是elasticsearch7.x所以必须是java11以上的版本。centos系统自带的是jdk1.8版本。

可以先卸载系统的1.8版本。

1.1卸载系统原有jdk

#查看安装的jdk rpm -qa | grep java 

我这里是先下载的jdk11,再卸载掉的,这是因为我发现如果不删除,即使更改了系统变量,版本还是没有改变。
Centos安装elasticsearch7.9.3最新版

#删除java-1.8,noarch文件可以不用删除 rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-0.el7_8.x86_64 rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-0.el7_8.x86_64 

检查有没有删除,如果还没有删除,则用yum -y remove去删除他们

rpm -qa | grep java 

1.2安装JDK11

其他版本的JDK要先卸载掉,不要犯我的错误

#查看安装的工具 yum search java | grep -i --color JDK #安装java-1.8.0-openjdk-devel.x86_64 yum install java-1.8.0-openjdk-devel.x86_64 #安装java-11- yum install java-11-openjdk.x86_64  vi  /etc/profile 在最后面追加 export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.8.10-0.el8_2.x86_64 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin  注意去 /usr/lib/jvm/ 查看具体的版本 source  /etc/profile  java -version 

Centos安装elasticsearch7.9.3最新版

2.下载elasticsearch

2.1设置启动用户

如果当前是root用户登录的状态则需要,创建一个新的用户。因为不能使用root用户启动。如果不是则可以跳过这一步。我们可以将ES的文件下载在该用户目录中。

#创建elsearch用户组及elsearch用户 groupadd elsearch useradd elsearch -g elsearch -p 123456 

2.2下载

文件会下载到,你执行命令的目录里,或者直接自己使用 -O指定目录。

#进入elsearch用户目录 cd /home/elsearch  #下载 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.3-linux-x86_64.tar.gz  #官方文档使用 curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.3-linux-x86_64.tar.gz 

如果你想yum安装
vi /etc/yum.repos.d/elasticsearch.repo

[elasticsearch] name=Elasticsearch repository for 7.x packages baseurl=https://artifacts.elastic.co/packages/7.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=0 autorefresh=1 type=rpm-md 

yum install –enablerepo=elasticsearch elasticsearch

2.3解压文件

可以在当前目录解压,也可以指定到

#在当前目录解压 tar -zxvf elasticsearch-7.9.3-linux-x86_64.tar.gz  #或者指定解压到某个目录 tar -xvf elasticsearch-7.9.3.tar.gz -C /opt/es #是否修改文件名称自己根据需求 mv elasticsearch-7.9.3 elasticsearch 

2.4 测试是否可以启动elasticsearch

cd elasticsearch-7.9.3/bin #启动 ./elasticsearch 

测试的过程中可能会出现一些问题。

  • 问题一:
    如果使用root账户启动会报错:
    Centos安装elasticsearch7.9.3最新版
    这是因为我们当前的用户权限不够,但是es又不允许使用root启动,所以我们需要创建一个用户组。创建elsearch用户,或者使用其他非root用户,注意文件权限
#创建elsearch用户组及elsearch用户 groupadd elsearch useradd elsearch -g elsearch -p 123456 #更改elasticsearch文件夹及内部文件的所属用户及组为elsearch:elsearch chown -R elsearch:elsearch /home/tool/elasticsearch/ elasticsearch-7.9.3 
  • 问题二:
    这是因为 elasticsearch.keystore的用户权限是root,需要更改文件权限为启动用户。(这里我不太明白为甚么单独这个文件是root的权限,在此之前,我已经给整个文件夹都赋予了启动用户)

一般java.nio.file.AccessDeniedException这个错误的时候,指向某个文件,就要查看文件权限是否是登录用户。
Centos安装elasticsearch7.9.3最新版

chown -R elsearch:elsearch  elasticsearch.keystore 

如果已经启动起来我们另外开启一个窗口测试是否启动成功。

curl 'http://localhost:9200/?pretty' 

Centos安装elasticsearch7.9.3最新版

2.5 ES配置(重点)

主要配置:
修改elasticsearch.yml

vi config/elasticsearch.yml 
cluster.name: "docker-cluster" network.host: 0.0.0.0 http.port: 9200      #可更改端口不为9200,默认为9200  # custom config node.name: "node-1" discovery.seed_hosts: ["127.0.0.1", "[::1]"] cluster.initial_master_nodes: ["node-1"] # 开启跨域访问支持,默认为false http.cors.enabled: true # 跨域访问允许的域名地址,(允许所有域名)以上使用正则 http.cors.allow-origin: /.*/  

参数解释:

  • 开放远程访问
 #修改 network.host 为 0.0.0.0,0.0.0.0对外开放,如对特定ip开放则改为指定ip network.host: 0.0.0.0 
  • 配置集群节点
    配置cluster.initial_master_nodes为当前node,默认为注释,放开注释就行了
    cluster.initial_master_nodes: [“node-1”, “node-2”]

  • 其他可以错误

max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]

解决:修改切换到root用户修改配置limits.conf 添加下面两行 命令:vi /etc/security/limits.conf * hard nofile 65536 * soft nofile 65536 

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

切换到root用户修改配置sysctl.conf  vi /etc/sysctl.conf  添加下面配置: vm.max_map_count=655360 并执行命令: sysctl -p 

max number of threads [1024] for user [lish] likely too low, increase to at least [2048]

解决:切换到root用户,进入limits.d目录下修改配置文件。 vi /etc/security/limits.d/90-nproc.conf 修改如下内容: * soft nproc 1024 #修改为 * soft nproc 2048 

Option UseConcMarkSweepGC was deprecated in version 9.0

将jvm.options文件里的内容修改为: vi config/jvm.options -XX:+UseConcMarkSweepGC 改为 -XX:+UseG1GC 

内存太小

cd 到es目录修改 ./config/jvm.options:  vim ./config/jvm.options  1 修改该内容:  -Xms1G -Xmx1G 

2.6 后台启动

./elasticsearch & 

使用守护进程运行:./elasticsearch -d

2.7 systemd 管理elasticsearch

Centos7使用systemd 管理elasticsearch,创建elasticsearch服务

2.8 ES端口说明

9200 对外服务的http 端口

9300 节点间通信的tcp端口

本文转自互联网,侵权联系删除Centos安装elasticsearch7.9.3最新版

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » Centos安装elasticsearch7.9.3最新版
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们