【ES实战】治理项之索引模板相关治理

索引模板治理

文章目录

问题现象

在集群索引新建时,索引的分片比较耗时。分钟级别的检测可以捕获到red状态。可能出现影响该索引的读写。过多的分片会应该集群的稳定。

分析思路

查询集群的索引的状态和分片数量,识别索引与分片的数量是否合理。

操作步骤

  1. 查询集群中的索引看分片数量

    shell 复制代码
    GET _cat/indices?v&s=index

    prirep代表主分片数和副本分片数

  2. 查询集群中的索引分片大小是否合理

    shell 复制代码
    GET _cat/shards?v&s=index

    store 代表存储大小

  3. 通过上述发现一些不合理的索引有规律性(由索引模板应用而来)

    查看模板列表

    shell 复制代码
    GET _cat/templates?v&s=name

    template代表索引名称匹配模式(6.0版本以后为index_patterns

    查询单个模板的详细配置

    shell 复制代码
    GET _template/索引模板名称

问题

  1. 如何识别索引属于那个模板生成???

    原生情况下,只能有索引名称进行模式匹配。

  2. 如何模板的版本与生成的索引之间的关系

    模板是可以变化,如果识别索引是那个状态下的模板呢

  3. 索引的数据量的变化不是很快,周期往往是半年或者一年,

    所以操作程序化的收益不大

程序化方案

索引与索引模板增加分片数校验管理

  • 索引模板管理信息中增加版本号,索引名称管理信息中增加,索引来源(模板-模板名称?模板ID?)
  • 索引模板应用的索引,由平台定时任务创建索引时,同时增加模板版本号信息。
  • 查询管理平台中由模板生成的索引,索引要求:当前月,当前日,前一月,前一日
  • 检测索引的分片设置是否合理,如果不合理(分片数过多或者过少)则由索引信息中绑定的索引模板,去查询模板的设置,如果模板设置不在合理范围则进行告警。
  • 模板生成的数据一般变化不会太大,可以对模板增加有一个检查时间,是检查超过半年或者1年的模板。

彩蛋

已知条件,知晓任务的application id

目标通过Yarn Web UI查询Task Manager日志

相关配置
  • yarn.resourcemanager.webapp.address:yarn集群的RM web地址
  • yarn.nodemanager.webapp.address:yarn集群的NM web访问地址
查询已停止的Flink任务

拼接yarn集群的RM管理web地址与ApplicationId

http://{yarn.resourcemanager.webapp.address}/cluster/app/{ApplicationId}

http://demo.com:8080/cluster/app/application_1683333308174_19078

通过上述地址,打开任务的Yarn Web UI

点击Logs超链接,跳转到Job containerlogs 选择页,浏览器的地址会发生变化,跳转到执行Job Manager的NM上。此时也可以通过地址栏知道Node Manager的yarn.nodemanager.webapp.address的值(域名端口)。

打开jobmanager.log

在日志中搜索Registering TaskManager with ResourceID

log 复制代码
2025-01-13 17:48:33,996 INFO flink-pekko.actor.default-dispatcher-19 ActiveResourceManager: Registering TaskManager with ResourceID container_e10_1683333308174_19078_01_000002(demo01:8043) (pekko.tcp://flink@demo01:31384/user/rpc/taskmanager_0) at ResourceManager

发现有一个task 的 ResourceID 是container_e10_1683333308174_19078_01_000002(容器ID),在demo01节点上执行。

此时开始拼接此task日志地址

http:{执行Task机器}:{yarn.nodemanager.webapp.address的端口}/node/containerlogs/{task的ResourceID}/{user}

举例:http://demo01:8088/node/containerlogs/container_e10_1683333308174_19078_01_000002/huatuo

此地址就可以打开taskmanager.log页面了

查询未停止的Flink任务

拼接yarn集群的RM管理web地址与ApplicationId

http://{yarn.resourcemanager.webapp.address}/cluster/app/{ApplicationId}

打开任务的Yarn Web UI

点击[ApplicationMaster]超链接,跳转到Flink的Web页面。点击导航菜单Task Managers 右侧会展示所有的Task,点击ID进行跳转至Task详细页。

在Task详细页,选择Logs栏会展示这个task的相关日志。

相关推荐
SelectDB1 小时前
易车 × Apache Doris:构建湖仓一体新架构,加速 AI 业务融合实践
大数据·agent·mcp
武子康8 小时前
大数据-241 离线数仓 - 实战:电商核心交易数据模型与 MySQL 源表设计(订单/商品/品类/店铺/支付)
大数据·后端·mysql
IvanCodes8 小时前
一、消息队列理论基础与Kafka架构价值解析
大数据·后端·kafka
武子康1 天前
大数据-240 离线数仓 - 广告业务 Hive ADS 实战:DataX 将 HDFS 分区表导出到 MySQL
大数据·后端·apache hive
洛森唛2 天前
ElasticSearch查询语句Query String详解:从入门到精通
后端·elasticsearch
字节跳动数据平台2 天前
5000 字技术向拆解 | 火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据
武子康2 天前
大数据-239 离线数仓 - 广告业务实战:Flume 导入日志到 HDFS,并完成 Hive ODS/DWD 分层加载
大数据·后端·apache hive
洛森唛3 天前
Elasticsearch DSL 查询语法大全:从入门到精通
后端·elasticsearch
字节跳动数据平台3 天前
代码量减少 70%、GPU 利用率达 95%:火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据
得物技术3 天前
深入剖析Spark UI界面:参数与界面详解|得物技术
大数据·后端·spark