容器可观测-如何为 K8s 中的所有事件提供可观测能力|学习笔记

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 快速学习容器可观测-如何为 K8s 中的所有事件提供可观测能力

开发者学堂课程【5分钟玩转阿里云容器服务容器可观测-如何为 K8s 中的所有事件提供可观测能力】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/1038/detail/16077


容器可观测-如何为 K8s 中的所有事件提供可观测能力


内容介绍:

一.ACK 可观测体系概述

二.事件中心

三.ACK 日志中心


一.ACK 可观测体系概述

容器服务的可观测体系 logging 部分,包含事件中心、日志中心

ACK 集群中的事件体系包含了非常成熟的事件体系,提供了应用生命周期的事件以及 CGroup 层的事件。

image.png

ACK 可观测体系在社区的事件体系之上,从表层到底层都进行了覆盖和增强,对容器场景的可观测事件体系进行了全覆盖,从上到下分别是:应用层的异常、集群管控操作的重要事件、集群 control plane 核心组建的异常。


二.事件中心

image.png

如此复杂的 ACK 事件体系,用户只需要开启 ACK 事件中心的产品功能,即可在 ACK 控制台中获得开箱即用的事件监控能力,且 ACK 事件中心数据将持久化,从默认集群中只保留最近1小时,延长至默认保留最近90天。

开启 ACK 事件中心后,在 ACK 集群控制台运维管理事件中心中,从事件总览、事件查询、节点事件和 Pod 事件监控等多个视角的入口,进入 ACK 事件中心。

image.png

ACK 事件中心提供强大、灵活易用的分析能力,可以快速监控查看用户集群中的异常事件。

如图,该集群中正发生一个应用的 OOM (out of memory)事件,以及近期部署应用时发生镜像拉取失败、驱逐等异常,这里也会展示其他集群重要的异常事件和统计分布。

image.png

在节点事件页面中,可以查看一个节点生命周期中的事件,如图可以看到此节点出现重启、磁盘压力报警及最终磁盘不可用导致节点下线的情况。

image.png

在 Pod 事件监控中,可以以一个特定 Pod 的视角看到这个 Pod 的生命周期发生的所有事件,在 demo 中的 Pod 从被集群调度到拉取镜像,镜像拉取成功,最终 Pod 启动,启动后出现 Pod OOM,然后反复重启,最终 Pod BackOff, ACK 事件中心也提供 control plane 核心组件的异常事件视角,可以查看集群的核心组件、重要的 Addon 异常事件等。

image.png


三.ACK 日志中心

ACK 日志中心包含预置的 Ingress 流量日志大盘、审计日志以及云原生的方式快速接入用户应用日志的能力。

image.png

1、Ingress 大盘

在 ACK 集群控制台中,从网络-路由页面进入 Ingress 的配置,可以看到此次唯有 Ingress 的配置,从右上角 Ingress 概览,可进入 Ingress 流量大盘。

在 Ingress 流量大盘中,可以看到用户 Ingress 流量请求的 pv/uv 统计、各种错误返回的状态和统计,以及更详细的流量访问情况。

image.png

2、审计日志

在 ACK 集群控制台安全管理集群审计中,开通并进入审计中心,可以详细的统计访问此集群资源的审计情况,包括对资源的创建、更改、删除对应的操作事件,追溯集群操作的来源网域和集群被从公网访问的次数

image.png

操作详情与详情列表可以看到这个集群中资源操作的具体审计情况,如图:

第二行可以看到 deployment 部署 demo 的详细执行情况,以及发起操作的来源 IP

image.png

3、ACK 日志中心

ACK 日志中心提供集群日志、集群的 control plane 核心组件日志,可以在左侧运维管理中心中查看,用户也可使用云原生的方式在应用中打上 annotation 即可上报 Pod 中的日志到 ACK 日志中心,即可快速的通过白屏化的方式进行操作,如图:

对 arms - springboot - demo 这一 deployment 进行编辑,在日志服务中配置采集日志的标准输出(log store)、采集的日志路径或者是标准输出 stdout ,编辑即可完成此应用的 Pod 日志的上报,日志中心的应用日志中,即可看到并选择此日志。

查看此 Pod 上报的日志数据,用户在此可以通过强大灵活的 SLS 、SQL 对语句进行自定义的查询,快速的实现问题排查与故障定位。

image.png

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
21天前
|
Kubernetes 调度 Docker
深入探讨容器编排技术:从Docker到Kubernetes
容器编排在现代IT中日益关键,从Docker到Kubernetes,助力应用的自动化部署和扩展。Docker提供容器技术,打包应用及环境为镜像,通过引擎、镜像、容器、网络和存储组件实现隔离运行。Kubernetes作为高级容器编排平台,管理Pod(多容器集合),其核心包括API服务器、控制器管理器、调度器和Kubelet。Kubernetes集群由Master和Worker节点构成,实现Pod的高效调度和运行。
|
14天前
|
存储 Kubernetes C++
【专栏】Kubernetes VS Docker Swarm了解两者特点,助力选取合适容器编排工具
【4月更文挑战第27天】对比Kubernetes和Docker Swarm:K8s在可扩展性和自动化方面出色,有强大社区支持;Swarm以简易用著称,适合初学者。选择取决于项目需求、团队技能和预期收益。高度复杂项目推荐Kubernetes,快速上手小项目则选Docker Swarm。了解两者特点,助力选取合适容器编排工具。
|
2天前
|
Kubernetes Java 调度
Java容器技术:Docker与Kubernetes
Java容器技术:Docker与Kubernetes
12 0
|
16天前
|
运维 Kubernetes Linux
10分钟搭建Kubernetes容器集群平台(kubeadm)
10分钟搭建Kubernetes容器集群平台(kubeadm)
|
16天前
|
Kubernetes Ubuntu Linux
Kubernetes(K8S)集群管理Docker容器(部署篇)
Kubernetes(K8S)集群管理Docker容器(部署篇)
|
16天前
|
存储 Kubernetes Docker
Kubernetes(K8S)集群管理Docker容器(概念篇)
Kubernetes(K8S)集群管理Docker容器(概念篇)
|
17天前
|
Kubernetes Ubuntu Docker
Kubernetes(K8S v1.1版本) 集群管理Docker容器之部署篇
Kubernetes(K8S v1.1版本) 集群管理Docker容器之部署篇
|
26天前
|
存储 运维 Kubernetes
构建高效稳定的容器化运维环境:Docker与Kubernetes的协同
【4月更文挑战第14天】 在当今快速发展的云计算时代,容器技术以其轻量级、快速部署和易于管理的优势,成为现代应用交付的标准。本文将深入探讨如何通过Docker和Kubernetes的整合使用来构建一个高效且稳定的容器化运维环境。我们将分析Docker容器的基本概念,探索Kubernetes在容器编排方面的强大能力,以及两者结合所带来的益处。文章还将讨论在实际部署中可能遇到的挑战,并提出相应的解决方案。
|
28天前
|
JSON Kubernetes Go
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
36 0
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
|
2天前
|
Kubernetes Java API
Kubernetes详解(三)——Kubernetes集群组件
Kubernetes详解(三)——Kubernetes集群组件
12 1

相关产品

  • 容器服务Kubernetes版