Elasticsearch 集群安装

2023-05-08 10:10:11 浏览数 (1)

在Docker中安装Elasticsearch集群可以简化部署和管理过程,并提高可伸缩性和容错性。下面是基于Docker的Elasticsearch集群安装过程。

步骤1:安装Docker

如果您的系统中尚未安装Docker,请先安装Docker。可以根据官方文档来安装Docker:https://docs.docker.com/engine/install/

步骤2:创建Docker网络

在Docker中创建一个网络,用于在多个容器之间进行通信。

代码语言:javascript复制
docker network create es-net

步骤3:创建Elasticsearch容器

创建Elasticsearch容器需要使用Docker官方的Elasticsearch镜像。以下是创建单个节点Elasticsearch容器的命令:

代码语言:javascript复制
docker run --name es-node1 --network es-net -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.12.1

其中,--name选项指定容器名称,--network选项指定容器所在的网络,-p选项指定容器与主机之间的端口映射,-e选项指定Elasticsearch的配置参数。

如果要创建多个节点的Elasticsearch集群,可以使用以下命令:

代码语言:javascript复制
docker run --name es-node1 --network es-net -p 9200:9200 -p 9300:9300 -e "discovery.seed_hosts=es-node1,es-node2" -e "cluster.initial_master_nodes=es-node1" docker.elastic.co/elasticsearch/elasticsearch:7.12.1

docker run --name es-node2 --network es-net -p 9201:9200 -p 9301:9300 -e "discovery.seed_hosts=es-node1,es-node2" -e "cluster.initial_master_nodes=es-node1" docker.elastic.co/elasticsearch/elasticsearch:7.12.1

这里创建了两个Elasticsearch容器:es-node1和es-node2。discovery.seed_hosts选项指定了集群中所有节点的名称,cluster.initial_master_nodes选项指定了初始主节点。需要注意的是,这里的节点名称必须与容器名称相同。

步骤4:测试Elasticsearch集群

可以使用curl命令来测试Elasticsearch集群。以下是测试集群状态的命令:

代码语言:javascript复制
curl -X GET "http://localhost:9200/_cluster/health?pretty"

如果集群状态为Green,说明集群正常。

可以使用以下命令测试集群的查询功能:

代码语言:javascript复制
curl -X GET "http://localhost:9200/_search?q=test&pretty"

这里搜索关键词为test的文档。

0 人点赞