跨集群搜索(cross-cluster search)使你可以针对一个或多个远程集群运行单个搜索请求。 例如,你可以使用跨集群搜索来筛选和分析存储在不同数据中心的集群中的日志数据。

示例 :在一个集群里访问多个云厂商所提供的集群,并对跨数据的数据进行搜索,如下图:

如上面所述,当 client 向集群 cluster_1 发送请求时,它可以搜索自己本身的集群,同时也可以向另外的两个集群 cluster_2 及 cluster_3 发送请求。最后的结果由 cluster_1 返回给客户端。

CCS方案:

  • 每个采集渠道采集的数据可以位于不同的 Elasticsearch 中。从上面的结构中,它比较简单,直接。我们可以通过 CCS 的运用,可以同时针对几个集群进行搜索,并在搜索集群中得到最终的结果。

目前支持的 APIs:

跨集群搜索例子


1、注册 remote cluster: 要执行跨集群搜索,必须至少配置一个远程集群。在群集设置中配置了远程群集

  • 使用 cluster.remote 属性
  • 种子(seeds)是远程集群中的节点列表,用于在注册远程集群时检索集群状态

以下 cluster update settings API请求添加了三个远程集群:cluster_one,cluster_two 和 cluster_three

 1 PUT _cluster/settings
2 {
3 "persistent": {
4 "cluster": {
5 "remote": {
6 "cluster_one": {
7 "seeds": [
8 "127.0.0.1:9300"
9 ]
10 },
11 "cluster_two": {
12 "seeds": [
13 "127.0.0.1:9301"
14 ]
15 },
16 "cluster_three": {
17 "seeds": [
18 "127.0.0.1:9302"
19 ]
20 }
21 }
22 }
23 }
24 }

动手实践


1、安装两个集群:cluster 1及cluster 2。它们位于同一个网络内,可以互相访问;安装好集群的 Elasticsearch 及 Kibana

2、搜索配置: 在 kibana_2,也既是端口地址为 5602 的 Kibana。打入如下的命令:

 1 PUT _cluster/settings
