前言
随着数据越来越多,各种数据存储工具也越来越多。Elasticsearch 是一款用于全文检索的分布式搜索引擎,它可以快速存储、搜索和分析海量数据。本文将介绍如何使用 Docker 搭建 Elasticsearch 集群。
准备工作
在开始之前,需要先安装 Docker 和 Docker Compose。可以参考 Docker 官方文档进行安装。
搭建 Elasticsearch 集群
1. 创建 Docker Compose 文件
首先,我们需要创建一个 docker-compose.yml
文件,用于定义我们的 Elasticsearch 集群。
version: '3' services: elasticsearch: image: elasticsearch:7.10.2 environment: - cluster.name=docker-cluster - discovery.type=single-node
上述文件定义了一个 Elasticsearch 的 Docker 服务。其中,image
参数指定了我们使用的 Elasticsearch 镜像版本,environment
参数定义了集群的名称和发现类型。
2. 启动 Elasticsearch 集群
接下来,我们运行以下命令以启动 Elasticsearch 集群:
docker-compose up -d
该命令将启动一个 Elasticsearch Docker 容器。我们可以使用以下命令检查容器是否已经启动:
docker ps
3. 配置 Elasticsearch 集群
现在,我们已经成功地启动了单节点 Elasticsearch 集群。接下来,我们将添加两个 Elasticsearch 节点。
首先,我们需要修改 docker-compose.yml
文件以添加两个 Elasticsearch 节点。我们可以使用以下命令进行修改:
-- -------------------- ---- ------- -------- --- --------- ---------------- ------ -------------------- ------------ - ------------------------- - --------------------------- - ---------------------------------------------------- - ---------------------------------------------------------------------------- ---------------- ------ -------------------- ------------ - ------------------------- - --------------------------- - ---------------------------------------------------- - ---------------------------------------------------------------------------- ---------------- ------ -------------------- ------------ - ------------------------- - --------------------------- - ---------------------------------------------------- - ----------------------------------------------------------------------------
上述代码定义了三个 Elasticsearch 服务,每个服务都使用相同的镜像版本,但是在环境变量中我们添加了不同的节点名称、发现种子主机列表和初始主节点。
接下来,我们运行以下命令以启动新的 Elasticsearch 节点:
docker-compose up -d
4. 访问 Elasticsearch 集群
现在,我们已经成功地创建了一个 Elasticsearch 集群。我们可以使用以下命令检查群集状态:
curl -X GET "localhost:9200/_cat/nodes?v=true&pretty"
该命令将输出连接到 Elasticsearch 集群的节点列表。例如:
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name 172.20.0.3 35 91 1 0.00 0.01 0.05 dilmrt * elasticsearch-1 172.20.0.2 33 91 1 0.01 0.06 0.12 dilmrt - elasticsearch-2 172.20.0.4 31 91 1 0.00 0.01 0.05 dilmrt - elasticsearch-3
我们可以使用 Kibana 来管理 Elasticsearch 集群。我们可以使用以下命令启动 Kibana:
docker run -p 5601:5601 -e ELASTICSEARCH_HOSTS=http://localhost:9200 kibana:7.10.2
我们可以打开浏览器访问 http://localhost:5601
来访问 Kibana。
结论
在本文中,我们介绍了如何使用 Docker 搭建 Elasticsearch 集群。通过本文的指导,你可以快速地创建一个 Elasticsearch 集群,并开始存储、搜索和分析海量数据。希望这篇文章对你有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/673401630bc820c58245c1f6