详情页标题前

腾讯云容器服务集群审计同尘科技

详情页1

本文主要介绍如何将注册集群的审计日志接入到 腾讯云日志服务 CLS。

简介

集群审计是基于 Kubernetes Audit 对 kube-apiserver 产生的可配置策略的 JSON 结构日志的记录存储及检索功能。本功能记录了对 kube-apiserver 的访问事件,会按顺序记录每个用户、管理员或系统组件影响集群的活动。

使用须知

已经 创建注册集群,且注册集群的状态为运行中。目前注册集群的审计日志仅支持投递至 腾讯云日志服务 CLS,暂不支持其他日志消费端。注册集群开启审计功能,需要用户自行登录集群的 Master 节点配置相关审计策略和 API Server 相关参数。开启集群审计功能,默认会同步开启集群日志采集功能。若使用集群审计功能,请确认 Kubernetes 集群内节点能够访问日志消费端。这里我们提供公网和内网两种方式进行日志投递,用户可以根据业务情况自行选择:公网投递:集群审计日志将通过公网的方式进行投递至日志服务 CLS ,需要集群中的节点具有访问公网的能力。内网投递:集群审计日志将通过内网的方式进行投递至日志服务 CLS ,需要集群内的节点与腾讯云日志服务 CLS 内网互通。选择该选项前,请 联系我们 进行确认。

使用步骤

在集群 Master 节点上配置审计策略

依次登录集群的所有 Master 节点,配置审计策略文件/etc/kubernetes/audit-policy.yaml。您可以根据业务的实际情况,按需修改。

apiVersion: audit.k8s.io/v1beta1kind: PolicyomitStages:  - "RequestReceived"rules:  - level: None    users: ["system:kube-proxy"]    verbs: ["watch"]    resources:      - group: ""        resources: ["endpoints", "services"]  - level: None    users: ["system:unsecured"]    namespaces: ["kube-system"]    verbs: ["get"]    resources:      - group: ""        resources: ["configmaps"]  - level: None    users: ["kubelet"]    verbs: ["get"]    resources:      - group: ""        resources: ["nodes"]  - level: None    userGroups: ["system:nodes"]    verbs: ["get"]    resources:      - group: ""        resources: ["nodes"]  - level: None    users:      - system:kube-controller-manager      - system:kube-scheduler      - system:serviceaccount:kube-system:endpoint-controller    verbs: ["get", "update"]    namespaces: ["kube-system"]    resources:      - group: ""        resources: ["endpoints"]  - level: None    users: ["system:apiserver"]    verbs: ["get"]    resources:      - group: ""        resources: ["namespaces"]  - level: None    nonResourceURLs:      - /healthz*      - /version      - /swagger*  - level: None    resources:      - group: ""        resources: ["events"]  - level: Metadata    resources:      - group: "" # core        resources: ["secrets", "configmaps"]      - group: authentication.k8s.io        resources: ["tokenreviews"]  - level: Request    verbs: ["get", "list", "watch"]    resources:      - group: ""      - group: "admissionregistration.k8s.io"      - group: "apps"      - group: "authentication.k8s.io"      - group: "authorization.k8s.io"      - group: "autoscaling"      - group: "batch"      - group: "certificates.k8s.io"      - group: "extensions"      - group: "networking.k8s.io"      - group: "policy"      - group: "rbac.authorization.k8s.io"      - group: "settings.k8s.io"      - group: "storage.k8s.io"  - level: RequestResponse    resources:      - group: ""      - group: "admissionregistration.k8s.io"      - group: "apps"      - group: "authentication.k8s.io"      - group: "authorization.k8s.io"      - group: "autoscaling"      - group: "batch"      - group: "certificates.k8s.io"      - group: "extensions"      - group: "networking.k8s.io"      - group: "policy"      - group: "rbac.authorization.k8s.io"      - group: "settings.k8s.io"      - group: "storage.k8s.io"  - level: Metadata

在 Master 节点上配置 API Server 参数

依次登录集群所有的 Master 节点,修改/etc/kubernetes/manifests/kube-apiserver.yaml文件。1. 添加相关 command 参数,内容如下:

spec:  containers:  - command:    - kube-apiserver    - --audit-log-maxbackup=10    - --audit-log-maxsize=100    - --audit-log-path=/var/log/kubernetes/kubernetes.audit    - --audit-log-maxage=30    - --audit-policy-file=/etc/kubernetes/audit-policy.yaml

2. 添加相关的 Volume 参数,将 /etc/kubernetes/audit-policy.yaml 挂载到 API Server Pod,内容如下:

