Elasticsearch【环境搭建 02】最新版 elasticsearch + kibana(7.15.0)安装、配置、启动(多个问题处理 + kibana仪表盘使用举例)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: Elasticsearch【环境搭建 02】最新版 elasticsearch + kibana(7.15.0)安装、配置、启动(多个问题处理 + kibana仪表盘使用举例)

本文的安装文件是 2021.09.23 最新发布的【elasticsearch-7.15.0-linux-x86_64.tar.gz】和【kibana-7.15.0-linux-x86_64.tar.gz】以下内容均以 7.15.0 版本进行说明。

1 ElasticSearch

1.1 环境

elasticsearch 的运行依赖 JDK,支持的最低版本为 Java 8。

Elasticsearch requires at least Java 8. 
Specifically as of this writing, 
it is recommended that you use the Oracle JDK version 1.8.0_131.

我用的是JDK11【顺便测试11是否支持】:

[root@aliyun ~]# java -version
openjdk version "11" 2018-09-25
OpenJDK Runtime Environment 18.9 (build 11+28)
OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)

1.2 安装配置

  1. 解压并移动到 /usr/local/elasticsearch 下
tar -zxvf ./elasticsearch-7.15.0-linux-x86_64.tar.gz
mv ./elasticsearch-7.15.0/ /usr/local/elasticsearch
  1. 用户添加及权限授予

ES跟MySQL类似,不能使用root用户启动,否在会报异常:

Caused by: java.lang.RuntimeException: can not run elasticsearch as root

添加 elasticsearch 用户组和用户:

# 添加组和用户
groupadd elasticsearch 
useradd -g elasticsearch elasticsearch
# 设置密码
[root@aliyun ~]# echo "elasticsearch" | passwd elasticsearch --stdin
Changing password for user elasticsearch.
passwd: all authentication tokens updated successfully.

将ES的文件转到 elasticsearch 下:

cd /usr/local/elasticsearch 
chown -R elasticsearch .
chgrp -R elasticsearch .
[root@aliyun elasticsearch]# ll
total 636
drwxr-xr-x  2 elasticsearch elasticsearch   4096 Sep 16 11:09 bin
drwxr-xr-x  3 elasticsearch elasticsearch    169 Sep 23 16:14 config
drwxr-xr-x  9 elasticsearch elasticsearch    121 Sep 16 11:09 jdk
drwxr-xr-x  3 elasticsearch elasticsearch   4096 Sep 16 11:09 lib
-rw-r--r--  1 elasticsearch elasticsearch   3860 Sep 16 11:01 LICENSE.txt
drwxr-xr-x  2 elasticsearch elasticsearch      6 Sep 16 11:07 logs
drwxr-xr-x 60 elasticsearch elasticsearch   4096 Sep 16 11:09 modules
-rw-r--r--  1 elasticsearch elasticsearch 628969 Sep 16 11:07 NOTICE.txt
drwxr-xr-x  2 elasticsearch elasticsearch      6 Sep 16 11:07 plugins
-rw-r--r--  1 elasticsearch elasticsearch   2710 Sep 16 11:01 README.asciidoc

修改 sudoers 文件,给用户 elasticsearch 添加 sudo 权限:

[root@aliyun ~]# vim /etc/sudoers
## Allow root to run any commands anywhere
root    ALL=(ALL)    ALL
# 添加elasticsearch 
elasticsearch    ALL=(ALL)    ALL
  1. 系统参数配置【vm.max_map_count】

否则会报错:

ERROR: [1] bootstrap checks failed
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
# 查看系统环境变量 vm.max_map_count
[root@aliyun elasticsearch]# sysctl -a | grep vm.max_map_count
vm.max_map_count = 65530
# 修改系统环境变量 vm.max_map_count
[root@aliyun elasticsearch]# vim /etc/sysctl.conf
  # 末尾添加 
  vm.max_map_count = 262144
# 配置文件修改完后需要重启才能生效 可使用下面命令使得本次启动有效
[root@aliyun ~]# sysctl -w vm.max_map_count=262144
vm.max_map_count = 262144
  1. 单机版配置【修改两个文件】

【文件 1️⃣ elasticsearch.yml】

