linux 安装elasticsearch
5000字详说Elasticsearch入门(一) - 知乎 (zhihu.com)
(1)下载elasticsearch
https://www.elastic.co/cn/
ES 7.17.5 以上 不支持 JDK8
所以要注意
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.5-linux-x86_64.tar.gz
(2) 安装elasticsearch
mkdir -pv /baimie/{software, data, log}
tar -xf elasticsearch-7.17.5-linux-x86_64.tar.gz
useradd es
su - es -c "/baimei/softwares/elasticsearch-7.17.5/bin/elasticsearch"
会报错:
默认带了 java 运行环境的, 不需要安装jdk
只需要 修改一下权限就可以:
chown -R es.es /baimei/softwares/elasticsearch-7.17.5
(3) 修改内存
vi jvm.options
-
-Xms512m
-Xmx512m
这里白眉大叔建议是主机内存带下的 一半。 (经验所得) ,ms mx 设置一样的值就可以。
如果不设置,可能就是会卡主。
(4)再次启动:
su - es -c "/baimei/softwares/elasticsearch-7.17.5/bin/elasticsearch"
成功了,
我们检测一下:;默认端口是9200
curl http://127.0.0.1:9200
(3)配置外网访问 elasticsearch
我们需要 用浏览器访问, 需要配置外网:
cd /baimei/softwares/elasticsearch-7.17.5/config/elasticsearch.yml
vim elasticsearch.yml
配置为0.0.0.0 为被所有网卡 都可访问。
然后重启 ctrl + c
su - es -c "/baimei/softwares/elasticsearch-7.17.5/bin/elasticsearch"
报错:
这里有3个提示
(1) 需要调整虚拟 内存
永久生效内核参数(重启OS后配置不丢失) 强烈推荐
cat > /etc/sysctl.d/es.conf <<EOF
vm.max_map_count=262144
EOF
然后:#强制更新
sysctl -f /etc/sysctl.d/es.conf
(2)设置 集群的 节点信息
/softwares/elasticsearch-7.17.5/config/elasticsearch.yml
network.host: 0.0.0.0
discovery.seed_hosts: ["10.0.0.101"]
cluster.initial_master_nodes: ["10.0.0.101"]
关闭geoip数据库的更新
在最后添加: 不然 日志里从事出现 error updating geoip database
ingest.geoip.downloader.enabled: false
启动服务
su - es -c "/baimeidashu/softwares/elasticsearch-7.17.5/bin/elasticsearch"
检查服务:
curl 10.0.0.101:9200
{#more-10008}
其他配置
cluster.name:集群名称,根据自己业务启个合适的名字
node.name:给节点起个名字,一般使用node-1 、node-2 、......
path.data:数据存放的位置,比如:/data/elasticsearch/data
path.logs:日志存放的位置,比如:/data/elasticsearch/logs
network.host:配置成本机IP地址,用于集群机器之间相互通信。
http.port:ES服务访问的端口号,比如:9200
discovery.seed_hosts:配置为 master 候选者节点。如果要与其他节点组成集群,这里必须配置。比如:["10.20.1.29", "10.20.0.91", "10.20.0.93"]
cluster.initial_master_nodes:首次启动集群时,配置主节点的候选节点,该配置里的节点都是候选节点。比如:["node-1", "node-2", "node-3"]
开启日志功能:
path.logs:日志存放的位置,比如:/data/elasticsearch/logs
这样就可以放到后台启动了
su - es -c "/opt/elasticsearch-7.17.5/bin/elasticsearch -d "
如果不指定日志 默认是放到logs