在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何使用容器服务TKE集群审计排查问题

129次阅读
没有评论

共计 2209 个字符,预计需要花费 6 分钟才能阅读完成。

今天就跟大家聊聊有关如何使用容器服务 TKE 集群审计排查问题,可能很多人都不太了解,为了让大家更加了解,丸趣 TV 小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

概述

有时候,集群资源莫名被删除或修改,有可能是人为误操作,也有可能是某个应用的 bug 或恶意程序调用 apiserver 接口导致,需要找出 真凶。这时候,我们需要为集群开启审计,记录 apiserver 的接口调用,然后根据条件检索和分析审计日志来找到原因。

关于 TKE 的集群审计简介与基础操作,请参考官方文档 集群审计。因为集群审计的数据存储在日志服务,所以我们需要在日志服务控制台去对审计结果进行检索和分析,检索语法请参考 日志检索语法与规则,要进行分析就还需要写日志服务所支持的 SQL 语句,请参考 日志服务分析简介。

注:  仅适用于 TKE 集群

场景示例

下面给出一些集群审计使用场景和查询的示例。

找出是谁做的操作

如果节点被封锁了,不知道是哪个应用或人为操作的,需要查出来,可以在开启集群审计后,使用下面的语句来检索:

objectRef.resource:nodes AND requestObject:unschedulable

版面设置可以设置显示 user.username, requestObject 和 objectRef.name 三个字段,分别表示做操作的用户、请求内容以及节点名称:

从上图可以看出,是 10001****958 这个子账号在 2020-10-09 16:13:22 的时候对 main.63u5qua9.0 这台节点进行了封锁操作,我们在 访问管理 - 用户 - 用户列表 里可以根据账号 ID 找到关于这个子账号的详细信息。

如果某个工作负载被删除,想知道是谁删除的,这里以 deployments/nginx 为例来查询:

objectRef.resource:deployments AND objectRef.name: nginx  AND verb: delete

查询结果:

揪出导致 apiserver 限频的真凶

apiserver 会有默认的请求频率限制保护,避免恶意程序或 bug 导致对 apiserver 请求频率过高,使得 apiserver/etcd 负载过高,影响正常请求。如果发生了限频,我们可以通过审计来找出到底是谁在发大量请求。

如果我们通过 userAgent 来分析统计请求的客户端,首先需要修改下日志主题的键值索引,为 userAgent 字段开启统计:

通过以下 SQL 语句进行统计每种客户端请求 apiserver 的 QPS 大小:

* | SELECT CAST((__TIMESTAMP_US__ /1000-__TIMESTAMP_US__ /1000%1000) as TIMESTAMP) AS time, COUNT(1) AS qps,userAgent GROUP BY time,userAgent ORDER BY time

切换到图标分析,选择折线图,X 轴用 time,Y 轴用 qps,聚合列使用 userAgent:

可以看到查到数据了,但可能结果太多,小面板显示不下,点击添加到仪表盘,放大显示:

此例中可以看到 kube-state-metrics 这个客户端对 apiserver 请求频率远远高于其它客户端,这就找到了 真凶 是 kube-state-metrics,查看日志可以发现是因为 RBAC 权问题导致 kube-state-metrics 不停的请求 apiserver 重试,触发了 apiserver 的限频:

I1009 13:13:09.760767 1 request.go:538] Throttling request took 1.393921018s, request: GET:https://172.16.252.1:443/api/v1/endpoints?limit=500 resourceVersion=1029843735
E1009 13:13:09.766106 1 reflector.go:156] pkg/mod/k8s.io/[email protected]/tools/cache/reflector.go:108: Failed to list *v1.Endpoints: endpoints is forbidden: User  system:serviceaccount:monitoring:kube-state-metrics  cannot list resource  endpoints  in API group   at the cluster scope

同理,如果要使用其它字段来区分要统计的客户端,可以根据需求灵活修改 SQL,比如使用 user.username 来区分,SQL 这样写:

* | SELECT CAST((__TIMESTAMP_US__ /1000-__TIMESTAMP_US__ /1000%1000) as TIMESTAMP) AS time, COUNT(1) AS qps,user.username GROUP BY time,user.username ORDER BY time

显示效果:

看完上述内容,你们对如何使用容器服务 TKE 集群审计排查问题有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注丸趣 TV 行业资讯频道,感谢大家的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计2209字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 男女做羞羞 | 国产在线a不卡免费视频 | 久久久久亚洲精品无码网址 | 亚洲人精品 | 国产精品第1页在线观看 | 在线观看国产 | 亚洲日韩精品无码av海量 | 手机午夜视频 | 日本中文在线播放 | 国产超碰人人模人人爽人人喊 | 亚洲精品视频免费观看 | 神马午夜51 | 国产精品资源 | 九色九九九老阿姨 | 成人免费大片a毛片 | 236宅宅理论片免费 24小时日本在线www免费的 | 在线天堂最新版资源 | 男人的嘴添女人视频免费 | 久久综合久久自在自线精品自 | 国产精品一区二区不卡的视频 | 日韩激情中文字幕一区二区 | 日韩中文字幕在线有码视频网 | 99热这里只有精品1 99热这里只有精品3 | 精品一区二区三区 不卡高清 | 亚洲国产中文字幕在线视频综合 | 99久久精品日本一区二区免费 | 久久99热久久国产精品 | 欧美三级韩国三级日本一级 | 国产免费一区二区在线看 | 视频一区二区中文字幕 | 免费在线观看a | 深夜福利啪啪 | 久久精品国产99国产精品小说 | 极品吹潮视频大喷潮tv | 2019国产夜间视频 | 久久久久一区二区三区 | 亚洲第一页中文字幕 | 成人久久久观看免费毛片 | 久久久久久久久久毛片精品美女 | 国产精品综合一区二区 | 亚洲av永久无码精品三区在线 |