创建多个节点的集群 - Elastic Stack 8.0
文章转载自:https://mp.weixin.qq.com/s/k6u9Q2nebW9qgZMghQwJng
详述如何安装3个节点的 Elasticsearch 集群。我将使用 Docker 来进行部署。
首先,我们使用如下的命令来创建第一个 Elasticsearch 节点:
docker network create elastic
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.0.0
docker run -e ES_JAVA_OPTS="-Xms1g -Xmx1g" --name es-node01 --net elastic -p 9200:9200 -p 9300:9300 -it docker.elastic.co/elasticsearch/elasticsearch:8.0.0
在启动的过程中,我们可以看到如下的输出:

等 Elasticsearch 启动后,我们可以使用如下的命令来进行检查:
由于是自签名证书,所以,我们可以使用 --insecure 来进行上面的操作。
curl --insecure --user elastic:qTfj3Vfm+6RT1VrCbmwV https://localhost:9200
# 拷贝证书:docker cp es-node01:/usr/share/elasticsearch/config/certs/http_ca.crt .
curl -X GET --cacert ./http_ca.crt -u elastic:qTfj3Vfm+6RT1VrCbmwV https://localhost:9200/

已经成功地启动了第一个节点。我们可以使用如下的命令来进行查看:
$ curl --insecure --user elastic:qTfj3Vfm+6RT1VrCbmwV https://localhost:9200/_cat/nodes
172.24.0.2 56 30 0 0.04 0.03 0.04 cdfhilmrstw * 2b7bdc81eb56
接下来使用如下的命令来创建第二个节点:
docker run -e ENROLLMENT_TOKEN="eyJ2ZXIiOiI4LjAuMCIsImFkciI6WyIxNzIuMjQuMC4yOjkyMDAiXSwiZmdyIjoiZTQzNTQyMWJlNTRiMGM2ZGJjYWU1M2NlNDBjMWQwYTFhNWM3YWRmMmEzZTJlZTc2OTQyMjc3YTZhYzdjZDBlNyIsImtleSI6IjR1SG9GSDhCYVhsVEQ2N1U4QlBuOjRkNDduNmd5UUFTcHBvWG5zbjNUckEifQ==" -e ES_JAVA_OPTS="-Xms1g -Xmx1g" --name es-node02 --net elastic -it docker.elastic.co/elasticsearch/elasticsearch:8.0.0

在上面,我们使用了之前第一个节点启动时的集群 enrollment token,同时我们省去了端口的 mapping。
等这个节点完全启动后,我们再次使用如下的命令来进行查看:
$ curl --insecure --user elastic:qTfj3Vfm+6RT1VrCbmwV https://localhost:9200/_cat/nodes
172.24.0.2 21 42 1 0.03 0.10 0.06 cdfhilmrstw * 2b7bdc81eb56
172.24.0.3 11 42 1 0.03 0.10 0.06 cdfhilmrstw - 3f97cfe38a4e
这个时候,我们可以看到有两个节点的集群了。
我们使用同样的方法来启动第三个节点。运行如下的命令:
docker run -e ENROLLMENT_TOKEN="eyJ2ZXIiOiI4LjAuMCIsImFkciI6WyIxNzIuMjQuMC4yOjkyMDAiXSwiZmdyIjoiZTQzNTQyMWJlNTRiMGM2ZGJjYWU1M2NlNDBjMWQwYTFhNWM3YWRmMmEzZTJlZTc2OTQyMjc3YTZhYzdjZDBlNyIsImtleSI6IjR1SG9GSDhCYVhsVEQ2N1U4QlBuOjRkNDduNmd5UUFTcHBvWG5zbjNUckEifQ==" -e ES_JAVA_OPTS="-Xms1g -Xmx1g" --name es-node03 --net elastic -it docker.elastic.co/elasticsearch/elasticsearch:8.0.0
我们再次运行上面的命令来进行查看:
$ curl --insecure --user elastic:qTfj3Vfm+6RT1VrCbmwV https://localhost:9200/_cat/nodes
172.24.0.4 54 55 15 1.41 0.42 0.17 cdfhilmrstw - c689910d1448
172.24.0.3 34 55 5 1.41 0.42 0.17 cdfhilmrstw - 3f97cfe38a4e
172.24.0.2 60 55 5 1.41 0.42 0.17 cdfhilmrstw * 2b7bdc81eb56
这个时候,我们可以看到有三个节点的集群。
接下来启动 Kibana:
docker run -e SERVER_PUBLICBASE_URL="http://liuxg.com:5601" --name kib-01 --net elastic -p 5601:5601 -it docker.elastic.co/kibana/kibana:8.0.0
在上面,我定义了 SERVER_PUBLICBASE_URL,尽管这个是不必要的。你需要在你的电脑中的 /etc/hosts 进行定义喜欢的域名。

它输出一个链接 http://0.0.0.0:5601/?code=038556 让我们在浏览器中输入:

上面的 enrollment token 在第一个 Elasticsearch 启动后的有效时间为30分钟。超过30分钟的时间上述 token 将会无效。如果这种情况发生,我们可以可以使用如下的方法来生成一个新的 token:

同样地节点 enrollment token 的有些时间也是30分钟,你可以使用如下的方法来进行生成:
bin/elasticsearch-create-enrollment-token -s node

接下来在 Kibana 的界面输入我们之前的 elastic 用户的密码:

这样我们就进入到 Kibana 的界面。我们可以通过如下的方法来查看创建的三个节点的集群:

