Elasticsearch7分布式安装及常见问题

介绍

在centos7 安装Elasticsearch7.7.0。 安装过程中遇到了一些问题,记录了下

环境

服务器节点名称描述
192.168.75.206node-206主节点,负责索引创建、删除、集群关联
192.168.75.207node-207从节点
192.168.75.208node-208从节点

准备工作

  • 安装 jdk
  • Elasticsearch7 自带jdk11,如果没有安装jdk, es7使用缺省jdk11
  • 如果已安装,使用已安装的jdk,低于11有警告,但不影响使用。
  • 安装过程省略
  • 关闭防火墙
#查看状态
[root@localhost local]# systemctl stop firewalld.service
[root@localhost local]# systemctl status firewalld.service

在这里插入图片描述
关闭成功

  • 下载

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.7.0-linux-x86_64.tar.gz

  • 添加用户
    es 使用root 无法启动
[root@localhost config]# adduser es
[root@localhost config]# passwd es 

安装

安装目录:/usr/local

# 解压
[root@localhost local]# tar -xzf elasticsearch-7.7.0-linux-x86_64.tar.gz -C /usr/local
# 重命名
[root@localhost local]# mv elasticsearch-7.7.0 elasticsearch
# 授权
[root@localhost local]# chown -R es:es elasticsearch

  • 修改配置
    elasticsearch.yml
# true选主时,有可能被选为主
node.master: true
# 数据节点
node.data: true
#集群名称,所有节点集群名一样
cluster.name: ikang_cluster
#节点名称
node.name: node-206
#索引存储位置
path.data: /usr/local/soft/elasticsearch/es_data
#日志位置
path.logs: /usr/local/soft/elasticsearch/logs
#外部访问地址,可以设置成主机ip
network.host: 0.0.0.0
#外部http访问端口
http.port: 9200
#节点之间通信ip,本机ip
network.publish_host: 192.168.75.206
#节点之间通信端口
transport.tcp.port: 9300
#集群中节点,默认时9300可以忽略,
discovery.seed_hosts: ["192.168.72.206:9300", "192.168.72.207:9300", "192.168.72.208:9300"]
#初始集群主节点,可以配置多个,从中选主一个作为主
cluster.initial_master_nodes: ["node-206"]
#跨域访问配置
http.cors.enabled: true
http.cors.allow-origin: "*"

其他两个节点配置一样,不在列举,改下 node.name、ip 即可

  • 修改内存配置
    此处内存与java虚拟机JVM不同,是es 使用的内同 默认是 1g,我的机器配置比较低,修改下内存配置,根据实际内存调整(一般设置成机器内存1/2)
-Xms512m 
-Xmx512m
  • 启动
    切换 es 用户
[es@localhost config]# cd /usr/local/elasticsearch/bin
[es@localhost bin]# ./elasticsearch -d
  • 访问
[root@localhost ~]#  curl -X GET http://localhost:9200
{
  "name" : "node-206",
  "cluster_name" : "ikang_cluster",
  "cluster_uuid" : "Jz7PRuySTSyOKgRRHm53Tg",
  "version" : {
    "number" : "7.7.0",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "81a1e9eda8e6183f5237786246f6dced26a10eaf",
    "build_date" : "2020-05-12T02:01:37.602180Z",
    "build_snapshot" : false,
    "lucene_version" : "8.5.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

安装成功。

安装常见问题

  • 问题一
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root

es 为了安全,不能使用root 启动,新建普通用户,用普通用户启动

  • 问题二
initial heap size [67108864] not equal to maximum heap size [134217728]; this can cause resize pauses and prevents mlockall from locking the entire heap

jvm内存不够,修改es 的jvm 配置 jvm.options

-Xms64m  #默认1g, 根据自己机器内存修改
-Xmx64m
  • 问题三
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]

用户打开文件数:4096,有限制,修改配置。切换root 用户,配置文件添加如下配置: vim /etc/security/limits.conf

* soft nofile 65536
* hard nofile 65536

配置生效:sysctl -p

  • 问题四
 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

切换到root在/etc/sysctl.conf 添加如下配置

vm.max_map_count = 262144

  • 问题五
max size virtual memory [3395829760] for user [xxx] is too low, increase to [unlimited]

解决方案: /etc/security/limits.conf 添加配置

* hard memlock unlimited
* soft memlock unlimited
* hard nofile 65536
* soft nofile 65536
* - as unlimited

生效:sysctl -p
问题四
max number of threads [3790] for user [guan] is too low, increase to at least [4096]


 es soft nproc  65535
es hard nproc  65535

小结

elasticsearch 集群安装完成,可以进行使用。es 需要集成很多插件,elasticsearch-head 常用的插件,适用于window 与linux,安装一个head 插件

安装head 插件

下载地址

  • 安装

cd elasticsearch-head-master
npm install
npm run start
open http://localhost:9100/
  • 访问

http://localhost:9100/
在这里插入图片描述

kibana 安装

  • 下载
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.5.2-linux-x86_64.tar.gz
  • 修改配置
    kibana.yml
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://192.168.75.206:9200"]
  • 启动
./kibana

整个elasticsearch 安装完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值