kubernetes - 带有 Weave CNI 插件的 AWS EKS K8s 集群不能有自定义指标
问题描述
为了解决我的 EKS 集群中默认的 AWS VPC CNI 最大 pod 数量节点限制(Max Pods = 实例类型支持的最大网络接口数)*(每个接口的 IPv4 地址) - 即 t3.medium 中的 17 个),我开始使用 Weave CNI 插件来克服这个限制。
这带来了一个警告,如果您有一个应用程序或容器在覆盖网络中运行,并且 Kubernetes 主节点/API 需要与之通信,那么它将无法工作。例如,ApiServicev1beta1.metrics.k8s.io
尝试连接到metrics-server
覆盖网络中运行的 pod,但它不会成功。一个建议的解决方案是运行metrics-server
它hostNetwork: true
工作得很好。
当我们决定使用时,我的问题就开始了custom-metrics
,prometheus-adapter
这样我们就可以从 Kafka 消费者组延迟中获得指标,用于消费者 pod 的水平自动缩放。要让 ApiServicev1beta1.custom.metrics.k8s.io
与prometheus-adapter
pod 对话,我们还必须进行设置hostNetwork: true
,但这次prometheus-adapter
不能再访问在覆盖网络中运行的 Prometheus - 我们无法将所有内容移动到主机网络!
我在这里有点死胡同。我想我可以使用一些“工具”将我需要的指标从覆盖网络 Prometheus 转发到主机网络中的另一个 Prometheus,然后由 prometheus-adapter 使用?
解决方案
问题解决了。我正在测试与 telnet 的连接性,但不知何故 wget 工作得很好。
推荐阅读
- mongodb - Mongo DB搜索查询不给出结果
- niagara-4 - 如何在 Niagara-4 中获取站点正常运行时间(开始时间)信息?
- api - 什么是合适的 woo-commerce API 来创建带有归属的订单
- c++ - 在 std::qsort 的比较函数中处理错误情况
- ruby - IO.pipe 上的 Ruby readpartial 不会引发 EOFError
- python - 我不明白为什么会发生 SettingWithCopyWarning
- html - 用同样不起作用的 flex 替换不起作用的 float
- c - C11:如何快速将char数组转换为int,然后修改int和更新char数组
- uwp - 我应该使用哪种视觉状态自适应触发方法来跨多个设备和分辨率运行 uwp 应用程序?
- react-native - 黄色警告将在 React Native 中降低应用程序性能,其持续调用无限时间(即继续调用函数)