Elasticsearch系列-安装部署

  • 准备
  • 安装
  • 错误

准备

1.服务器创建es用户

useradd es
passwd es

2.elasticsearch部署环境JDK

3.安装包
可以去elastic官网下载相应版本文件。我这里安装版本的是7.12.0。
Linux版本:

//centos下若没有安装curl
yum install curl
//进入es用户目录执行下载
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.12.0-linux-x86_64.tar.gz

安装

解压下载的压缩文件

tar -xzvf elasticsearch-7.12.0-linux-x86_64.tar.gz

启动elasticsearch

cd elasticsearch-7.12.0/bin/
./elasticsearch &

访问elasticsearch

curl http://127.0.0.1:9200//返回信息
{"name" : "izwz9ja3exxb7by25st5gbz","cluster_name" : "elasticsearch","cluster_uuid" : "hD8cxBoIRvW6tZUEIFMTUQ","version" : {"number" : "7.12.0","build_flavor" : "default","build_type" : "tar","build_hash" : "78722783c38caa25a70982b5b042074cde5d3b3a","build_date" : "2021-03-18T06:17:15.410153305Z","build_snapshot" : false,"lucene_version" : "8.8.0","minimum_wire_compatibility_version" : "6.8.0","minimum_index_compatibility_version" : "6.0.0-beta1"},"tagline" : "You Know, for Search"
}

集群启动:
修改配置文件

vim elasticsearch.yml//配置集群名称
cluster.name: elasticsearch
//配置节点名称
node.name: node-1
//配置数据存放路径
path.data: /path/to/data
//配置日志存放路径
path.logs: /path/to/logs
//配置访问地址 所有机器可访问 则配置为0.0.0.0
network.host: 0.0.0.0
//配置访问端口
http.port: 9200
//配置集群扫描地址
discovery.seed_hosts: ["172.18.88.96", "127.0.0.1"]
//配置集群节点主节点竞选的节点
cluster.initial_master_nodes: ["node-1", "node-2"]

启动集群节点

./elasticsearch -Epath.data=data1 -Epath.logs=log1 -Enode.name=node-1 -d
./elasticsearch -Epath.data=data2 -Epath.logs=log2 -Enode.name=node-2 -d
./elasticsearch -Epath.data=data3 -Epath.logs=log3 -Enode.name=node-3 -d

查看集群健康信息:
curl http://localhost:9200/_cluster/health
curl http://localhost:9200/_cat/healthv=true
查看节点列表
curl http://localhost:9200/_cat/nodes
查看节点信息
curl http://localhost:9200/_nodes/transportpretty

错误

  1. 启动报错 error=‘Cannot allocate memory’

    warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME
    warning: ignoring JAVA_OPTS= -Djava.security.egd=file:/dev/./urandom; pass JVM parameters via ES_JAVA_OPTS
    Future versions of Elasticsearch will require Java 11; your Java version from [/usr/local/java/jdk1.8.0_171/jre] does not meet this requirement. Consider switching to a distribution of Elasticsearch with a bundled JDK. If you are already using a distribution with a bundled JDK, ensure the JAVA_HOME environment variable is not set.
    warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME
    warning: ignoring JAVA_OPTS= -Djava.security.egd=file:/dev/./urandom; pass JVM parameters via ES_JAVA_OPTS
    Future versions of Elasticsearch will require Java 11; your Java version from [/usr/local/java/jdk1.8.0_171/jre] does not meet this requirement. Consider switching to a distribution of Elasticsearch with a bundled JDK. If you are already using a distribution with a bundled JDK, ensure the JAVA_HOME environment variable is not set.
    Exception in thread “main” java.lang.RuntimeException: starting java failed with [1]
    output:

    There is insufficient memory for the Java Runtime Environment to continue.

    Native memory allocation (mmap) failed to map 986513408 bytes for committing reserved memory.

    An error report file with more information is saved as:

    logs/hs_err_pid27324.log

    error:
    Java HotSpot™ 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c5330000, 986513408, 0) failed; error=‘Cannot allocate memory’ (errno=12)
    at org.elasticsearch.tools.launchers.JvmOption.flagsFinal(JvmOption.java:119)
    at org.elasticsearch.tools.launchers.JvmOption.findFinalOptions(JvmOption.java:81)
    at org.elasticsearch.tools.launchers.JvmErgonomics.choose(JvmErgonomics.java:38)
    at org.elasticsearch.tools.launchers.JvmOptionsParser.jvmOptions(JvmOptionsParser.java:135)
    at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:86)

