1.下载
官网
Download Elasticsearch | Elastic
百度网盘
链接:https://pan.baidu.com/s/16jr6SPQg4sjKGh6w6XrUpQ
提取码:vaz1
2.解压jar包
tar -zxvf elasticsearch-7.15.2-linux-x86_64.tar.gz -C /usr/java/es/
3.启动报错
bin/elasticsearch
原因:本地安装的是jdk1.8,而es7.0后需要的是jdk11
解决:es其实自带了jdk,因此更改es配置文件,jdk指向自带的
3.配置jdk
进入bin目录,打开配置文件
vim elasticsearch-env
#更改java环境为es自带的java
ES_JAVA_HOME="/usr/java/es/elasticsearch-7.15.2/jdk"
4.启动又报错
原因:不能直接使用root用户
5.添加用户组es和用户es
groupadd es useradd es -g es
6.更改es文件夹用户组和用户权限
chown -Rf es:es /usr/java/es/elasticsearch-7.15.2/
切换用户
su es
后台启动
./elasticsearch -d
7.校验启动
curl http://localhost:9300
8.更改配置,允许远程访问
进入config目录,修改文件
vim elasticsearch.yml
实际生产环境添加允许访问的IP,学习时使用0.0.0.0放行所有IP
9.切换root用户,关闭防火墙,实际生产环境需要配置防火墙规则
su root
因为我root用户设置了密码,所以需要输入密码:*******
(root用户密码用自己当初设置的)
systemctl shutdown iptables.service
切换回es用户启动
su es
10.配置最大虚拟内存,最大线程数,最大文件描述符
最大虚拟内存不足
vim /etc/sysctl.conf
文件末尾追加
#添加最大虚拟内存数 vm.max_map_count=262144
最大文件描述符65535,最大线程数4096
vim /etc/security/limits.conf
文件末尾追加
#添加es用户配置 es soft nofile 65535 es hard nofile 65535 es soft nproc 4096 es hard noroc 4096
11.重新加载虚拟机内存配置
sysctl -p
12.配置可用环境(以下至少配置一个,es7.0)
discovery.seed_hosts:集群发现,提供集群中符合主机要求的节点列表,格式host:port或者host,其中port默认取值transport.profiles.default.port
discovery.seed_providers:以文件的方式提供主机列表,可以动态删除
cluster.initial_master_nodes:指定所有可以成为主节点的name或者ip,集群启动后会进行计算选举
vim /usr/java/es/elasticsearch-7.15.2/config/elasticsearch.yml
因为没有设置node.name就用ip设置
启动,访问ok
访问方式:
http://你的ip:9200
13.启动信息警告
如果启动时出现如下警告信息
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
这是提醒你 CMS垃圾收集器在 JDK 9 就开始被标注为@Deprecated,JDK 11支持的垃圾回收器为G1和ZGC,而ZGC在JDK 11 还处于实验阶段
修改config/jvm.options配置文件
vi config/jvm.options
将:-XX:+UseConcMarkSweepGC改为:-XX:+UseG1GC
平庸是常态,但我不甘
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)