创建多个节点的集群 - Elastic Stack 8.0的更多相关文章
- 仅需60秒,使用k3s创建一个多节点K8S集群!
作者: Dawid Ziolkowski丨Container Solution云原生工程师 最近,我一直在Kubernetes上进行各种测试和部署.因此,我不得不一次又一次创建和销毁Kubernete ...
- 实战weblogic集群之创建节点和集群
一.启动weblogic,访问控制台 weblogic的domain创建完成后,接下来就可以启动它,步骤如下: $ cd /app/sinova/domains/base_domain/bin $ . ...
- 使用Vagrant创建多节点虚拟机集群
摘要: 在前一篇博客中,我介绍了使用Vagrant快速创建虚拟机,但是所创建的只是单个虚拟机.这篇博客将介绍使用Vagrant创建多节点虚拟机集群,可以作为Hadoop,Spark以及Storm等分布 ...
- Elasticsearch之重要核心概念(cluster(集群)、shards(分配)、replicas(索引副本)、recovery(据恢复或叫数据重新分布)、gateway(es索引的持久化存储方式)、discovery.zen(es的自动发现节点机制机制)、Transport(内部节点或集群与客户端的交互方式)、settings(修改索引库默认配置)和mappings)
Elasticsearch之重要核心概念如下: 1.cluster 代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.es的一个概念就是 ...
- 理解 OpenStack Swift (1):OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置
本系列文章着重学习和研究OpenStack Swift,包括环境搭建.原理.架构.监控和性能等. (1)OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置 ( ...
- docker swarm英文文档学习-6-添加节点到集群
Join nodes to a swarm添加节点到集群 当你第一次创建集群时,你将单个Docker引擎置于集群模式中.为了充分利用群体模式,可以在集群中添加节点: 添加工作节点可以增加容量.当你将服 ...
- hadoop入门手册1:hadoop【2.7.1】【多节点】集群配置【必知配置知识1】
问题导读 1.说说你对集群配置的认识?2.集群配置的配置项你了解多少?3.下面内容让你对集群的配置有了什么新的认识? 目的 目的1:这个文档描述了如何安装配置hadoop集群,从几个节点到上千节点.为 ...
- kafka系列二:多节点分布式集群搭建
上一篇分享了单节点伪分布式集群搭建方法,本篇来分享一下多节点分布式集群搭建方法.多节点分布式集群结构如下图所示: 为了方便查阅,本篇将和上一篇一样从零开始一步一步进行集群搭建. 一.安装Jdk 具体安 ...
- 使用Minikube运行一个本地单节点Kubernetes集群(阿里云)
使用Minikube运行一个本地单节点Kubernetes集群中使用谷歌官方镜像由于某些原因导致镜像拉取失败以及很多人并没有代理无法开展相关实验. 因此本文使用阿里云提供的修改版Minikube创建一 ...
随机推荐
- 温湿度监测系统设计:基于 STM32 的温湿度变送器的设计与实现
前言:这个是2018年上半年完成的,这里只贴出硬件设计部分,软件设计部分可以看上位机说明书. 设计总说明 随着科学技术的不断发展,高集成度.高精度.高可靠性的一体化温湿度变送器开始 得到广泛的应用.同 ...
- go-zero微服务实战系列(十、分布式事务如何实现)
在分布式应用场景中,分布式事务问题是不可回避的,在目前流行的微服务场景下更是如此.比如在我们的商城系统中,下单操作涉及创建订单和库存扣减操作两个操作,而订单服务和商品服务是两个独立的微服务,因为每个微 ...
- .NET自定义认证虽然简单,但好用
前言 有这样一种场景,就是新项目已经集成了认证中心,或者是都用了统一的认证方式(比如现在常用的JWT),这样对于项目之间的对接就显得比较方便,至少在认证这块还是能减少一些工作量的.但当上线的老项目需要 ...
- 关于webapi调用wcf并发假死的分析
原来IDFA(IOS推广获取到用户IOS手机的唯一标识,如果不刷机的话跟安卓的IMEI一样)在公司正常的页面是公用用一个网站和数据库的. 起初怀疑并发数太多,把数据库连接池的数量从一百设置到三百,确实 ...
- Solution -「BZOJ3894」文理分科
Sol. 说实话,对于一个初学者,这道题很难看出是一道网络流-最小割.对于一个熟练者,这是比较套路的一种模型. 最小割,可以看做是在一个图中删掉最小的边权和使得源点.汇点不连通.或者换一个角度,可以看 ...
- AtCoder Beginner Contest 260 E // 双指针 + 差分
题目传送门:E - At Least One (atcoder.jp) 题意: 给定大小为N的两个数组A,B,求长度分别为1~M的满足以下条件的连续序列数量,条件为: 对于每个i(从1~N),Ai和B ...
- 线程本地存储 ThreadLocal
线程本地存储 · 语雀 (yuque.com) 线程本地存储提供了线程内存储变量的能力,这些变量是线程私有的. 线程本地存储一般用在跨类.跨方法的传递一些值. 线程本地存储也是解决特定场景下线程安全问 ...
- Docker 08 部署Elasticsearch
参考源 https://www.bilibili.com/video/BV1og4y1q7M4?spm_id_from=333.999.0.0 https://www.bilibili.com/vid ...
- Java SE 9 新增特性
Java SE 9 新增特性 作者:Grey 原文地址: Java SE 9 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_ ...
- mongo数据同步的三种方案
(一)直接复制data目录(需要停止源和目标的mongo服务)1.针对目标mongo服务已经存在,并正在运行的(mongo2-->mongo).执行步骤:(1).停止源/目标服务器的mongo服 ...