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

一、系统环境

操作系统: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 ,正常。

访问地址: http://192.168.88.159:9200/
健康检查:
http://192.168.88.159:9200/_cluster/health?pretty=true
集群详细信息:
http://192.168.88.159:9200/_cluster/state?pretty

在这里插入图片描述

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 ,同时设置开机自启和密码安全策略。

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 要在CentOS 7上安装Elasticsearch,您可以按照以下步骤进行操作: 1. 首先,确保您的系统已更新并安装了Java 8或更高版本。您可以使用以下命令来更新软件包并安装Java: ``` sudo yum update sudo yum install java-1.8.0-openjdk ``` 2. 接下来,您需要添加Elasticsearch GPG密钥和存储库。使用以下命令导入GPG密钥: ``` sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch ``` 3. 然后,您需要为Elasticsearch创建一个Yum存储库文件。创建一个名为“elasticsearch.repo”的文件,并将以下内容添加到其中: ``` [elasticsearch-7.x] name=Elasticsearch repository for 7.x packages baseurl=https://artifacts.elastic.co/packages/7.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md ``` 4. 保存并退出文件,然后运行以下命令以更新存储库: ``` sudo yum makecache ``` 5. 最后,安装Elasticsearch: ``` sudo yum install elasticsearch ``` 6. 安装完成后,您可以使用以下命令启动Elasticsearch服务: ``` sudo systemctl start elasticsearch ``` 7. 您还可以使用以下命令检查服务状态: ``` sudo systemctl status elasticsearch ``` 现在,您已经成功在CentOS 7上安装并启动了Elasticsearch。 ### 回答2: Elasticsearch是一种流行的搜索引擎,可以在大型数据集的基础上提供带有分析功能的全文搜索。在本文中,我们将讨论如何在CentOS 7服务器上安装Elasticsearch。 步骤1:安装Java 要运行Elasticsearch,您需要JDK。按照以下步骤安装Java: 首先,更新存储库: sudo yum update -y 然后,安装Java: sudo yum install java-1.8.0-openjdk-devel 安装完成后,可以验证Java是否安装成功: java -version 步骤2:添加Elasticsearch存储库 为了安装最新版本的Elasticsearch,您需要添加官方Elasticsearch仓库。在CentOS 7上执行以下命令: wget https://artifacts.elastic.co/GPG-KEY-elasticsearch sudo rpm --import GPG-KEY-elasticsearch sudo vi /etc/yum.repos.d/elasticsearch.repo 编辑文件并添加以下仓库: [elasticsearch-7.x] name=Elasticsearch repository for 7.x packages baseurl=https://artifacts.elastic.co/packages/7.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md 保存并关闭文件。 步骤3:安装Elasticsearch 现在已将Elasticsearch仓库添加到系统中。使用以下命令安装Elasticsearch: sudo yum install elasticsearch 安装完成后,启动Elasticsearch并将其设置为服务: sudo systemctl start elasticsearch sudo systemctl enable elasticsearch 通过以下URL检查Elasticsearch是否正在运行:http://localhost:9200/ 现在,您可以使用Elasticsearch进行全文搜索和分析。 总结 在本文中,我们已经讨论了如何在CentOS 7服务器上安装Elasticsearch。您首先需要安装Java,添加Elasticsearch存储库,然后安装Elasticsearch并将其设置为服务。安装完成后,您可以在服务器上使用Elasticsearch进行全文搜索和分析。 ### 回答3: CentOS7是一种比较流行的Linux操作系统,安装elasticsearch是将其变成一种强大的搜索引擎的必要步骤。以下是基本的步骤: 1. 在CentOS7中,安装Java环境。确保Java环境的版本为8。 sudo yum install java-1.8.0-openjdk-devel 2. 从Elasticsearch官网下载elasticsearch。 curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.0-x86_64.rpm 3. 使用以下命令安装elasticsearch。 sudo rpm -ivh elasticsearch-7.8.0-x86_64.rpm 4. 启动Elasticsearch服务 sudo systemctl start elasticsearch 5. 配置elasticsearch服务自动启动 sudo systemctl enable elasticsearch 6. 检查elasticsearch是否在运行中 curl -X GET "localhost:9200" 7. 配置防火墙允许外部访问 sudo firewall-cmd --zone=public --add-port=9200/tcp --permanent sudo firewall-cmd --reload 8. 通过浏览器访问elasticsearch 在浏览器中输入:http://localhost:9200,如果返回类似于以下内容,则说明elasticsearch安装成功。 { "name" : "your_hostname", "cluster_name" : "elasticsearch", "cluster_uuid" : "sample_uuid", "version" : { "number" : "7.8.0", "build_flavor" : "default", "build_type" : "rpm", "build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65", "build_date" : "2020-06-14T19:35:50.234439Z", "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" } 通过以上步骤,您可以成功安装elasticsearch并开始使用该搜索引擎提供的强大功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暗星涌动

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值