Docker Compose 构建多节点 Elasticsearch 集群

Elasticsearch 是一个流行的开源搜索和分析引擎,它可以用于处理大量结构化和非结构化数据。Docker Compose 是一个用于定义和运行多个 Docker 容器的工具。在本文中,我们将介绍如何使用 Docker Compose 构建一个多节点 Elasticsearch 集群,以便在本地或生产环境中进行开发和测试。

准备工作

在开始之前,您需要安装 Docker 和 Docker Compose。您可以参考 Docker 官方文档来安装它们。您还需要创建一个新的目录,用于存储 Docker Compose 配置文件和 Elasticsearch 数据。

创建 Docker Compose 配置文件

在新目录中创建一个名为 docker-compose.yml 的文件,并添加以下内容:

这个配置文件定义了一个 Elasticsearch 集群,其中包含三个节点:elasticsearchelasticsearch2elasticsearch3。每个节点都使用 Elasticsearch 7.14.0 镜像,并在 volumes 部分中指定了数据卷,以便 Elasticsearch 数据可以持久化存储。每个节点都在 networks 部分中指定了一个名为 esnet 的网络,以便它们可以相互通信。

elasticsearch 节点是集群的初始节点,并使用 discovery.type=single-node 配置。这意味着它只有一个节点,因此它不需要发现其他节点。elasticsearch2elasticsearch3 节点使用 discovery.type=zen 配置,以便它们可以自动发现其他节点。

启动 Elasticsearch 集群

运行以下命令来启动 Elasticsearch 集群:

这个命令将会使用 Docker Compose 配置文件中定义的镜像创建和启动三个节点。您可以使用以下命令来查看节点是否已启动:

如果一切正常,您应该看到类似于以下输出:

测试 Elasticsearch 集群

现在,您可以使用 curl 命令来测试 Elasticsearch 集群是否正常工作。运行以下命令:

您应该看到类似于以下输出:

这个输出表明 Elasticsearch 集群已经启动,并且有三个节点,状态为绿色。

总结

在本文中,我们介绍了如何使用 Docker Compose 构建一个多节点 Elasticsearch 集群。通过使用 Docker Compose,我们可以轻松地在本地或生产环境中构建和测试 Elasticsearch 集群。如果您正在开发或测试 Elasticsearch 应用程序,这个技术将会非常有用。如果您想更深入地了解 Elasticsearch,您可以参考 Elasticsearch 官方文档。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65642c82d2f5e1655dd93091


纠错
反馈