[root@aliyun ~]# vim /usr/local/elasticsearch/config/elasticsearch.yml
# 1.添加一下配置 【关掉bootstrap的自检测程序 启动会更快】
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
# 2.Network 配置修改
network.host: 0.0.0.0

报错问题及处理:

[2021-09-23T16:27:14,520][ERROR][o.e.b.Bootstrap] 
[aliyun] node validation exception [1] bootstrap checks failed. 
You must address the points described in the following [1] lines before starting Elasticsearch.
bootstrap check failure [1] of [1]: the default discovery settings are unsuitable for 
production use; at least one of [discovery.seed_hosts, discovery.seed_providers, 
cluster.initial_master_nodes] must be configured
[root@aliyun ~]# vim /usr/local/elasticsearch/config/elasticsearch.yml
# 3.Discovery 配置修改,必须配置至少一项:
# [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes]
cluster.initial_master_nodes: ["aliyun"]

【文件 2️⃣ jvm.options】

es运行在Java虚拟机环境下,默认占用1G内存,【我使用的是阿里云低端主机1核2G内存的,这里调小一些,非生产环境也可以调小使用,生产环境要根据需求进行调整。】

[root@aliyun ~]# vim /usr/local/elasticsearch/config/jvm.options
# 初始化堆空间
-Xms256m
# 最大堆空间
-Xmx256m

1.3 启动验证

# 启动要使用elasticsearch用户
[root@aliyun ~]# su elasticsearch
[elasticsearch@aliyun root]$ /usr/local/elasticsearch/bin/elasticsearch
# 后台启动
[elasticsearch@aliyun root]$ /usr/local/elasticsearch/bin/elasticsearch -d
[root@aliyun ~]# jps
10548 Jps
10312 Elasticsearch

也可以通过 IP:9200 进行验证:

至此,最新版本的 elasticsearch 安装配置启动完成。

2 kibana

2.1 安装配置

  1. 解压并移动到 /usr/local/kibana下
tar -zxvf ./kibana-7.15.0-linux-x86_64.tar.gz
mv ./kibana-7.15.0-linux-x86_64/ /usr/local/kibana
  1. 修改配置文件【kibana.yml】
[root@aliyun ~]# vim /usr/local/kibana/config/kibana.yml
  # 可使用默认值
  # server.port: 5601
  # kibana.index: ".kibana"
  # 以下配置需要修改 
  server.host: "0.0.0.0"
  elasticsearch.hosts: ["http://localhost:9200"] # 多个用逗号隔开
  i18n.locale: "zh-CN" # 界面中文设置【如果需要的话】
  xpack.security.enabled: false # 否则页面会弹出提示
Elasticsearch built-in security features are not enabled. Without authentication, 
your cluster could be accessible to anyone. 
See https://www.elastic.co/guide/en/elasticsearch/reference/7.15/security-minimal-setup.html 
to enable security.

2.2 启动验证

# kibana 也是不能使用root用户启动的 但是提供了 --allow-root 使其可以用root用户启动
[root@aliyun ~]# /usr/local/kibana/bin/kibana --allow-root
# 后台启动
[root@aliyun ~]# nohup /usr/local/kibana/bin/kibana --allow-root &
[root@aliyun ~]# ps -aux | grep kibana
root      1845  0.5  3.0 617844 53972 pts/1    Sl+  17:49   0:00 /usr/local/kibana/bin/../node/bin/node /usr/local/kibana/bin/../src/cli/dist --allow-root
root      1857 23.3 24.7 1216092 443012 pts/1  Sl+  17:49   0:17 /usr/local/kibana/node/bin/node --preserve-symlinks-main --preserve-symlinks /usr/local/kibana/src/cli/dist --allow-root
root      2024  0.0  0.0  12108  1080 pts/2    R+   17:50   0:00 grep --color=auto kibana

也可以通过 IP:5601进行验证:

2.3 设置开机启动

# 添加 kibana.service 文件
vim /lib/systemd/system/kibana.service
  # 内容如下
  [Unit]
  Description=Kibana
  [Service]
  LimitNOFILE=100000
  LimitNPROC=100000
  ExecStart=/usr/local/kibana/bin/kibana --allow-root 
  User=elasticsearch
  Group=elasticsearch
  [Install]
  WantedBy=multi-user.target