解决方法:
修改config目录下的配置文件jvm.options

################################################################
## IMPORTANT: JVM heap size
################################################################
##
## The heap size is automatically configured by Elasticsearch
## based on the available memory in your system and the roles
## each node is configured to fulfill. If specifying heap is
## required, it should be done through a file in jvm.options.d,
## and the min and max should be set to the same value. For
## example, to set the heap to 4 GB, create a new file in the
## jvm.options.d directory containing these lines:
##
## -Xms4g
## -Xmx4g
##
## See https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html
## for more information
##
################################################################
# 按自己机器内存情况配置
-Xms128m
-Xmx128m
  1. 启动报错:can not run elasticsearch as root

    [2021-04-09T10:26:01,627][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [izwz9ja3exxb7by25st5gbz] uncaught exception in thread [main]
    org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:163) ~[elasticsearch-7.12.0.jar:7.12.0]
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-7.12.0.jar:7.12.0]
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:75) ~[elasticsearch-7.12.0.jar:7.12.0]
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:116) ~[elasticsearch-cli-7.12.0.jar:7.12.0]
    at org.elasticsearch.cli.Command.main(Command.java:79) ~[elasticsearch-cli-7.12.0.jar:7.12.0]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115) ~[elasticsearch-7.12.0.jar:7.12.0]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:81) ~[elasticsearch-7.12.0.jar:7.12.0]
    Caused by: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:101) ~[elasticsearch-7.12.0.jar:7.12.0]
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:168) ~[elasticsearch-7.12.0.jar:7.12.0]
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:397) ~[elasticsearch-7.12.0.jar:7.12.0]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.12.0.jar:7.12.0]
    … 6 more
    uncaught exception in thread [main]
    java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:101)
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:168)
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:397)
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159)
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150)
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:75)
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:116)
    at org.elasticsearch.cli.Command.main(Command.java:79)
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115)
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:81)
    For complete error details, refer to the log at /root/elasticsearch-7.12.0/logs/elasticsearch.log

解决方法:
创建es用户

