社区编辑申请
注册/登录
如何将Elasticsearch安装到CentOS 7上? 译文
系统 Linux
Elasticsearch是一种开源分布式全文本搜索和分析引擎,支持充分利用REST协议的操作,让你可以实时存储、搜索和分析大量数据。Elasticsearch是最流行的搜索引擎之一,支持搜索需求复杂的应用(比如大型电子商务商店)和分析应用。

如何将Elasticsearch安装到CentOS 7上?

【51CTO.com快译】Elasticsearch是一种开源分布式全文本搜索和分析引擎,支持充分利用REST协议的操作,让你可以实时存储、搜索和分析大量数据。Elasticsearch是***的搜索引擎之一,支持搜索需求复杂的应用(比如大型电子商务商店)和分析应用。

本文介绍了如何将Elasticsearch安装到CentOS 7上。

前提条件

登录系统的用户要有sudo权限才能安装软件包。

安装Elasticsearch

将Elasticsearch安装到CentOS 7上的推荐方法是从官方的Elasticsearch存储库安装rpm软件包。

本文发稿时,Elasticsearch的***版是6.7,要求Java 8或更高版本。你可以使用官方的Oracle Java发行版或OpenJDK 8。

我们将安装OpenJDK 8: 

  1. sudo yum install java-1.8.0-openjdk-devel 

通过输出Java版本来验证Java的安装:

  1. java -version 

输出应类似这样: 

  1. openjdk version "1.8.0_201"  
  2. OpenJDK Runtime Environment (build 1.8.0_201-b09)  
  3. OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode)  

鉴于Java已安装,下一步是添加Elasticsearch注册库。

使用下列命令导入注册库的GPG密钥: 

  1. sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch 

打开文本编辑工具,创建下列注册库文件: 

  1. sudo nano /etc/yum.repos.d/elasticsearch.repo 

将下列内容粘贴到该文件中: 

  1. /etc/yum.repos.d/elasticsearch.repo  
  2. [elasticsearch-6.x]  
  3. name=Elasticsearch repository for 6.x packages  
  4. baseurl=https://artifacts.elastic.co/packages/6.x/yum  
  5. gpgcheck=1  
  6. gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch  
  7. enabled=1  
  8. autorefresh=1  
  9. type=rpm-md  

保存文件,关闭文本编辑工具。

如果你想安装之前版本的Elasticsearch,将上述命令中的6.x换成你需要的那个版本。

现在可以输入下列命令来安装Elasticsearch软件包: 

  1. sudo yum install elasticsearch 

一旦安装过程完成,运行下列命令,开始并启用服务: 

  1. sudo systemctl enable elasticsearch.service  
  2. sudo systemctl start elasticsearch.service  

你可以使用下列curl命令,通过向localhost上的端口9200发送HTTP请求来验证Elasticsearch在正常运行: 

  1. curl -X GET "localhost:9200/" 

输出应类似下面这样: 

  1.  
  2. "name" : "fLVNqN_" 
  3. "cluster_name" : "elasticsearch" 
  4. "cluster_uuid" : "6zKcQppYREaRH0tyfJ9j7Q" 
  5. "version" : {  
  6. "number" : "6.7.0" 
  7. "build_flavor" : "default" 
  8. "build_type" : "rpm" 
  9. "build_hash" : "8453f77" 
  10. "build_date" : "2019-03-21T15:32:29.844721Z" 
  11. "build_snapshot" : false 
  12. "lucene_version" : "7.7.0" 
  13. "minimum_wire_compatibility_version" : "5.6.0" 
  14. "minimum_index_compatibility_version" : "5.0.0"  
  15. },  
  16. "tagline" : "You Know, for Search"  
  17.  

可能5秒至10秒后服务才开启。如果你看到curl: (7) Failed to connect to localhost port 9200: Connection refused,那就等几秒,再试一下。

想查看Elasticsearch服务记录的消息,可以使用下列命令: 

  1. sudo journalctl -u elasticsearch 

至此,你已将Elasticsearch安装在CentOS服务器上。

配置Elasticsearch

Elasticsearch数据存储在/var/lib/elasticsearch目录中,而配置文件位于/etc/elasticsearch。

默认情况下,Elasticsearch配置成只侦听localhost。如果连接到数据库的客户端也在同一个主机上运行,你安装的又是单节点集群,就不需要更改默认配置文件。

远程访问

默认情况下,Elasticsearch并不实施验证机制,所以它可以被能访问HTTP API的任何人访问。如果你想远程访问Elasticsearch服务器,就需要配置防火墙,允许只从可信的客户端访问Elasticsearch端口9200。

从CentOS 7开始,FirewallD取代iptable,成为默认的防火墙管理工具。

运行下列命令,允许从远程可信IP地址通过端口9200来访问: 

  1. sudo firewall-cmd --new-zone=elasticsearch --permanent  
  2. sudo firewall-cmd --reload  
  3. sudo firewall-cmd --zone=elasticsearch --add-source=192.168.121.80/32 --permanent  
  4. sudo firewall-cmd --zone=elasticsearch --add-port=9200/tcp --permanent  
  5. sudo firewall-cmd --reload  

别忘了将192.168.121.80换成你的远程IP地址。

之后,如果你想允许从另一个IP地址来访问,请使用: 

  1. sudo firewall-cmd --zone=elasticsearch --add-source= --permanent  
  2. sudo firewall-cmd --reload  

一旦防火墙配置完毕,下一步是编辑Elasticsearch配置,让Elasticsearch可以侦听外部连接。

为此,打开elasticsearch.yml配置文件: 

  1. sudo nano /etc/elasticsearch/elasticsearch.yml 

搜索含有network.host的那一行,取消注释,把值改成0.0.0.0: 

  1. /etc/elasticsearch/elasticsearch.yml  
  2. network.host: 0.0.0.0  

如果你的机器上有多个网络接口,可以指定接口的IP地址,那样Elasticsearch只侦听指定的接口。

重启Elasticsearch服务,让变更生效: 

  1. sudo systemctl restart elasticsearch 

结束语

你已将Elasticsearch成功地安装到了CentOS 7上。现在你可以访问官方的Elasticsearch说明文档页面,了解如何从Elasticsearch开始入门。

原文标题:How to Install Elasticsearch on CentOS 7

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

责任编辑:庞桂玉 来源: 51CTO
相关推荐

2017-05-03 14:00:00

2022-07-27 08:16:22

2019-09-27 08:52:12

RHELCentOSElastic sta

2020-05-14 12:09:56

2019-07-22 08:05:21

2019-08-14 09:42:06

2022-02-17 08:53:38

2021-04-12 07:41:57

Centos7系统分布式集群

2022-01-26 08:47:17

2020-09-07 11:30:47

2018-03-26 09:17:53

LinuxTlog会话录制

同话题下的热门内容

超实用的 Linux 高级命令,运维同仁一定要懂!五种常见 Linux 系统安装包管理工具中文使用指南一学就会:如何在 Linux 中挂载远程文件系统或目录Linux下,如何自动对日志进行压缩备份?Linux内存管理(Golang实现)选择 Linux 发行版时要考虑的六个重要因素如何在 Linux 中连接到串行控制台如何在 Linux 上正确使用 cat 命令

编辑推荐

Linux系统下安装MySQL的步骤详解CentOS与Ubuntu有什么不同?Linux下如何使用minicom USB串口为什么你可能想要略过Ubuntu 17.04?Linux中7个判断文件系统类型的方法
我收藏的内容
点赞
收藏

51CTO技术栈公众号