# 重新加载systemd的守护线程 systemctl daemon-reload
systemctl enable kibana
# 启动kibana.service:
systemctl start kibana.service
# 查看kibana.serivce状态:
systemctl status kibana.service 
ps aux|grep kibana
# 如果出现错误可以使用如下命令查看日志:journalctl -u kibana.service

2.4 仪表盘

kibana 的仪表盘类似于Tableau、永洪、帆软等可视化工具,详细的使用需要自行学习,这里贴出一个很简单的图,界面还是挺美观的而且可设置项也是挺多,最为关键的是开源免费:

3.总结

至此,最新版 elasticsearch + kibana(7.15.0)安装配置及启动成功 👌

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
2月前
|
数据可视化 Java Windows
Elasticsearch入门-环境安装ES和Kibana以及ES-Head可视化插件和浏览器插件es-client
本文介绍了如何在Windows环境下安装Elasticsearch(ES)、Elasticsearch Head可视化插件和Kibana,以及如何配置ES的跨域问题,确保Kibana能够连接到ES集群,并提供了安装过程中可能遇到的问题及其解决方案。
Elasticsearch入门-环境安装ES和Kibana以及ES-Head可视化插件和浏览器插件es-client
|
6天前
|
存储 监控 安全
|
26天前
|
自然语言处理 搜索推荐 关系型数据库
elasticsearch学习六:学习 全文搜索引擎 elasticsearch的语法,使用kibana进行模拟测试(持续更新学习)
这篇文章是关于Elasticsearch全文搜索引擎的学习指南,涵盖了基本概念、命令风格、索引操作、分词器使用,以及数据的增加、修改、删除和查询等操作。
17 0
elasticsearch学习六:学习 全文搜索引擎 elasticsearch的语法,使用kibana进行模拟测试(持续更新学习)
|
27天前
|
存储 JSON Java
elasticsearch学习一:了解 ES,版本之间的对应。安装elasticsearch,kibana,head插件、elasticsearch-ik分词器。
这篇文章是关于Elasticsearch的学习指南,包括了解Elasticsearch、版本对应、安装运行Elasticsearch和Kibana、安装head插件和elasticsearch-ik分词器的步骤。
92 0
elasticsearch学习一:了解 ES,版本之间的对应。安装elasticsearch,kibana,head插件、elasticsearch-ik分词器。
|
29天前
|
运维 监控 数据可视化
大数据-171 Elasticsearch ES-Head 与 Kibana 配置 使用 测试
大数据-171 Elasticsearch ES-Head 与 Kibana 配置 使用 测试
52 1
|
2月前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
2月前
|
JSON 自然语言处理 数据库
ElasticSearch基础1——索引和文档。Kibana,RestClient操作索引和文档+黑马旅游ES库导入
概念、ik分词器、倒排索引、索引和文档的增删改查、RestClient对索引和文档的增删改查
ElasticSearch基础1——索引和文档。Kibana,RestClient操作索引和文档+黑马旅游ES库导入
|
3月前
|
JSON 自然语言处理 数据库
Elasticsearch从入门到项目部署 安装 分词器 索引库操作
这篇文章详细介绍了Elasticsearch的基本概念、倒排索引原理、安装部署、IK分词器的使用,以及如何在Elasticsearch中进行索引库的CRUD操作,旨在帮助读者从入门到项目部署全面掌握Elasticsearch的使用。
|
3月前
|
数据可视化 Docker 容器
一文教会你如何通过Docker安装elasticsearch和kibana 【详细过程+图解】
这篇文章提供了通过Docker安装Elasticsearch和Kibana的详细过程和图解,包括下载镜像、创建和启动容器、处理可能遇到的启动失败情况(如权限不足和配置文件错误)、测试Elasticsearch和Kibana的连接,以及解决空间不足的问题。文章还特别指出了配置文件中空格的重要性以及环境变量中字母大小写的问题。
一文教会你如何通过Docker安装elasticsearch和kibana 【详细过程+图解】
|
3月前
|
Ubuntu Oracle Java
如何在 Ubuntu VPS 上安装 Elasticsearch
如何在 Ubuntu VPS 上安装 Elasticsearch
35 0