我们有一些在 AWS 中使用kops部署的 Kubernetes 集群。
我们真的很喜欢使用上游/官方图像。
我们一直想知道是否有一种无需直接在主机上安装软件即可监控系统的好方法?是否有可以从主机中提取信息的 docker 容器?我认为我们可能关心的是:
- 磁盘空间(这似乎是通过 docker via
df
- 主机 CPU 利用率
- 主机内存利用率
此主机/节点级别信息是否已通过 heapster 提供?
我们有一些在 AWS 中使用kops部署的 Kubernetes 集群。
我们真的很喜欢使用上游/官方图像。
我们一直想知道是否有一种无需直接在主机上安装软件即可监控系统的好方法?是否有可以从主机中提取信息的 docker 容器?我认为我们可能关心的是:
df
此主机/节点级别信息是否已通过 heapster 提供?
我正在使用https://prometheus.io/,它与 kubernetes 很自然。
Kubernetes api已经公开了一堆prometheus格式的metrics, https://github.com/kubernetes/ingress-nginx也公开了prometheus metrics(enable-vts-status: "true"),也可以安装https:// github.com/prometheus/node_exporter作为一个守护进程来监控 CPU、磁盘等...
我在集群内部安装了一个 prometheus 来监控内部指标,在集群外部安装一个来监控 LB 和 URL。两者都将警报发送到必须位于集群外部的同一个https://github.com/prometheus/alertmanager 。
我花了大约一周的时间来正确配置所有内容。这是值得的。
不是关于 kops 的问题,而是关于操作 Kubernetes 的问题。kops 在拥有一个功能性的 k8s 集群时停止。您有网络、DNS 和节点已加入集群。从那里你的世界就是你的牡蛎。
使用 k8s 进行监控有许多不同的选项。如果您是一个小团队,我通常建议将监控和日志记录卸载到提供商。
如果您是一个更大的团队或有更具体的需求,那么您可以查看 Prometheus 等选项。在https://github.com/kubernetes/charts存储库中四处寻找,因为我知道那里有一个 Prometheus 图表。
与任何形式的基础设施的任何部署一样,您将需要日志记录、监控和指标。另外,不要忘记监控监控;)