详情页标题前

腾讯云容器服务使用集群审计排查问题同尘科技

详情页1

使用场景

当发生人为误操作、应用出现 bug、恶意程序调用 apiserver 接口,集群资源会被删除或修改。此时可通过集群审计功能记录 apiserver 的接口调用,即可根据条件检索和分析审计日志找到问题原因。本文介绍了集群审计功能的具体使用场景及使用示例,您可参考本文开始使用集群审计功能。 注意本文仅适用于容器服务 TKE 集群。

前提条件

登录容器服务控制台,开启集群审计功能。详情请参见 开启集群审计。

使用示例

获取分析结果

1. 登录 日志服务控制台,选择左侧导航栏中的检索分析。 2.检索分析页面,选择待检索的日志集,日志主题以及选择时间范围。 3. 输入分析语句后单击检索分析,即可获得分析结果。

示例1:查询封锁节点的操作者

例如,需查询封锁节点的操作者,则可执行以下命令进行检索:

objectRef.resource:nodes AND requestObject:unschedulable

检索分析页面中,版面选择默认配置,查询结果如下图所示:

腾讯云容器服务使用集群审计排查问题同尘科技



示例2:查询删除工作负载的操作者

例如,需查询删除工作负载的操作者,则可执行以下命令进行检索:

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

您可根据检索结果获取此子账号的详细信息。

腾讯云容器服务使用集群审计排查问题同尘科技



示例3:定位 apiserver 限频原因

为避免恶意程序或 bug 导致对 apiserver 请求频率过高引发的 apiserver/etcd 负载过高,影响正常请求。apiserver 具备默认请求频率限制保护。如发生限频,可通过审计找到发出大量请求的客户端。 1. 如需通过 userAgent 分析统计请求的客户端,则需在“键值索引”窗口中修改日志主题,为 userAgent 字段开启统计。如下图所示:

腾讯云容器服务使用集群审计排查问题同尘科技

2. 执行以下命令,对每种客户端请求 apiserver 的 QPS 大小进行统计:

* | SELECT histogram( cast(__TIMESTAMP__ as timestamp),interval 1 minute) AS time, COUNT(1) AS qps,userAgent GROUP BY time,userAgent ORDER BY time

3. 切换到统计图表,选择时序图,可设置基本信息、坐标轴等,如下图所示:

腾讯云容器服务使用集群审计排查问题同尘科技


获得数据后,可点击添加到仪表盘,放大显示。如下图所示:

腾讯云容器服务使用集群审计排查问题同尘科技


由图可见,kube-state-metrics 客户端对 apiserver 请求频率远远高于其它客户端。查看日志可得,由于 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=1029843735E1009 13:13:09.766106       1 reflector.go:156] pkg/mod/k8s.io/client-go@v0.0.0-20191109102209-3c0d1af94be5/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 histogram( cast(__TIMESTAMP__ as timestamp),interval 1 minute)  AS time, COUNT(1) AS qps,user.username GROUP BY time,user.username ORDER BY time

显示效果如下图所示:

腾讯云容器服务使用集群审计排查问题同尘科技



相关文档

关于容器服务 TKE 的集群审计简介与基础操作,请参见 集群审计。 集群审计的数据存储在日志服务,若需要在日志服务控制台中对审计结果进行检索和分析,检索语法请参见 日志检索语法与规则。 进行分析需提供日志服务所支持的 SQL 语句,请参见 日志分析简介。
容器服务官网1折活动,限时活动,即将结束,速速收藏
同尘科技腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/148563.html

(0)
上一篇 2023年12月9日 下午12:57
下一篇 2023年12月9日 下午12:57
详情页2

相关推荐

  • 腾讯云GPU云服务器使用预装 GPU 驱动的镜像

    操作场景 为方便用户使用,云市场提供了预装 GPU 驱动的镜像。在创建 GPU 实例时,可以通过镜像市场选择相关镜像完成部署。 操作步骤 如何选择安装驱动预装镜像 1. 在 购买页 选择所需要的 GPU 实例机型及相关配置。2. 在 镜像 中选择镜像市场,单击从镜像市场选择。如下图所示: 3. 在弹出的选择镜像对话框的搜索框中,输入 GPU 并单击搜索按…

    2023年12月9日
  • 腾讯云对象存储Abort Multipart Upload

    功能描述 Abort Multipart Upload 用来实现舍弃一个分块上传并删除已上传的块。当您调用 Abort Multipart Upload 时,如果有正在使用这个 Upload Parts 上传块的请求,则 Upload Parts 会返回失败。当该 UploadId 不存在时,会返回404 NoSuchUpload。说明只有主账号或者被授权 …

    腾讯云 2023年12月9日
  • 腾讯云TDSQL-C MySQL版计划缓存点查优化

    功能介绍 TDSQL-C MySQL 数据的 SQL 执行步骤主要包括解析、准备、优化和执行四个阶段。执行计划缓存能力在 prepare statement 模式起作用,prepare statement 模式在 execute 时省略了解析和准备两个阶段,执行计划还会省略优化阶段,将性能进一步提升。 支持版本 内核版本 TDSQL-C MySQL 版 8.…

    腾讯云 2023年12月9日
  • 腾讯云轻量应用服务器设置允许多用户远程登录 Windows 实例云小二

    操作场景 本文档以使用 Windows Server 2016 系统镜像的轻量应用服务器为例,指导您配置多用户远程登录 Windows 实例。注意微软提供的多用户远程登录功能试用期为120天,若未购买多用户登录授权(RDS CALs),则试用期结束后会导致无法通过远程桌面登录轻量应用服务器,只能通过 mstsc /admin 命令登录。Windows Ser…

    2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云对象存储拼接模板接口

    简介 本文档提供关于拼接模板接口的 API 概览和 SDK 示例代码。 API 操作描述 新增拼接模板 用于新增拼接模板 更新拼接模板 用于更新拼接模板 新增拼接模板 功能说明 用于新增拼接模板。 方法原型 public Guzzle\Service\Resource\Model createMediaConcatTemplate(array $args =…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。