创建es 用户
useradd es
创建es用户密码  changeme
passwd es
分配es用户 安装文件夹权限
chown -R es elasticsearch-7.12.0
切换到es 用户
su es
  1. 启动报错“Error: Could not find or load main class org.elasticsearch.tools.java_version_checker.JavaVersionChecker”
    解决方法:因为elasticsearch目录在root下面,将elasticsearch安装文件拷贝到es用户目录下

  2. 启动报错“AccessDeniedException[/home/es/elasticsearch-7.12.0/config/elasticsearch.yml]”
    解决方法:因为elasticsearch目录没有权限,读取不到配置文件,授权操作一下

    chown -R es elasticsearch-7.12.0

  3. 启动报错 “ERROR: [2] bootstrap checks failed”
    [1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
    [2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决方法:

修改配置文件
vim /etc/sysctl.conf
在文件最后加上
vm.max_map_count=262144
保存文件后 刷新文件生效
sysctl -p

Elasticsearch系列-安装部署相关推荐

  1. ElasticSearch系列 - 安装

    ElasticSearch系列 - 安装 ElasticSearch 安装 elasticSearch下载 选择MACOS 下载,然后解压zip包 Elasticsearch目录结构为: 目录 配置文 ...

  2. SCOM 2012系列②安装部署SCOM

    1 安装部署SQL Server 1.1 安装SQL 2008 R2 管理中心站点服务器和主站点服务器都安装SQL 2008 R2 放入SQL 2008 R2的安装光盘,双点运行 在SQL Serve ...

  3. Elasticsearch的安装部署

    1.安装包下载 ElasticSearch官网: https://www.elastic.co/cn/downloads/elasticsearch Elasticsearch相关软件各版本下载:ht ...

  4. Elasticsearch系列--安装

    我的环境是centos7.5 Java1.8 第一步下载 ElasticSearch官网 ElasticSearch下载页面 PS:安装时多种多样,试过yum可能是我操作有问题三次没安对,wget之后 ...

  5. ELK(Elasticsearch)安装部署应用_2018_lcf

    ELK 是什么? • ELK 其实并不是一款软件,而是一整套解决方案,是三个软件产品的首字母缩写 – Elasticsearch:负责日志检索和储存 – Logstash:负责日志的收集和分析.处理 ...

  6. 最新 MySQL 8.0.32 在Win10安装部署(详细)

    一.前言   MySQL官方Windows版下载地址:https://dev.mysql.com/downloads/installer/     本教程详细指导如何在Win10系统下安装部署最新版M ...

  7. Elasticsearch系列之:Centos7安装部署Elasticsearch详细步骤

    Elasticsearch系列之:Centos7安装部署Elasticsearch详细步骤 一.下载ElasticSearch安装包 二.创建ES数据存储目录 三.创建ES所属用户 四.配置用户的打开 ...

  8. Prometheus监控系列一 | 安装部署及配置

    Prometheus监控系列一 | 安装部署及配置 文章目录 0 简介 1 基础环境 2 安装Prometheus 2.1 安装 2.2 配置开机自启动 2.3 启动服务 2.4 验证 3 安装Gra ...

  9. 【ElasticSearch系列连载】3. 如何安装符合生产环境要求的ES集群

    [ElasticSearch系列连载]3. 如何安装符合生产环境要求的ES集群 通过本文,将会循序渐进地了解到ES的若干部署方案,以及相关的基础操作与配置. 上一节介绍的一键安装方式,可以快速启动一个 ...

最新文章

  1. TIP/IP 端口号大全
  2. 03-C语言的注释与转义字符
  3. python编写函数求斐波那契数列的某一项_求解一道Python编程题
  4. python ftplib bufsize_python:ftplib模块
  5. Linux eclipse+perl开发环境安装
  6. hdfs读写流程_一篇文章搞清楚 HDFS 基本原理
  7. 刷新iframe内容
  8. Android 11.0 12.0拨打接听电话默认开启免提
  9. centeros 下载及安装
  10. C# html日期选择控件,C#实现日期选择
  11. 解决Rufus不会自动下载ldlinux.sys和ldlinux.bss文件问题
  12. 腾讯 csig 面试简述(已通过)
  13. 在云测平台对手机进行兼容性测试
  14. php each 指针,PHP each() 函数用法简介
  15. jpa原生query_SpringDataJpa使用原生sql的小坑
  16. git The requested URL returned error: 429 问题解决
  17. linux生成checksum,SF2281修改Lic授权ID生成新checksum生成器
  18. 1.6python网络爬虫--读取和处理纯文本格式(CSV,PDF,docx)
  19. Openssl-AES加密
  20. 超详细,从零开始搭建阿里云服务器(centos7)第一章 远程连接

热门文章

  1. 使用Excel导出XML格式文件
  2. 林志玲结婚,让微博程序员加班
  3. SSM综合项目实战(TTSC) -- day02 Dubbo注册中心,通用Mapper,分页插件
  4. FineUI秘密花园(一) — 为什么选择FineUI?
  5. 《高效学习OpenGL》之 操作矩阵堆栈 glPushMatrix(),glPopMatrix()
  6. gazebo urdf sdf 相互转换
  7. [社工dos]饭客大型职业教程社工及dos笔记
  8. 关键词优化如何优化(网站seo关键词布局)
  9. 全新安装 nginx 妈妈再也不担心我重装系统了
  10. shell脚本注释方法