ℹ️ 在本节中,你将了解运行 Elasticsearch 的一些选项。本站的大多数教程和内容都要求你首先按照下面针对所选安装方式提供的说明进行操作。
如何运行 Elasticsearch
在本节中,我们将介绍 Elasticsearch 的便捷安装选项:
-
Elastic Cloud - Elastic Cloud 提供托管的 Elasticsearch 和 Kibana 服务,可在 AWS、GCP 和 Azure 上使用。它提供 14 天免费试用。
-
Docker - 适合本地开发和测试。
-
Serverless - 提供完全托管的体验,将底层基础设施抽象出来。
-
Start-local - 用于快速开始并在本地运行 Elasticsearch。
请注意,这些并不是部署 Elasticsearch 的唯一方式。你可以在Elasticsearch 安装指南中找到其他部署选项的介绍,例如使用 .zip 安装 Elasticsearch。
Elastic Cloud
ℹ️ Elastic Cloud 是开发和生产环境都推荐的选项。你可以在 cloud.elastic.co 注册 14 天免费试用。
如果你刚刚注册了 Elastic Cloud 试用账户,作为注册流程的一部分,系统会要求你创建一个 Serverless 项目或部署。
如果你需要在付费账户中创建一个新的完全托管项目,请按照以下说明操作:
-
进入你的 Elastic Cloud 主页。
-
点击 创建项目(Create proje)。
-
选择项目类型:Elasticsearch
-
为你的完全托管 Elasticsearch 项目输入名称。
-
选择项目配置。
-
选择你偏好的云服务提供商和区域。
-
点击 创建项目。
如果你需要在付费账户中创建一个新的部署,请按照以下说明操作:
-
进入你的 Elastic Cloud 主页。
-
点击 创建部署。
-
为你的新部署输入名称。
-
选择你偏好的云服务提供商和区域。
-
选择所需的硬件配置和版本;如果不确定,可以使用系统推荐的默认设置。
-
点击 创建部署。
要了解如何查找你的 Cloud ID 并创建 API 密钥 ,请查看本教程。
Dokcer
💡 在本地开发和测试 Elasticsearch 时,最方便的选项是使用官方 Docker 镜像。首先,请确保你的系统中已经安装 Docker。
在单节点模式下运行
对于本教程而言,单节点 Elasticsearch 部署已经足够。下面的命令会在 Docker 容器中启动该服务:
arduino
`
1. docker run -p 127.0.0.1:9200:9200 -d --name elasticsearch \
2. -e "discovery.type=single-node" \
3. -e "xpack.security.enabled=false" \
4. -e "xpack.license.self_generated.type=trial" \
5. -v "elasticsearch-data:/usr/share/elasticsearch/data" \
6. docker.elastic.co/elasticsearch/elasticsearch:8.15.0
`Lobster AI
你可能需要将上述命令中的 Elasticsearch 版本号更改为当前可用的最新版本。
运行命令几秒钟后,Elasticsearch 服务应该已经运行在 http://localhost:9200。在浏览器中打开此 链接 ,以确认服务已经启动并正在运行。
请注意,上述命令启动的服务禁用了身份验证和加密,这意味着任何连接到该服务的人都可以获得访问权限。虽然这种方式便于体验和学习 Elasticsearch,但你绝不应该在生产环境中以这种方式运行服务,也不应该在直接连接到互联网的计算机上以这种方式运行服务。
该服务使用试用许可证启动。试用许可证在 30 天的试用期内启用 Elasticsearch 的所有功能,包括 RRF 和 ML Inference 。试用期结束后,许可证会降级为基本许可证,该许可证永久免费。如果你希望跳过试用并直接使用基本许可证,请将 xpack.license.self_generated.type 变量的值设置为 basic。有关不同许可证之间详细的功能对比,请参阅 Subscriptions | Elastic Stack Products & Support | Elastic。
自托管生产部署
如果你对自托管的 Elasticsearch 生产部署感兴趣,请参考以下链接:
Serverless
请观看视频:www.bilibili.com/video/BV1bC...
Serverless 是一种部署选项,与自托管、ECE/ECK 和专用 Elastic Cloud 一样,托管在 Elastic Cloud 中,并提供完全托管的体验,将底层基础设施抽象出来。你无需等待服务器完成配置,也无需管理和扩展 Elasticsearch 集群。
底层基础设施将被完全抽象,你获得的是一种更加类似 SaaS 的体验,可以立即使用,无需查看或管理任何基础设施。这使你能够自动使用 Elastic 的最新功能,而无需担心管理集群或更新版本。
-
进入你的 Elastic Cloud 主页。
-
在 Serverless 项目下,选择创建你的第一个 Serverless 项目的选项。

- 选择你想要使用的解决方案(Elasticsearch、Elasticsearch Observability 或 Elastic Security)。请注意,Observability 和 Security 解决方案也包含 Elasticsearch。Serverless 的一项有意限制是,你一次只能选择一个解决方案。在本教程中,你将从 Elasticsearch 开始。选择解决方案后,点击 "Next" 按钮。

- 对于 Elasticsearch,你需要选择开始使用的配置类型;选项包括:
-
**通用型:**适用于各种数据类型的通用搜索场景。
-
**向量搜索优化型:**适用于使用向量相似度操作和近实时检索的场景。
-
**时间序列优化型:**适用于高容量时间序列数据(例如日志或分析数据)的保留和分析。
你还需要选择云服务提供商和云区域,然后点击 "Create Serverless project" 按钮。

- 在创建项目期间,你应该会看到一个带有视频的页面,用于表示项目正在加载。

- 几分钟后,你应该会看到一个 " Continue " 按钮,这表示你的集群已经可以使用。请务必点击该按钮。

- 你应该会看到一个页面,引导你在 Elasticsearch 中创建你的第一个索引。到这里,你已经成功设置好你的 Serverless 集群了 🎉

要了解如何查找你的 Cloud ID 并创建 API 密钥,请查看本教程。
Start-local
Start-local 是一种快速开始并在 macOS、Linux 和 Windows(使用 WSL)上通过 Docker 容器本地运行 Elasticsearch 的选项,适用于测试和开发。
由于安全方面的限制,此配置并非为生产环境设计。请务必查看部署选项,了解生产环境部署选项列表。
在终端中运行 Start-local 脚本:
sql
`curl -fsSL https://elastic.co/start-local | sh`Lobster AI
在所有内容加载期间,你应该会看到类似下面的终端显示,其中会显示 Elasticsearch 和 Kibana 实例正在初始化,以及所使用的版本。此脚本会生成一个随机密码、一个 API 访问密钥,以及一个 elastic-start-local 文件夹。该文件夹中的一些重要文件包括:
-
.env:此文件包含连接到你的 Elasticsearch 和 Kibana 实例所需的访问变量和信息。 -
docker-compose.yml:用于启动你的 Elasticsearch 和 Kibana 实例的 Docker Compose 文件。 -
start.sh/stop.sh/uninstall.sh:用于更改本地实例状态的命令。

- 一旦所有内容都创建完成,你应该会看到如下所示的界面,其中会在终端中显示用于打开 Kibana 的本地地址、你的 API 端点、用户名、密码和 URL。

- 点击在浏览器中打开的链接,然后使用你的用户名和密码登录。

- 现在你应该会看到一个页面,可以在此设置集成,从而连接到数据集或自行进行探索。
