Centos 7 安装系列(10):ElasticSearch 8.6.2

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 在空白的 Centos 7 系统中,安装部署 ElasticSearch 8.6 ,同时设置开机自启和密码安全策略。

一、系统环境

操作系统:Centos 7
已配置环境:空

二、解压安装

2.1 解压压缩包

上传压缩包到/opt 目录下

cd /opt

解压并创建数据目录

tar -zxvf elasticsearch-8.6.2-linux-x86_64.tar.gz
mv elasticsearch-8.6.2 elasticsearch
mkdir /opt/elasticsearch/data

2.2 修改配置文件

cd /opt/elasticsearch/config/
cp elasticsearch.yml elasticsearch.yml.cp
vi elasticsearch.yml

在文件末尾添加以下配置:

cluster.name: test-elasticsearch
node.name: es-node0
path.data: /opt/elasticsearch/data
path.logs: /opt/elasticsearch/logs
network.host: 0.0.0.0
cluster.initial_master_nodes: ["es-node0"]

在这里插入图片描述

2.3 添加操作用户

es不允许使用root用户操作,需要单独添加用户,并给es 文件夹赋权

useradd es
chown -R es:es /opt/elasticsearch/

2.4 启动

后台启动 ES

su es
cd /opt/elasticsearch/bin/
./elasticsearch -d

此时没法正常启动ES ,报错了。
在这里插入图片描述

对于【max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]】
修改配置

exit
vi /etc/security/limits.conf

在文件末尾添加以下内容:

* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096

对于【max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]】

vi /etc/sysctl.conf

添加以下内容:

 vm.max_map_count=262145

刷新配置后重启ES

sysctl -p
su es
cd /opt/elasticsearch/bin/
./elasticsearch -d

在这里插入图片描述

2.5 开放端口

因为防火墙开启的缘故,需要开放ES 的端口

exit
firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --reload

在这里插入图片描述

但是,此时访问es 还是会失败。

在这里插入图片描述

再次查看配置文件,会发现配置文件中末尾多了些安全相关的配置

vi elasticsearch.yml

在这里插入图片描述

修改以下内容:

xpack.security.enabled: false

关闭es ,重新启动

ps -ef|grep elastic
kill 2896

在这里插入图片描述

su es
cd /opt/elasticsearch/bin/
./elasticsearch -d

此时访问ES ,正常。

在这里插入图片描述

2.6 开机自启动配置

查看当前的开机启动服务

chkconfig --list

在这里插入图片描述

在/etc/init.d目录下创建启动文件

exit;
vi /etc/init.d/elasticsearch

添加内容如下

#!/bin/bash
#chkconfig: 2345 63 37
#description: elasticsearch
#processname: elasticsearch-8.6.2
export ES_HOME=/opt/elasticsearch
case $1 in
        start)
                su es<<!
                cd $ES_HOME
                ./bin/elasticsearch -d -p pid
                exit
!
                echo "elasticsearch is started"
                ;;
        stop)
                ##也可以根据ps命令获取elasticsearch进程的pid
                ##es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
                ##kill -9 $es_pid

                pid=`cat $ES_HOME/pid`
                kill -9 $pid
                echo "elasticsearch is stopped"
                ;;
        restart)
                pid=`cat $ES_HOME/pid`
                kill -9 $pid
                echo "elasticsearch is stopped"
                sleep 1
                su es<<!
                cd $ES_HOME
                ./bin/elasticsearch -d -p pid
                exit
!
                echo "elasticsearch is started"
        ;;
    *)
        echo "start|stop|restart"
        ;;
esac
exit 0

注意⚠️:
1、脚本中自动完成了用户的切换,在es 用户下启动 ES
2、采用 ./bin/elasticsearch -d -p pid 命令启动,会在目录下生成 pid 文件,服务stop 时可以直接读取pid 文件获取pid 。
说明:
每个被 chkconfig 管理的服务需要在对应的 init.d 下的脚本加上两行或者更多行的注释。
第一行告诉 chkconfig 缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。
第二行对服务进行描述,可以用 \ 跨行注释。

chkconfig: 2345 63 37 指的是指定 kibana 服务在 2、3、4、5的 level 等级下脚本执行顺序是63,1、6的 level 等级下脚本执行顺序是37。

增加脚本的可执行权限

chmod +x /etc/init.d/elasticsearch

把 ES 服务添加到 chkconfig 列表

chkconfig --add elasticsearch

设置 ES 服务自启动

chkconfig elasticsearch on

查看 ES 服务自启动状态

chkconfig --list elasticsearch

在这里插入图片描述

如果2~5都是on,就表明会自动启动了

服务启动
service elasticsearch start
服务停止
service elasticsearch stop
服务重启
service elasticsearch restart

## 2.7 设置用户名密码认证

注意:因为 ES 已经启动,且不是使用上面脚本的命令启动,故而想要使用上面三条命令,需得先关闭原本的 ES 程序。
ps -ef|grep elastic
kill 3142
在这里插入图片描述

启动 ES

service elasticsearch start

修改配置

vi /opt/elasticsearch/config/elasticsearch.yml

修改以下内容

xpack.security.enabled: true
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization

在这里插入图片描述

重置 ES 中用户elastic 的密码:

service elasticsearch restart
cd /opt/elasticsearch/bin/
./elasticsearch-reset-password -u elastic
y

在这里插入图片描述

此时访问 http ://192.168.88.159:9200/ 会没有响应,需要将 http 改为 https ,或者修改配置禁用ssl :

vi elasticsearch.yml

在这里插入图片描述

三、总结

本文内容:
在空白的 Centos 7 系统中,安装部署 ElasticSearch 8.6 ,同时设置开机自启和密码安全策略。

我是陈冰安,在知识宇宙中摸爬滚打,分享个人所得,也期待志同道合。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
1月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
107 64
|
1月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
115 61
|
12天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
29 5
|
11天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
12天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
83 1
Linux系统之Centos7安装cockpit图形管理界面
|
19天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
56 3
|
20天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
36 2
|
1月前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
123 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
22天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
65 2
下一篇
无影云桌面