首页
/ Elastic Cloud on Kubernetes 资源使用情况报告功能增强

Elastic Cloud on Kubernetes 资源使用情况报告功能增强

2025-06-29 11:01:50作者:廉彬冶Miranda

背景介绍

Elastic Cloud on Kubernetes (ECK) 是 Elastic 公司提供的 Kubernetes Operator,用于在 Kubernetes 集群上部署和管理 Elastic Stack 的各种组件。在当前的实现中,ECK 会收集并向用户报告资源使用情况的汇总数据,但缺乏按管理应用程序细分的详细数据。

当前实现的问题

目前 ECK 的资源使用报告仅提供总量信息,包括:

  • 总管理内存(以 GiB 和字节为单位)
  • 企业资源单位(ERU)数量
  • 最大企业资源单位限制
  • 许可证级别和到期日期

这种汇总级别的报告存在局限性,特别是当用户需要根据不同的许可协议条款来区分不同组件的资源使用时。例如,某些用户的许可协议可能不包括 Logstash 组件的资源使用,但当前的汇总报告无法让用户明确区分哪些组件被计入了总量。

功能增强方案

经过社区讨论,决定在现有功能基础上增加按应用程序细分的资源使用报告。主要变更点包括:

  1. 数据结构调整

    • 保持现有 ConfigMap 存储方式(elastic-licensing)
    • 新增各应用程序的内存使用字段
    • 统一使用字节作为基本单位
  2. 新增字段

    • managed_elasticsearch_memory_bytes
    • managed_kibana_memory_bytes
    • managed_apm_server_memory_bytes
    • managed_enterprise_search_memory_bytes
    • managed_logstash_memory_bytes
  3. 保持兼容性

    • 保留原有的 total_managed_memory(GiB 单位)
    • 保留 total_managed_memory_bytes(字节单位)

技术实现考量

  1. 数据粒度选择

    • 采用应用程序级别的汇总数据而非单个实例数据
    • 平衡了信息详细度和数据复杂度
  2. 单位统一

    • 新字段统一使用字节为单位
    • 保持原有 GiB 单位的总量字段以维持向后兼容
  3. 性能影响

    • 新增字段的计算不会显著增加系统开销
    • 数据收集频率保持不变

用户价值

这一增强功能为用户带来了以下好处:

  1. 许可合规透明化

    • 用户可以清楚了解哪些组件被计入许可计算
    • 便于核对与许可协议的符合性
  2. 资源使用分析

    • 可以分析各组件在集群中的资源占比
    • 为容量规划提供更详细的数据支持
  3. 成本优化

    • 识别资源使用大户
    • 针对特定组件进行优化

未来展望

这一改进为 ECK 的资源报告功能奠定了基础,未来可以考虑:

  • 增加 CPU 资源的细分报告
  • 提供历史使用趋势数据
  • 增加自定义资源使用阈值告警功能

这一功能增强已在 ECK v2.14.0 版本中实现,为用户提供了更透明、更详细的资源使用情况报告。

登录后查看全文
热门项目推荐
相关项目推荐