获取我们关于安装两者的简化说明。

-- Seth Kenlon(作者)

如果你渴望学习基于开源 Lucene 库的著名开源搜索引擎 Elasticsearch,那么没有比在本地安装它更好的方法了。这个过程在 Elasticsearch 网站 中有详细介绍,但如果你是初学者,官方说明就比必要的信息多得多。本文采用一种简化的方法。

添加 Elasticsearch 仓库

首先,将 Elasticsearch 仓库添加到你的系统,以便你可以根据需要安装它并接收更新。如何做取决于你的发行版。在基于 RPM 的系统上,例如 Fedora 、 CentOS 、 Red Hat Enterprise Linux(RHEL) 或 openSUSE ,(本文任何地方引用 Fedora 或 RHEL 的也适用于 CentOS 和 openSUSE)在 /etc/yum.repos.d/ 中创建一个名为 elasticsearch.repo 的仓库描述文件:

$ cat << EOF | sudo tee /etc/yum.repos.d/elasticsearch.repo[elasticsearch-7.x]name=Elasticsearch repository for 7.x packagesbaseurl=https://artifacts.elastic.co/packages/oss-7.x/yumgpgcheck=1gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearchenabled=1autorefresh=1type=rpm-mdEOF

在 Ubuntu 或 Debian 上,不要使用 add-apt-repository 工具。由于它自身默认的和 Elasticsearch 仓库提供的不匹配而导致错误。相反,设置这个:

$ echo "deb https://artifacts.elastic.co/packages/oss-7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

在你从该仓库安装之前,导入 GPG 公钥,然后更新:

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv D27D666CD88E42B4$ sudo apt update

此存储库仅包含 Elasticsearch 的开源功能,在 Apache 许可证 下发布,没有提供订阅版本的额外功能。如果你需要仅限订阅的功能(这些功能是并不开源),那么 baseurl 必须设置为:

baseurl=https://artifacts.elastic.co/packages/7.x/yum

安装 Elasticsearch

你需要安装的软件包的名称取决于你使用的是开源版本还是订阅版本。本文使用开源版本,包名最后有 -oss 后缀。如果包名后没有 -oss,那么表示你请求的是仅限订阅版本。

如果你创建了订阅版本的仓库却尝试安装开源版本,那么就会收到“非指定”的错误。如果你创建了一个开源版本仓库却没有将 -oss 添加到包名后,那么你也会收到错误。

使用包管理器安装 Elasticsearch。例如,在 Fedora、CentOS 或 RHEL 上运行以下命令:

$ sudo dnf install elasticsearch-oss

在 Ubuntu 或 Debian 上,运行:

$ sudo apt install elasticsearch-oss

如果你在安装 Elasticsearch 时遇到错误,那么你可能安装的是错误的软件包。如果你想如本文这样使用开源包,那么请确保使用正确的 apt 仓库或在 Yum 配置正确的 baseurl。

启动并启用 Elasticsearch

安装 Elasticsearch 后,你必须启动并启用它:

$ sudo systemctl daemon-reload$ sudo systemctl enable --now elasticsearch.service

要确认 Elasticsearch 在其默认端口 9200 上运行,请在 Web 浏览器中打开 localhost:9200。你可以使用 GUI 浏览器,也可以在终端中执行此操作:

$ curl localhost:9200{ "name" : "fedora30