前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【日志服务CLS】容器服务TKE审计日志运维场景体验

【日志服务CLS】容器服务TKE审计日志运维场景体验

原创
作者头像
日志服务CLS小助手
发布2021-12-03 12:08:55
1.4K0
发布2021-12-03 12:08:55
举报
文章被收录于专栏:日志服务CLS日志服务CLS

作者:v神

导语:云原生日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志数据解决平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。

相信广大k8s用户在日志集群运维中都曾经遇到过:

  • 集群中的某个应用被删除了,谁干的?
  • Apiserver的负载突然变高,大量访问失败,集群中到底发生了什么?
  • 集群节点被封锁了,是谁在什么时候操作的?

以前,排查这些问题,对客户来说并不容易。生产环境中的Kubernetes集群通常是一个相当复杂的系统,底层是各种异构的主机、网络、存储等云基础设施,上层承载着大量的应用负载,中间运行着各种原生(例如:Scheduler、Kubelet)和第三方(例如:各种Operator)的组件,负责对基础设施和应用进行管理和调度; 此外不同角色的人员频繁地在集群上进行部署应用、添加节点等各种操作。

现在,Kubernetes审计日志(Audit)正是帮助用户快速解决这些问题的重要工具。

什么是审计日志

在Kubernetes中,所有对集群状态的查询和修改都是通过向Apiserver发送请求,而审计日志是Kube-apiserver产生的可配置策略的结构化日志,记录了对Apiserver的访问事件。通过查看、分析审计日志,可以追溯对集群状态的变更;了解集群的运行状况;排查异常;发现集群潜在的安全、性能风险等等。

审计日志字段说明

每一条审计日志都是一个JSON格式的结构化记录,包括元数据(metadata)、请求内容(requestObject)和响应内容(responseObject)3个部分。其中元数据一定会存在,请求和响应内容是否存在取决于审计级别。元数据包含了请求的上下文信息,例如谁发起的请求,从哪里发起的,访问的URI等等。

审计日志字段说明
审计日志字段说明

如何使用审计日志去排查问题

日志服务CLS提供针对kubernetes审计日志的一站式服务,包含采集,存储,检索分析能力。用户仅需一键开启集群审计日志功能,即可获取开箱即用的审计日志可视化分析仪表盘。通过可视化的图表,用户可以轻松通过控制台解决大多数常见的运维问题,下面就让我们一起看看如何使用。

前提条件:用户购买TKE容器服务,开启集群审计日志,请参考操作指南

场景1:集群中的某个应用被删除了,谁干的?

进入TKE容器服务控制台,点击左侧菜单中【集群运维】>【审计检索】。

在【审计检索】页面中单击单击【K8S对象操作概览】标签,指定操作类型为delete和资源对象。

K8S对象操作概览
K8S对象操作概览

查询结果如下图所示:

K8S对象操作查询结果
K8S对象操作查询结果

由图可见,是 10001****7138 这个帐号,对应用「nginx」进行了删除。可根据帐号ID在【访问管理】>【用户列表】中找到关于此账号的详细信息。

场景2:Apiserver的负载突然变高,大量访问失败,集群中到底发生了什么?

在【审计检索】的【聚合检索】标签页中,提供了从用户、操作类型、返回状态码等多个维度对于Apiserver访问聚合趋势图。

操作用户分布趋势统计
操作用户分布趋势统计
操作类型分布趋势统计
操作类型分布趋势统计
状态码分布趋势统计
状态码分布趋势统计

通过以上图表得知,用户tke-kube-state-metrics的访问量远高于其他用户,并且在“操作类型分布趋势”图中可以看出大多数都是list操作,在“状态码分布趋势”图中可以看出,状态码大多数为403,根据tke-kube-state-metrics关键词,检索日志。

关键词检索结果页面
关键词检索结果页面

结合业务日志可知,由于RBAC鉴权问题导致tke-kube-state-metrics组件不停的请求Apiserver重试,导致Apiserver访问剧增。

场景3:集群节点被封锁了,是谁在什么时候操作的?

在【审计检索】页面中,单击【节点操作概览】标签,填写被封锁的节点名。

节点操作概览
节点操作概览

查询结果如下图所示:

封锁操作查询结果页面
封锁操作查询结果页面

由图可见,是10001****7138这个帐号在2020-1-30T06:22:18时对172.16.18.13这台节点进行了封锁操作。


以上就是本期TKE审计日志玩法分享,如果您有更多有意思的日志实践,欢迎投稿分享!

一站式日志数据解决方案平台
一站式日志数据解决方案平台

往期文章:

【日志服务CLS】Nginx日志数据全方位大解析

对象存储COS访问日志场景体验

【日志服务CLS】腾讯云日志服务CLS接入内容分发网络CDN

【日志服务CLS】应用TKE事件日志排查异常场景体验

CLB运维&运营最佳实践 ---访问日志大洞察

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是审计日志
    • 审计日志字段说明
    • 如何使用审计日志去排查问题
      • 场景1:集群中的某个应用被删除了,谁干的?
        • 场景2:Apiserver的负载突然变高,大量访问失败,集群中到底发生了什么?
          • 场景3:集群节点被封锁了,是谁在什么时候操作的?
          相关产品与服务
          日志服务
          日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档