Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >如何在 CentOS 8 上安装 Elasticsearch

如何在 CentOS 8 上安装 Elasticsearch

作者头像
雪梦科技
修改于 2020-03-30 03:01:29
修改于 2020-03-30 03:01:29
1.9K0
举报
文章被收录于专栏:ITCoderITCoder

本文最先发表在: https://cloud.tencent.com/developer/article/1626139

Elasticsearch 是一个开源全文搜索和分析引擎。它支持 RESTful 操作,并且允许你存储,搜索,并且实时分析大量的数据。Elasticsearch是最流行的搜索引擎之一,可为具有复杂搜索要求的应用程序提供动力,例如大型电子商务商店和分析应用程序。

本文主要涉及在 CentOS 8 上安装 Elasticsearch。

一、 安装 Java

Elasticsearch 是一个 Java 应用,因此,第一步就是安装 Java。

以 root 或者其他 sudo 用户身份运行下面的命令,去安装 OpenJDK 软件包:

代码语言:txt
AI代码解释
复制
sudo dnf install java-11-openjdk-devel

通过打印Java 版本验证 Java 安装:

代码语言:txt
AI代码解释
复制
java -version

输出将会像下面这样:

代码语言:txt
AI代码解释
复制
openjdk version "11.0.5" 2019-10-15 LTS

OpenJDK Runtime Environment 18.9 (build 11.0.5+10-LTS)

OpenJDK 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode, sharing)

二、安装 Elasticsearch

Elasticsearch 在标准的CentOS 8 源中不可用。我们将会从 Elasticsearch RPM 源中安装它。

使用rpm命令导入源的 GPG:

代码语言:txt
AI代码解释
复制
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

打开你的文本编辑器,并且在/etc/yum.repos.d目录下创建源文件:

代码语言:txt
AI代码解释
复制
sudo nano /etc/yum.repos.d/elasticsearch.repo

粘贴下面的内容到文件中:

代码语言:txt
AI代码解释
复制
[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

保存文件并且关闭你的文本编辑器。

现在源已经被启用,安装 Elasticsearch 软件包,输入:

代码语言:txt
AI代码解释
复制
sudo dnf install elasticsearch

一旦安装过程完成,启动并且启用这个服务:

代码语言:txt
AI代码解释
复制
sudo systemctl enable elasticsearch.service --now

想要验证 Elasticsearch 是否运行,使用 curl 命令发送一个 HTTP 请求到本地的 port 9200:

代码语言:txt
AI代码解释
复制
curl -X GET "localhost:9200/"

输出将会像下面这样:

代码语言:txt
AI代码解释
复制
{

 "name" : "centos8.localdomain",

 "cluster\_name" : "elasticsearch",

 "cluster\_uuid" : "V\_mfjn2PRJqX3PlZb\_VD7w",

 "version" : {

 "number" : "7.6.0",

 "build\_flavor" : "default",

 "build\_type" : "rpm",

 "build\_hash" : "7f634e9f44834fbc12724506cc1da681b0c3b1e3",

 "build\_date" : "2020-02-06T00:09:00.449973Z",

 "build\_snapshot" : false,

 "lucene\_version" : "8.4.0",

 "minimum\_wire\_compatibility\_version" : "6.8.0",

 "minimum\_index\_compatibility\_version" : "6.0.0-beta1"

  },

 "tagline" : "You Know, for Search"

}

它将会需要 5-10s 来启动服务。 如果你看到 curl: (7) Failed to connect to localhost port 9200: Connection refused,请稍等几秒钟,并且重试。

想要查看Elasticsearch服务的信息,使用下面的命令:

代码语言:txt
AI代码解释
复制
sudo journalctl -u elasticsearch

到这里,你已经在你的 CentOS 服务器上安装好 Elasticsearch。

<!--ad-->

三、 配置 Elasticsearch

Elasticsearch 数据存储/var/lib/elasticsearch目录,配置文件在/etc/elasticsearch

默认情况下,Elasticsearch 被配置文件仅仅监听 localhost。 如果客户端连接的数据库在同一个主机上,并且你设置了单节点集群,你不需要修改默认的配置文件。

3.1 远程访问

开箱即用的Elasticsearch,没有实现鉴权,因此它可以被任何人通过 HTTP API 进行访问。如果你允许远程访问你的Elasticsearch服务器,你需要配置你的防火墙,并且仅仅允许从受信任的客户端通过9200端口访问Elasticsearch。

例如,仅仅允许从192.168.121.80来的访问,输入下面的命令:

运行下面的命令,允许从远程受信任的 IP 地址访问 9200端口:

代码语言:txt
AI代码解释
复制
sudo firewall-cmd --new-zone=elasticsearch --permanent

sudo firewall-cmd --reload

sudo firewall-cmd --zone=elasticsearch --add-source=192.168.121.80/32 --permanent

sudo firewall-cmd --zone=elasticsearch --add-port=9200/tcp --permanent

sudo firewall-cmd --reload
代码语言:txt
AI代码解释
复制
不要忘记将`192.168.121.80`修改成你的远程 IP 地址。

稍后,如果你想允许从其他IP 地址访问,使用:

代码语言:txt
AI代码解释
复制
sudo firewall-cmd --zone=elasticsearch --add-source=<IP\_ADDRESS> --permanent

sudo firewall-cmd --reload

一旦防火墙被配置好了,下一步就是修改Elasticsearch的配置文件,并且允许Elasticsearch监听外部连接。

想要这样做,打开elasticsearch.yml配置文件:

代码语言:txt
AI代码解释
复制
sudo nano /etc/elasticsearch/elasticsearch.yml

搜索包含network.host,去掉注释,并且修改为:

代码语言:txt
AI代码解释
复制
network.host: 0.0.0.0

如果你拥有多个网络接口,指定接口 IP 地址来强制 Elasticsearch 仅仅监听指定的网络接口。

重启 Elasticsearch 服务,使修改生效:

代码语言:txt
AI代码解释
复制
sudo systemctl restart elasticsearch

就这些。你现在可以从远程位置连接到Elasticsearch服务器。

四、 总结

我们已经展示了如何在 CentOS 8 上安装 Elasticsearch。

<hr/>

<hr/>

<hr/>

如果你有任何疑问,请通过以下方式联系我们:

微信: sn0wdr1am86

微信群:

加上面的微信,备注微信群

QQ: 3217680847

QQ 群: 82695646

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
网络流量抓包分析工具moloch
下载RPM包:wget https://s3.amazonaws.com/files.molo.ch/builds/centos-7/moloch-2.2.3-1.x86_64.rpm
半月弧
2020/04/27
4.8K0
网络流量抓包分析工具moloch
Elasticsearch你竟然不知道!这么多家知名大厂在用它!
国内现在有大量的公司都在使用 Elasticsearch,包括携程、滴滴、今日头条、饿了么、360安全、小米、vivo等诸多知名公司。
Java程序猿
2021/07/07
4240
在Mac电脑上用VMware Fusion安装Windows7虚拟机
链接: https://pan.baidu.com/s/1Ov033tnnYl-LoQcJrpU8DA
Action
2021/03/26
3.8K0
在Mac电脑上用VMware Fusion安装Windows7虚拟机
都2021年了还不会在CentOS7上使用pyenv搭建Django环境吗?
pyenv是一个forked自ruby社区的简单、低调、遵循UNIX哲学的Python环境管理工具, 它可以轻松切换全局解释器版本, 同时结合vitualenv插件可以方便的管理对应的包源.
查理不是猹
2021/12/17
5230
Windows下安装MongoDB
下一步安装 "install mongoDB compass" 不勾选(当然你也可以选择安装它,可能需要更久的安装时间),MongoDB Compass 是一个图形界面管理工具,我们可以在后面自己到官网下载安装,下载地址:https://www.mongodb.com/download-center/compass。
Action
2021/09/14
9930
【玩转腾讯云】用eclipse跑通腾讯云JavaSDK
https://www.oracle.com/java/technologies/javase-jdk13-downloads.html
大大大黑白格子
2020/03/27
15.1K0
【玩转腾讯云】用eclipse跑通腾讯云JavaSDK
TKE nginx-ingress 开启ip白名单限制和透传client源IP
最近TKE迎来了nginx-ingress 插件的到来,此篇文章将结合TKE nginx-ingress插件,实现IP白名单配置和service透传client源IP的功能
惠绍奇
2020/12/30
4.7K0
Case 5 一键安装JS SDK 网页版WebRTC 网页 SIP客户端 语音通话,可以做web坐席
服务器环境要求 CentOS 6.9 64bit 下载脚本文件并安装 wget http://voip-sdk.oss-cn-beijing.aliyuncs.com/rtc_sip/install_rtc_sip.sh wget http://voip-sdk.oss-cn-beijing.aliyuncs.com/rtc_sip/python_install.sh #yum -y install dos2unix #dos2unix ./*.sh chmod a+x ./*.sh ./inst
qzlink.com
2020/07/01
1.9K0
关于Safari 访问springboot server项目异常问题
后端大哥不作为,埋点数据啥的搞得杂七乱八,自己用springboot 写了一个接受post日志的服务,数据入腾讯云ckafka,消费到elasticsearchhttps://console.cloud.tencent.com/es。(也无聊的用自带的云函数做了个备份将数据copy到了cos对象存储)并在springboot上面加了允许跨域等设置,代码是网上copy来的:
对你无可奈何
2021/02/04
7190
Mysql主从复制以及读写分离
主从复制:主库master将DDL,DML操作写入二进制文件binlog,从库通过IO-thread将binlog转换为中继日志relaylog,并且通过sql-thread从relaylog读取数据,重新释放数据记录变化并反应到自身数据来达到主从同步
风起--追风
2022/05/16
4890
k8s的持续集成(jenkins+gitlab+k8s)
root@k8s-master1 docker.yml# kubectl get node
不凡
2021/08/19
3.6K1
protobuf编译、安装和简单使用C++(Windows+VS平台)
将刚才编译后的libprotobufd.lib和protoc.exe拷贝到自己创建的项目下,按住shift+右键,选择打开CMD,输入protoc --cpp_out=./ Account.proto,发现目录中多了两个文件,一个.h头文件一个.cc源文件
WindSun
2020/03/21
8.9K2
【玩转腾讯云】导入镜像-Windows 2008 R2 Datacenter
【腾讯云】关于Windows Server 2008 R2 企业版 SP1 64位公共镜像下线通知
大大大黑白格子
2020/03/26
10.3K18
【玩转腾讯云】导入镜像-Windows 2008 R2 Datacenter
安装添加access数据库
access版本目前已经更新出了很多,包括access2016,2010;2019,2021;
用户9693436
2022/04/24
5.3K0
PHPStudy + VSCode 进行 PHP 断点调试
文件->首选项->设置->扩展->php->validate:executable path
Action
2021/08/12
2.2K0
PHPStudy + VSCode 进行 PHP 断点调试
如何找到native方法对应的Hotspot源码
哈喽,我是子牙。十余年技术生涯,一路披荆斩棘从技术小白到技术总监到JVM专家到创业。技术栈如汇编、C语言、C++、Windows内核、Linux内核。特别喜欢研究虚拟机底层实现,对JVM有深入研究。分享的文章偏硬核,很硬的那种。
子牙老师
2022/05/07
1.1K0
如何找到native方法对应的Hotspot源码
若依前后台框架,下载运行,若依系统生成代码
1、前置工具安装 jdk 1.8 redis (缓存数据库) mysql idea (后端开发工具) nodejs (js前端开发平台,本文主要用到包管理工具 npm) vscode (前端开发工具) git (版本管理工具) 下载 [https://gitee.com/y\_project/RuoYi-Vue](https://gitee.com/y_project/RuoYi-Vue) 2、运作方式 [image.png] 3、后台导入,设置 [image.png] [image.png] [image
用户7957495
2021/08/09
1.5K0
若依前后台框架,下载运行,若依系统生成代码
Visual Studio Code 使用教程
按住 cmd + shift + p 调出配置,选择“配置显示语言”,如果没有可以输入 Language。选择“zh-cn”
Action
2021/03/26
1K0
Visual Studio Code 使用教程
使用Xcode配置OpenCV环境
M1芯片的Mac安装opencv需要专门去找对应的版本去下载。这里稍有不慎,坑会比较多。
AlanWalker
2022/03/16
2.3K0
Redis 安装部署
测试下部署在本地 Docker 容器中的 Redis 服务器同时处理 10 万个并发请求的性能:
Action
2021/04/15
7480
Redis 安装部署
推荐阅读
相关推荐
网络流量抓包分析工具moloch
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文