离线安装Elasticsearch7

目录

 

参考资料

步骤

一、离线安装配置Elasticsearch

1.1、安装Elasticsearch

1.2、准备Elasticsearch需要的环境

1.3、配置Elasticasearch需要的系统环境变量

1.4、安装JAVA环境

二、配置并启动Elasticsearch

2.1、编辑elasticsearch.yml

2.2、编辑jvm.options

2.3、启动elasticsearch

2.4、验证启动情况


参考资料

https://www.cnblogs.com/zhenghengbin/p/12250234.html

https://blog.csdn.net/goodsirlee/article/details/102589354

https://www.jianshu.com/p/d56689383bda

步骤

一、离线安装配置Elasticsearch

1.1、安装Elasticsearch

下载软件,软件地址:https://www.elastic.co/cn/downloads/elasticsearch,然后把elasticsearch-7.6.2-linux-x86_64.tar.gz这个包放到服务器上

[root@node2 data]# tar -zxvf elasticsearch-7.6.2-linux-x86_64.tar.gz
[root@node2 data]# ll
total 854936
drwxr-xr-x 9 root toot       155 Mar 26 14:36 elasticsearch-7.6.2

然后就得到了elasticsearch文件夹,其实也能算安装好了。

1.2、准备Elasticsearch需要的环境

但是默认不允许由root用户直接启动elasticsearch,所以我们还需要建立一个elasticsearch的用户和用户组

[root@node2 data]# groupadd -r -g 500 elasticsearch
[root@node2 data]# useradd -r -g 500 -u 500 elasticsearch
[root@node2 data]# chown -R elasticsearch.elasticsearch elasticsearch-7.6.2/

创建存放data和log的目录

[root@node2 data]# mkdir -p /data/elk/data
[root@node2 data]# mkdir -p /data/elk/logs
[root@node2 data]# chown -R elasticsearch.elasticsearch /data/elk/

1.3、配置Elasticasearch需要的系统环境变量

修改/etc/security/limits.conf,添加以下内容

* soft nofile 65536
* hard nofile 65536
* soft nproc 2048
* hard nproc 4096
* soft memlock unlimited
* hard memlock unlimited

修改 /etc/sysctl.conf,添加一下内容

vm.max_map_count=262145

然后执行sysctl -p使其生效

[root@node2 data]# sysctl -p

1.4、安装JAVA环境

[root@node2 data]# tar -zvxf jdk-8u152-linux-x64.tar.gz
[root@node2 data]# mv jdk1.8.0_152 /usr/bin/
[root@node2 data]# vi /etc/profile
	export JAVA_HOME=/usr/bin/jdk1.8.0_152
	export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
	export PATH=$JAVA_HOME/bin:$PATH
[root@node2 data]# source /etc/profile
[root@node2 bin]# java -version
java version "1.8.0_152"
Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)

二、配置并启动Elasticsearch

2.1、编辑elasticsearch.yml

[root@node2 bin]# grep "^[a-Z]" /data/elasticsearch-7.6.2/config/elasticsearch.yml 
cluster.name: elk-Cluster #ELK 的 集群名称,名称相同即属于是同一个集群
node.name: node-1 #集群情况下,当前node的名字,每个node应该不一样
path.data: /data/elk/data #数据目录
path.logs: /data/elk/logs #日志目录
bootstrap.memory_lock: true 
network.host: 192.168.53.62
http.port: 9200 #监听的地址
discovery.seed_hosts: ["192.168.53.62", "192.168.53.63"] #集群主机列表
cluster.initial_master_nodes: ["node-1"] #启动全新的集群时需要此参数,再次重新启动时此参数可免
http.cors.enabled: true #是否开启跨域访问,需要额外添加
http.cors.allow-origin: "*"  #开启跨域访问后的地址限制,*表示无限制,需要额外添加
http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE
http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, X-User"

2.2、编辑jvm.options

[root@node2 bin]# vi /data/elasticsearch-7.6.2/config/jvm.options
-Xms4g
-Xmx4g

2.3、启动elasticsearch

elasticsearch是不能用root 用户直接启动的,所以我们用sudo的命令启动,参数-d是后台运行的参数

[root@node2 bin]# sudo -u elasticsearch /data/elasticsearch-7.6.2/bin/elasticsearch -d

2.4、验证启动情况

[root@node2 bin]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1954/master         
tcp        0      0 0.0.0.0:9100            0.0.0.0:*               LISTEN      20673/grunt         
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1648/sshd: /usr/sbi 
tcp6       0      0 :::23                   :::*                    LISTEN      1/systemd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      1954/master         
tcp6       0      0 192.168.53.62:9200      :::*                    LISTEN      18442/java          
tcp6       0      0 192.168.53.62:9300      :::*                    LISTEN      18442/java          
tcp6       0      0 :::22                   :::*                    LISTEN      1648/sshd: /usr/sbi 

验证一下启动情况,其中elasticsearch端口,9200:客户端访问端口,9300:集群情况下服务器之间的通信端口

直接在网页上验证服务启动情况

验证集群主从分配情况

http://192.168.53.62:9200/_cat/nodes?v

验证集群运行状态

http://192.168.53.62:9200/_cluster/health?pretty


版权声明:本文为weixin_42153254原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。