安装 Elasticsearch
编辑安装 Elasticsearch
编辑托管 Elasticsearch 服务
编辑Elastic Cloud 提供了 Elasticsearch、Kibana 以及 Elastic 的可观察性、企业搜索和 Elastic Security 解决方案的所有功能,作为托管服务,可在 AWS、GCP 和 Azure 上使用。
要在 Elastic Cloud 中设置 Elasticsearch,请注册 免费的 Elastic Cloud 试用版。
自管理 Elasticsearch 选项
编辑如果您想自己安装和管理 Elasticsearch,您可以:
- 使用 Linux、MacOS 或 Windows 安装包 运行 Elasticsearch。
- 在 Docker 容器 中运行 Elasticsearch。
- 使用 Elastic Cloud on Kubernetes 在 Kubernetes 上设置和管理 Elasticsearch、Kibana、Elastic Agent 和其余的 Elastic Stack。
要在您自己的机器上试用 Elasticsearch,我们建议您使用 Docker 并同时运行 Elasticsearch 和 Kibana。更多信息,请参见 在本地运行 Elasticsearch。请注意,此设置不适用于生产环境。
Elasticsearch 安装包
编辑Elasticsearch 提供以下几种软件包格式:
Linux 和 MacOS |
|
Windows |
|
|
|
|
|
有关在您自己的场所设置 Elastic Stack 的分步示例,请尝试我们的教程:安装自管理的 Elastic Stack。
Elasticsearch 容器镜像
编辑您也可以在容器镜像中运行 Elasticsearch。
|
Docker 容器镜像可以从 Elastic Docker Registry 下载。 |
Java (JVM) 版本
编辑Elasticsearch 使用 Java 构建,并在每个发行版中包含捆绑的 OpenJDK 版本。我们强烈建议在所有 Elasticsearch 安装中使用捆绑的 JVM。
捆绑的 JVM 在支持和维护方面与 Elasticsearch 的任何其他依赖项相同。这意味着 Elastic 负责保持其更新,并根据需要对安全问题和错误报告做出反应,以解决 Elasticsearch 中的漏洞和其他错误。Elastic 对捆绑 JVM 的支持受 Elastic 的 支持策略 和 生命周期结束时间表 的约束,并且独立于 JVM 原供应商提供的支持策略和生命周期结束时间表。Elastic 不支持将捆绑的 JVM 用于运行 Elasticsearch 以外的目的。
Elasticsearch 只使用 JVM 提供的功能的一个子集。捆绑的 JVM 中的错误和安全问题通常与 Elasticsearch 不使用的功能有关。这些问题不适用于 Elasticsearch。Elastic 分析其所有依赖项(包括捆绑的 JVM)中安全漏洞的报告,如果需要,将发布 Elastic 安全公告。
如果您决定使用与捆绑版本不同的 Java 版本运行 Elasticsearch,请优先使用 Java 的 LTS 版本 的最新发行版,该版本列在支持矩阵中。尽管这种配置受支持,但如果您在选择的 JVM 中遇到安全问题或其他错误,Elastic 可能无法提供帮助,除非该问题也存在于捆绑的 JVM 中。相反,您必须直接向选择的 JVM 供应商寻求帮助。您还必须负责对所选 JVM 供应商发布的安全和错误公告做出反应。如果使用除捆绑的 JVM 之外的 JVM,Elasticsearch 的性能可能不会最佳。Elasticsearch 与某些 OpenJDK 特定功能紧密耦合,因此它可能无法与非 OpenJDK 的 JVM 正确配合使用。如果您尝试使用已知的错误 JVM 版本,Elasticsearch 将拒绝启动。
要使用您自己的 Java 版本,请将 ES_JAVA_HOME
环境变量设置为您自己的 JVM 安装路径。捆绑的 JVM 位于 Elasticsearch 主目录的 jdk
子目录中。如果使用您自己的 JVM,您可以删除此目录。
JDK 本地化数据库
编辑Elasticsearch 使用的本地化数据库用于将各种日期格式映射到底层的日期存储格式,这取决于 Elasticsearch 运行的 JDK 版本。在 JDK 23 及更高版本上,Elasticsearch 将使用 *CLDR* 数据库。在 JDK 22 及更低版本上,Elasticsearch 将使用 *COMPAT* 数据库。这意味着当从以前的 JDK 版本迁移到 JDK 23 或更高版本时,用于文本日期格式的字符串以及自定义周日期格式的输出可能会发生变化。有关更多信息,请参见 自定义日期格式。
JVM 和 Java 代理
编辑不要使用附加到 JVM 的第三方 Java 代理。这些代理会降低 Elasticsearch 的性能,包括冻结或崩溃节点。