【问题标题】:Analyse kubernetes pod network traffic分析 kubernetes pod 网络流量
【发布时间】:2020-05-12 18:28:59
【问题描述】:

全部,

晚点我的云提供商对数据传输收取更多费用。终于注意到其中一个 K8 吊舱有更多的数据传输。有没有办法可以找出 pod 级别的网络流量,例如我们使用原生 kubernetes 命令发送和接收的字节数?

谢谢 巴拉

【问题讨论】:

    标签: kubernetes kubernetes-ingress


    【解决方案1】:

    kubectl top 命令显示usage,而不是分配。分配是导致insufficient CPU 问题的原因。这个问题有很多关于差异的混淆。

    AFAICT,没有简单的方法可以按 pod 获取节点 CPU 分配的报告,因为在规范中请求是针对每个容器的。即使那样,这也很困难,因为.spec.containers[*].requests 可能有也可能没有limits/requests 字段。 但是有像kubectl-view-allocations这样的东西,你可以用它来探索你的 kube 资源使用和分配。它可以提供按命名空间、节点、Pod 分组并按资源名称过滤的结果。

    kubectl-view-allocations [FLAGS] [OPTIONS]
    
    FLAGS:
        -h, --help         Prints help information
        -z, --show-zero    Show lines with zero requested and zero limit and zero allocatable
        -V, --version      Prints version information
    
    OPTIONS:
        -g, --group-by <group-by>...              Group informations (hierarchicaly) (default: -g resource -g node -g pod)
                                                  [possible values: resource, node, pod]
        -n, --namespace <namespace>               Show only pods from this namespace
        -r, --resource-name <resource-name>...    Filter resources shown by name(s), by default all resources are listed
    

    在您的情况下,我认为最安全的选择是安装Heapstermetrics-servercAdvisorGrafana

    Heapster 为 Kubernetes(版本 v1.0.6 及更高版本)以及包含它的平台启用容器集群监控和性能分析。

    Heapster 收集和解释各种信号,例如计算资源使用情况 - 使用此指标,您会发现通过特定 pod、生命周期事件等传输更多数据的问题。Heapster 支持多种数据源。

    容器指标主要通过 cAdvisor 提供。 cAdvisor (Container Advisor) 让容器用户了解他们正在运行的容器的资源使用和性能特征。它是一个正在运行的守护进程,用于收集、聚合、处理和导出有关正在运行的容器的信息。具体来说,它为每个容器保存资源隔离参数、历史资源使用情况、完整历史资源使用情况的直方图和网络统计信息。此数据由容器和机器范围导出。

    另一方面,Grafana 允许您查询、可视化、提醒和了解收集的指标,无论它们存储在哪里。创建、探索和与您的团队共享仪表板,并培养数据驱动的文化。

    看看:kubernetes-metrics,metrics-server-installation

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      • 2020-02-18
      • 1970-01-01
      • 2021-04-04
      • 2022-01-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多