Kubernetes集群监控指南

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 本文讲的是Kubernetes集群监控指南【编者的话】本文讨论了 Kubernetes 对运维监控的改变,以及我们应该如何合理得监控一个由 Kubernetes 编排的容器化基础设施。
本文讲的是Kubernetes集群监控指南【编者的话】本文讨论了 Kubernetes 对运维监控的改变,以及我们应该如何合理得监控一个由 Kubernetes 编排的容器化基础设施。

【3 天烧脑式容器存储网络训练营 | 深圳站】本次培训以容器存储和网络为主题,包括:Docker Plugin、Docker storage driver、Docker Volume Pulgin、Kubernetes Storage机制、容器网络实现原理和模型、Docker网络实现、网络插件、Calico、Contiv Netplugin、开源企业级镜像仓库Harbor原理及实现等。

容器技术正在风靡基础设施世界,但是容器在解决或者说简化基础设施管理的过程中,也明显得增加了编排的复杂度。这就是  Kubernetes  来解救我们的地方。正如指挥家指挥乐队一样,Kubernetes 监控容器集合:自动启动、停止、创建,以及删除容器,确保应用持续工作。

Kubernetes 通过创建抽象层,比如  pods  和  services ,来简化容器化设施的管理。我们不再需要担心容器运行在哪里,或者它们是否有足够资源来运行。但是这仍然无法改变一个事实,即为了确保高性能,我们需要监控我们的应用,运行在其内的容器,以及 Kubernetes 本身。

Kubernetes 时代针对监控的重新思考

就像容器已经完全转变了我们思考如何在虚拟机上运行服务的方式,Kubernetes 也改变了我们和容器交互的方式。好消息是,只要有合适的监控,Kubernetes 固有的抽象层就会对你的设备提供综合视图,即使容器和应用在经常移动。但是 Kubernetes 的监控也要求我们重新思考和调整我们的策略,因为它和监控传统的主机比如虚机和物理机有好多方面的不同。

tags 和 labels 变得非常重要

容器及其编排完全由 Kubernetes 来管理之后,labels 成了当前我们和 pod 以及容器交互的唯一方式。这就是它们对监控绝对重要的原因,因为你的设备的跨不同层次抽象的所有的度量和事件都将使用  labels  来切片。用有逻辑且易于理解的方式来定义labels非常重要,这样你的度量才可能有用。

有更多组件需要监控

传统的以主机为中心的设施,我们习惯于在两个层次监控:应用以及运行它们的主机。现在由于容器处在中间层,以及 Kubernetes 本身也需要监控,因此有 4 个不同的组件需要监控并且搜集度量信息。
pasted_image_0.png

应用一直处于移动中

Kubernetes 基于调度策略动态调度应用,因此你不能总是知道应用运行在哪里。但是他们仍然需要被监控。这就是为什么在服务发现的时候,使用一个监控系统或者工具是有必要的。它将自动调整移动中的容器的度量搜集,因此应用可在不中断的情况下持续被监控。

为分布式集群做准备

Kubernetes  有能力 跨多数据中心以及潜在的不同云提供商,分发容器应用。这意味着,度量必须从所有这些不同来源中搜集并聚合。

关于所有这些新的 Kubernetes 原生的监控挑战以及如何克服它们,我们最近发布了一篇文章: 深入理解Kubernetes 监控 。这系列文章的第一部分就提到了如何在 Kubernetes 时代调整你的监控策略。

监控维度

不论你是使用  Heapster  数据还是 Kubernetes 整合的监控工具及其 API,一些关键类型的度量都需要密切跟踪。
  • 运行中的 Pod 以及对应的 deployment。
  • 常用的资源维度,比如 CPU,内存使用率,以及磁盘 I/O。
  • 容器原生的维度
  • 监控工具中服务发现特性所需要用到的基本的应用维度。

所有这些维度都需要使用 Kubernetes labels 来聚合,并使用来自 Kubernetes 以及容器技术的事件来关联。

Kubernetes 监控系类的 第二部分 指导你如何搜集和追踪所有这些你需要的数据。

搜集度量数据

不论你是想要通过组合Heapster(一个存储后端)和图形工具来追踪这些关键性能维度,还是使用你自己的设备的不同组件来集成监控工具,关于 Kubernetes 度量搜集的 第三部分 内容,你都有必要看一下。

出发吧!

使用 Kubernetes 彻底简化了容器的管理。但是他要求我们在多方面重新思考我们的监控策略,并且确保所有来自不同组件的这些关键维度都能被合理地搜集、聚合及追踪。我们希望我们的监控指南能帮你有效监控你的 Kubernetes 集群。 回馈和建议 不胜欢迎。

原文链接:Kubernetes : a monitoring guide (翻译:池剑锋)

原文发布时间为:2017-05-30

本文作者:池剑锋

本文来自云栖社区合作伙伴Dockerone.io,了解相关信息可以关注Dockerone.io。

原文标题:Kubernetes集群监控指南

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
6天前
|
Kubernetes 监控 Cloud Native
Kubernetes集群的高可用性与伸缩性实践
Kubernetes集群的高可用性与伸缩性实践
27 1
|
27天前
|
JSON Kubernetes 容灾
ACK One应用分发上线:高效管理多集群应用
ACK One应用分发上线,主要介绍了新能力的使用场景
|
28天前
|
Kubernetes 持续交付 开发工具
ACK One GitOps:ApplicationSet UI简化多集群GitOps应用管理
ACK One GitOps新发布了多集群应用控制台,支持管理Argo CD ApplicationSet,提升大规模应用和集群的多集群GitOps应用分发管理体验。
|
1月前
|
Kubernetes Cloud Native 云计算
云原生之旅:Kubernetes 集群的搭建与实践
【8月更文挑战第67天】在云原生技术日益成为IT行业焦点的今天,掌握Kubernetes已成为每个软件工程师必备的技能。本文将通过浅显易懂的语言和实际代码示例,引导你从零开始搭建一个Kubernetes集群,并探索其核心概念。无论你是初学者还是希望巩固知识的开发者,这篇文章都将为你打开一扇通往云原生世界的大门。
122 17
|
1月前
|
Kubernetes 应用服务中间件 nginx
搭建Kubernetes v1.31.1服务器集群,采用Calico网络技术
在阿里云服务器上部署k8s集群,一、3台k8s服务器,1个Master节点,2个工作节点,采用Calico网络技术。二、部署nginx服务到k8s集群,并验证nginx服务运行状态。
542 1
|
1月前
|
Kubernetes Cloud Native 流计算
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
76 3
|
1月前
|
Kubernetes Cloud Native 微服务
微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
110 1
|
1月前
|
负载均衡 应用服务中间件 nginx
基于Ubuntu-22.04安装K8s-v1.28.2实验(二)使用kube-vip实现集群VIP访问
基于Ubuntu-22.04安装K8s-v1.28.2实验(二)使用kube-vip实现集群VIP访问
55 1
|
1月前
|
Kubernetes Cloud Native Ubuntu
云原生之旅:Kubernetes集群搭建与应用部署
【8月更文挑战第65天】本文将带你进入云原生的世界,通过一步步指导如何在本地环境中搭建Kubernetes集群,并部署一个简单的应用。我们将使用Minikube和Docker作为工具,探索云原生技术的魅力所在。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和实践技巧。
|
2月前
|
存储 Kubernetes 关系型数据库
阿里云ACK备份中心,K8s集群业务应用数据的一站式灾备方案
阿里云ACK备份中心,K8s集群业务应用数据的一站式灾备方案