Linux 部署elasticsearch

下载安装包地址:https://www.elastic.co/cn/downloads/elasticsearch

使用 scp 命令上传到服务器

scp .elasticsearch-7.10.1-linux-x86_64.tar.gz 用户名@ip:服务器路径

解压安装包

tar -zxvf elasticsearch-7.10.1-linux-x86_64.tar.gz

需要解压到指定目录就使用一下命令:

tar -zxvf elasticsearch-7.10.1-linux-x86_64.tar.gz -C /usr/local

修改配置文件

进入到 es 目录下的 config 文件夹中,修改 elasticsearch.yml 文件

修改的主要内容:

# 配置 es 的集群名称,默认是elasticsearch,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
cluster.name: my-application
# 节点名称
node.name: node-1
# 设置索引数据的存储路径
path.data: /home/zheng/elasticsearch-7.10.1/data
# 设置日志的存储路径
path.logs: /home/zheng/elasticsearch-7.10.1/logs
# 设置当前的ip地址,通过指定相同网段的其他节点会加入该集群中
network.host: 0.0.0.0
# 设置对外服务的http端口
http.port: 9200
# 设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
discovery.zen.ping.unicast.hosts: ["127.0.0.1","10.10.10.34:9200"]
# 设置在集群中的所有节点名称,这个节点名称就是之前所修改的,当然你也可以采用默认的也行,目前是单机,放入一个节点即可
cluster.initial_master_nodes: ["node-1"]

配置完成后保存退出

启动 es

进入 es 的 bin 目录,执行命令:

./elasticsearch

启动后可能出现的错误:

  • elasticsearch max virtual memory areas vm.max_map_count [65530] is too low

解决办法:

修改配置 sysctl.conf

vi /etc/sysctl.conf

添加下面配置:

vm.max_map_count=655360

接着执行命令:

sysctl -p
  • es 因为安全问题,不能用 root 用户启动

 具体操作如下:

  useradd zheng
  passwd zheng
再输入两次密码(自定义)
  为用户赋权限

  chown -R testuser:testuser /usr/local/elasticsearch

然后使用es用户启动  :su zheng

然后重新启动 es,看到下面这个就成功

可以用浏览器访问 ip:9200 查看,打开如下:

注:浏览器访问不了的话,可能是因为服务器没有开放 9200 端口,关闭防火墙即可

原文地址:https://www.cnblogs.com/aze999/p/14130465.html