spec:  containers:    - command:      - kube-apiserver      - --audit-log-maxbackup=10      - --audit-log-maxsize=100      - --audit-log-path=/var/log/kubernetes/kubernetes.audit      - --audit-log-maxage=30      - --audit-policy-file=/etc/kubernetes/audit-policy.yaml    ...    ...        volumeMounts:      - mountPath: /var/log/kubernetes        name: k8s-audit      - mountPath: /etc/kubernetes/audit-policy.yaml        name: audit-policy        readOnly: true    ...    ...  volumes:    - hostPath:      path: /var/log/kubernetes      type: DirectoryOrCreate    name: k8s-audit    - hostPath:      path: /etc/kubernetes/audit-policy.yaml      type: FileOrCreate    name: audit-policy  ...

开启集群审计

1. 登录 腾讯云容器服务控制台,选择左侧导航中的运维功能管理。2. 在“功能管理”页面上方选择地域和注册集群,单击希望开启集群审计的集群右侧的设置。如下图所示:

腾讯云容器服务集群审计同尘科技

3. 在弹出的“设置功能”窗口,单击“集群审计”功能右侧的编辑

腾讯云容器服务集群审计同尘科技

4. 勾选开启集群审计,选择投递方式和存储审计日志的日志集、日志主题,推荐选择自动创建日志主题

腾讯云容器服务集群审计同尘科技

5. 单击确定即可开启注册集群审计功能。

审计仪表盘

容器服务为用户提供了开箱即用的审计仪表盘。在集群开启集群审计功能后,TKE 将自动为该集群配置审计总览、节点操作总览、K8S 对象操作概览、聚合检索仪表盘。还支持用户自定义配置过滤项,同时内置 CLS 的全局检索,方便用户观测和检索各类集群操作,以便于及时发现和定位问题。更多详细介绍,请参考 审计仪表盘。
容器服务官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

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

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

相关推荐

  • 阿里云RDS数据库查看监控数据-云淘科技

    使用RDS PostgreSQL数据库代理时,您可以随时查看数据库代理的性能数据,了解数据库代理的负载情况,以便及时调整代理数量。 前提条件 已开通数据库代理服务,具体请参见开通并配置数据库代理服务。 操作步骤 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。 在左侧导航栏单击数据库代理。 选择监控数据页签。 设置查询时间段,即可查看数据库代理的各…

    阿里云数据库 2023年12月9日
  • 腾讯云TDSQL-C MySQL版并行查询指标

    TDSQL-C MySQL 版设置了多种监控指标帮助您实时监控数据库中有关并行查询的相关操作。本文为您介绍并行查询的相关监控指标。 前提条件 数据库版本:TDSQL-C MySQL 版8.0内核版本3.1.8及以上。 并行查询相关监控指标 监控项(中文) 监控项(英文) 单位 说明 数据聚合方式 当前并行查询线程数 txsql_parallel_thread…

    腾讯云 2023年12月9日
  • 腾讯云容器服务TKE 标准集群动态(2023年)同尘科技

    2023年9月 动态名称 动态描述 相关文档 COS 挂载方式支持 GooseFS-Lite COS 挂载方式支持 GooseFS-Lite,可使用更高的大文件读写速度,不受本地磁盘的性能限制。 使用对象存储 COS 集群升级前置检查增加废弃 API Version的检查校验 集群升级前置检查增加废弃 API Version 的检查校验,避免升级过程中出…

    腾讯云 2023年12月9日
  • 腾讯云Serverless应用中心快速部署 Egg 框架-同尘科技

    应用中心框架部署方案已经全新升级,您可以通过 SCF Web Function,快速部署您的 Egg 业务上云。注意应用控制台部署与函数直接部署有什么区别?通过应用部署或函数部署,均可以基于 Web 函数,快速部署常见 Web 框架。如果您只关注代码逻辑开发,无需额外资源创建,可以通过 Serverless 控制台,完成快速部署。如果除了代码部署外,您还需要…

    2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云云点播删除音视频

    操作场景 通过云点播控制台,您可以进行删除音视频操作。本文将为您介绍如何删除音视频。注意:执行删除操作后,音视频将从腾讯云完全删除,无法找回,亦不可从 CDN 节点访问到该音视频,请谨慎操作。 操作步骤 1. 登录 云点播控制台,单击左侧导航栏应用管理,进入应用列表页。2. 找到需要处理音视频文件的应用,单击应用名称进入应用管理页。3. 默认进入媒资管理 &…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

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