2 {
3 "persistent": {
4 "cluster.remote": {
5 "remote_cluster": {
6 "seeds": [
7 "127.0.0.1:9300"
8 ]
9 }
10 }
11 }

在 cluster_2 里配置可以连接到 cluster_1 的这样设置。因为 cluster_1 的 transport 口地址是 9300

  • 命令来检查我们的连接状态:GET _remote/info

在 Kibana_1 中创建 twitter 索引并插入数据;在 cluster_2 上如何对这个进行搜索呢?

在 Kibana_2 里,打入如下的命令:GET remote_cluster:twitter/_search

如果你配置了多个 remote 索引,可以使用如下的方法来进行搜索:  GET *:twitter/_search

使用 *:twitter 来表示所有 remote cluster里含有 twitter 的集群

Flag:

  • 关注跨云厂商多集群访问 (用华为云与Azure日志进行验证)

参考资料:


ES_CCS/R(二):跨集群搜索 Cross-cluster search (CCS)的更多相关文章

  1. Elasticsearch跨集群搜索(Cross Cluster Search)

    1.简介 Elasticsearch在5.3版本中引入了Cross Cluster Search(CCS 跨集群搜索)功能,用来替换掉要被废弃的Tribe Node.类似Tribe Node,Cros ...

  2. Elasticsearch:跨集群搜索 Cross-cluster search (CCS)

    转载自:https://blog.csdn.net/UbuntuTouch/article/details/104588232 跨集群搜索(cross-cluster search)使您可以针对一个或 ...

  3. Elasticsearch 搜索模块之Cross Cluster Search(跨集群搜索)

    Cross Cluster Search简介 cross-cluster search功能允许任何节点作为跨多个群集的federated client(联合客户端),与tribe node不同的是cr ...

  4. Elasticsearch:跨集群搜索 Cross-cluster search(CCS)及安全

    文章转载自:https://elasticstack.blog.csdn.net/article/details/116569527

  5. ES cross cluster search跨集群查询

    ES 5.3以后出的新功能.测试demo如下: 下载ES 5.5版本,然后分别本机创建2个实例,配置如下: cluster.name: xx1 network.host: 127.0.0.1 http ...

  6. elasticsearch跨集群数据迁移

    写这篇文章,主要是目前公司要把ES从2.4.1升级到最新版本7.8,不过现在是7.9了,官方的文档:https://www.elastic.co/guide/en/elasticsearch/refe ...

  7. Elasticsearch(二)--集群原理及优化

    一.ES原理 1.索引结构ES是面向文档的 各种文本内容以文档的形式存储到ES中,文档可以是一封邮件.一条日志,或者一个网页的内容.一般使用 JSON 作为文档的序列化格式,文档可以有很多字段,在创建 ...

  8. 实现Kubernetes跨集群服务应用的高可用

    在Kubernetes 1.3版本,我们希望降低跨集群跨地区服务部署相关的管理和运营难度.本文介绍如何实现此目标. 注意:虽然本文示例使用谷歌容器引擎(GKE)来提供Kubernetes集群,您可以在 ...

  9. SqlServer跨集群升级

    SqlServer跨集群升级 1.新Server的IP要和旧的在同一网段. 2.安装SQL SERVER(注意:排序要和以前的一样,更改TempDB位置) 3.开启防火墙,并打开1433和5022端口 ...

  10. Hadoop跨集群迁移数据(整理版)

    1. 什么是DistCp DistCp(分布式拷贝)是用于大规模集群内部和集群之间拷贝的工具.它使用Map/Reduce实现文件分发,错误处理和恢复,以及报告生成.它把文件和目录的列表作为map任务的 ...

随机推荐

  1. quartus之rom的IP测试

    quartus之rom的IP测试 1.rom的作用 rom,就是只读存储器,内部数据在下载电路时就已经确认,不能使用信号驱动更改,只能够读取,一般用于比较重要的配置数据.在quartus中,可以直接调 ...

  2. 06 PSP成熟度模型【软件过程与管理】

    PSP成熟度模型(Personal Software Process) 个体度量过程 PSP3 周期开发 个体计划过程 PSP2 代码评审 设计评审 PSP2.1 设计模板 个体质量管理过程 PSP1 ...

  3. Scala 可变列表ListBuffer

    1 package chapter07 2 3 import scala.collection.mutable.ListBuffer 4 5 object Test05_ListBuffer { 6 ...

  4. Spring框架之控制反转IoC(Inversion of Control)的理解

    简单理解: 控制反转就是将代码的调用权(控制权)从调用方转移给被调用方(服务提供方). 解释一下: 如果我们需要创建某个类,就需要程序员去修改代码,然后才可以得到想要的类.反转的意思就是不需要程序员去 ...

  5. GeminiDB Cassandra接口新特性FLASHBACK发布:任意时间点秒级闪回

    本文分享自华为云社区<GeminiDB Cassandra接口新特性FLASHBACK发布:任意时间点秒级闪回>,作者: GaussDB 数据库. 技术背景 数据库作为现代信息系统的核心组 ...

  6. 浅谈JVM整体架构与调优参数

    本文分享自华为云社区<[性能优化]JVM整体架构与调优参数说明>,作者: 冰 河. JVM的分类 这里,我们先来说说什么是VM吧,VM的中文含义为:虚拟机,指的是使用软件的方式模拟具有完整 ...

  7. 18 JavaScript中的三元运算

    18 JavaScript中的三元运算 先来看一个例子: let a = 10; let b = 20; let d = a > b? a: b console.log(d); // 20 三元 ...

  8. 直播预告丨 OpenHarmony 标准系统多媒体子系统之相机解读

    5 月 26日(周四)晚上 19 点,OpenHarmony 开源开发者成长计划知识赋能第五期"掌握 OpenHarmony 多媒体的框架原理"的第六节直播课,即将开播! 深开鸿资 ...

  9. Docker学习路线9:运行容器

    要启动一个新的容器,我们使用 docker run 命令,后跟镜像名称.基本语法如下: docker run [选项] 镜像 [COMMAND] [ARG...] 例如,要运行官方的 Nginx 镜像 ...

  10. 基于 Java 编程生成二维码图片

    0x01 准备 (1)软件版本 IntelliJ IDEA 2023.1.3 JDK 18 Tomcat 10.1.11 Maven 3.8.6 (2)技术栈 servlet zxing 谷歌项目 生 ...