ElasticSearch入门(一)

96 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第1天,点击查看活动详情

一、安装Elasticsearch

ElasticSearch: mirrors.huaweicloud.com/elasticsear…

选择需要下载的版本

# 这里我选择7.14.0版本
wget https://mirrors.huaweicloud.com/elasticsearch/7.14.0/elasticsearch-7.14.0-linux-x86_64.tar.gz

# 解压
tar xvf elasticsearch/7.14.0/elasticsearch-7.14.0-linux-x86_64.tar.gz

注意:elasticsearch运行要求java版本最低为java8

jdk国内镜像下载:mirrors.huaweicloud.com/java/jdk

wget https://mirrors.huaweicloud.com/java/jdk/8u152-b16/jdk-8u152-linux-x64.tar.gz
tar xvf jdk-8u152-linux-x64.tar.gz

因为我要部署的机器是jdk1.7 所以我需要指定下启动的jdk环境,大家如果已经是java8以上的,可以忽略这个步骤

/home/appadmin/jdk/jdk1.8.0_152/
# 修改启动时 指定Java版本
vim bin/elasticsearch
# 添加如下配置
export JAVA_HOME=/home/appadmin/jdk/jdk1.8.0_152
export PATH=$JAVA_HOME/bin:$PATH

修改配置文件

network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["host1", "host2"]
cluster.initial_master_nodes: ["node-1", "node-2"]

启动服务

./elasticsearch

启动过程中报错

ERROR: [1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch.
bootstrap check failure [1] of [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
ERROR: Elasticsearch did not exit normally - check the logs at /home/appadmin/elk/elasticsearch-7.14.0/logs/my-application.log
# 使用vmstat查看内存使用状况
vmstat
# 使用命令查看sysctl vm.max_map_count
sysctl vm.max_map_count

解决:

# 切换root用户
su root
vim /etc/sysctl.conf

# 添加配置 保存
vm.max_map_count=655360
# 使配置生效
sysctl -p

# elasticsearch不能以root用户启动,切换用户

再次启动elasticsearch服务

再次报错

max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
max number of threads [3773] for user [liangkeke] is too low, increase to at least [4096]

解决:

vim /etc/security/limits.conf

# 添加配置
* soft nofile 65535
* hard nofile 65537
* soft nproc 4096
* hard nproc 4096

配置完,切换用户启动elasticsearch服务即可

访问本机ip+9200端口号

二、安装管理插件elasticsearch-head

如果是本机安装,直接使用google插件就好,很方便。

远程的话安装麻烦一点

git clone https://github.com/mobz/elasticsearch-head.git
# 远程丢到服务器上

cd elasticsearch-head/
npm install

logstash: mirrors.huaweicloud.com/logstash/?C…

kibana: mirrors.huaweicloud.com/kibana/?C=N…