1 下载elasticsearch
https://www.elastic.co/cn/downloads/past-releases#elasticsearch
2 上传解压
将下载的elasticsearch压缩包上传到服务器的指定目录并解压
shell
tar -zxvf elasticsearch-7.17.20-linux-x86_64.tar.gz
3 启动
进入elasticsearch安装目录,执行
shell
./bin/elasticsearch
错误提示
java.lang.RuntimeException: can not run elasticsearch as root
不要以root用于运行elasticsearch
为elasticsearch创建用户
shell
创建一个用户(es-admin)
useradd es-admin
#为创建的es用户设置密码(连续输入两次密码)
passwd es-admin
#创建一个用户组es
groupadd es
#分配用户es-admin到用户组es中
usermod -G es es-admin
#将elasticsearch目录的所有者分配给es-admin,该命令在elasticsearch解压目录外层执行
chown -R es-admin:es elasticsearch-7.17.20/
执行完查看一下
shell
#切换用户到es-admin
su es-admin
#进入elasticsearch目录并运行elasticsearch
cd elasticsearch-7.17.20/
./bin/elasticsearch
至此elasticsearch启动成功
shell
curl http://127.0.0.1:9200
4 配置
在配置的过程中有一些报错信息,我们一步一步解决
4.1 开放端口9200
shell
sudo firewall-cmd --zone=public --add-port=9200/tcp --permanent
sudo firewall-cmd --reload
4.2 允许外网访问
shell
vim config/elasticsearch.yml
将network注释去掉,并修改为 0.0.0.0
再次启动elasticsearch
shell
./bin/elasticsearch
4.3 出错问题解决
报错如下
根据报错信息进行调整
shell
vim /etc/sysctl.conf
在文件最后面添加如下信息
shell
vm.max_map_count=262144
然后执行sysctl -p
再配置一个cluster.initial_master_nodes
shell
vim config/elasticsearch.yml
我们配置三处内容
shell
cluster.name: my-application
node.name: node-1
cluster.initial_master_nodes: ["node-1"]
启动报错
org.elasticsearch.ElasticsearchException: not all primary shards of [.geoip_databases] index are active
修改配置文件elasticsearch.yml,添加如下配置
shell
ingest.geoip.downloader.enabled: false
再次启动就可以了
参考文献
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/install-elasticsearch.html在