Cilium Tetragon

编辑

版本

0.1.0 [beta] 此功能处于 beta 阶段,可能会发生变化。其设计和代码不如正式 GA 功能成熟,并按原样提供,不提供任何担保。Beta 功能不受正式 GA 功能的支持 SLA 约束。 (查看全部)

兼容的 Kibana 版本

8.13.0 或更高版本

支持的无服务器项目类型
这是什么?

安全
可观测性

订阅级别
这是什么?

基本

支持级别
这是什么?

Elastic

概述

编辑

Cilium Tetragon 集成使您能够监视和分析来自 Tetragon 的事件,Tetragon 是一个由 CNCF 支持的 Kubernetes 感知安全可观测性和运行时强制执行工具。此集成提供对 Tetragon 安全事件日志的洞察,使您能够在 Kibana 中可视化数据、设置警报,并快速响应 Kubernetes 环境中的安全事件。

数据流

编辑

Cilium Tetragon 集成将 Tetragon 的安全事件日志收集到 Elasticsearch 中的 logs 数据流中。

要求

编辑

要使用 Cilium Tetragon 集成,请确保以下事项

  • Elastic Stack:Elasticsearch 和 Kibana 是数据存储、搜索和可视化所必需的。您可以使用托管的 Elastic Cloud 上的 Elasticsearch 服务(推荐)或在您自己的硬件上部署 Elastic Stack。
  • Kubernetes 环境:Tetragon 必须在 Kubernetes 集群中运行。

设置

编辑

步骤 1:安装集成资产

编辑

在从 Tetragon 收集数据之前,请在 Kibana 中安装此集成所需的资产

  1. 在 Kibana 中,导航至 设置 > 安装 Cilium Tetragon 集成
  2. 或者,转到 ⊕ 添加 Cilium Tetragon > 仅添加集成(跳过此集成不支持的 Elastic Agent 安装)。

步骤 2:配置 Tetragon 进行 JSON 导出

编辑

需要配置 Tetragon 以将其事件数据导出为 JSON 日志。然后,您将使用 Filebeat 将这些日志发送到 Elasticsearch。最简单的方法是使用 Tetragon Helm 图表以及 Helm 值文件。

有关常规 Helm 安装指南,请参阅 Tetragon 文档

2.1:设置 Filebeat 配置映射
编辑

首先,在 kube-system 命名空间中创建一个带有 Filebeat 配置的 ConfigMap。更新提供的配置文件中的 Elasticsearch 用户名和密码。

将以下内容另存为 filebeat-cfgmap.yaml

apiVersion: v1
kind: ConfigMap
metadata:
  name: filebeat-configmap
  namespace: kube-system
data:
  filebeat.yml: |
    filebeat.inputs:
      - type: filestream
        id: tetragon-log
        enabled: true
        paths:
          - /var/run/cilium/tetragon/*.log
    path.data: /usr/share/filebeat/data
    processors:
      - timestamp:
          field: "time"
          layouts:
            - '2006-01-02T15:04:05Z'
            - '2006-01-02T15:04:05.999Z'
            - '2006-01-02T15:04:05.999-07:00'
          test:
            - '2019-06-22T16:33:51Z'
            - '2019-11-18T04:59:51.123Z'
            - '2020-08-03T07:10:20.123456+02:00'
    setup.template.name: logs
    setup.template.pattern: "logs-cilium_tetragon.*"
    output.elasticsearch:
      hosts: ["https://<elasticsearch host>"]
      username: "<elasticsearch username>"
      password: "<elasticsearch password>"
      index: logs-cilium_tetragon.log-default

要应用此配置,请运行

kubectl create -f filebeat-cfgmap.yaml
2.2:使用 Filebeat Sidecar 安装 Tetragon
编辑

接下来,使用 Helm 安装 Tetragon,使用覆盖文件配置 Filebeat sidecar 以导出日志。将以下配置另存为 filebeat-helm-values.yaml

export:
  securityContext:
    runAsUser: 0
    runAsGroup: 0
  stdout:
    enabledCommand: false
    enabledArgs: false
    image:
      override: "docker.elastic.co/beats/filebeat:8.15.3"
    extraVolumeMounts:
      - name: filebeat-config
        mountPath: /usr/share/filebeat/filebeat.yml
        subPath: filebeat.yml
      - name: filebeat-data
        mountPath: /usr/share/filebeat/data
extraVolumes:
  - name: filebeat-data
    hostPath:
      path: /var/run/cilium/tetragon/filebeat
      type: DirectoryOrCreate
  - name: filebeat-config
    configMap:
      name: filebeat-configmap
      items:
        - key: filebeat.yml
          path: filebeat.yml

然后,使用以下命令安装 Tetragon

helm repo add cilium https://helm.cilium.io
helm repo update
helm install tetragon -f filebeat-helm-values.yaml ${EXTRA_HELM_FLAGS[@]} cilium/tetragon -n kube-system

故障排除

编辑

如果预期事件未出现在 Elasticsearch 中,请确保已将 Tetragon 配置为导出正确的事件

  • 检查 tetragon.exportAllowListtetragon.exportDenyList Helm 值。可以通过将它们添加到 filebeat-helm-values.yaml 来调整这些值,以控制 JSON 导出中包含哪些事件。

参考

编辑

有关安装或配置 Tetragon 的更多指南,请访问 Tetragon 文档

日志

编辑

日志数据流

编辑

log 数据流捕获来自 Tetragon 的事件日志。这些事件在 Elasticsearch 中以 logs-cilium_tetragon.log-default 索引。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

日期

cilium_tetragon.log.cluster_name

关键字

cilium_tetragon.log.node_name

关键字

cilium_tetragon.log.process_exec.parent.auid

长整型

cilium_tetragon.log.process_exec.parent.docker

关键字

cilium_tetragon.log.process_exec.parent.exec_id

关键字

cilium_tetragon.log.process_exec.parent.flags

关键字

cilium_tetragon.log.process_exec.parent.parent_exec_id

关键字

cilium_tetragon.log.process_exec.parent.pod.container.id

关键字

cilium_tetragon.log.process_exec.parent.pod.container.image.id

关键字

cilium_tetragon.log.process_exec.parent.pod.container.image.name

关键字

cilium_tetragon.log.process_exec.parent.pod.container.name

关键字

cilium_tetragon.log.process_exec.parent.pod.container.pid

长整型

cilium_tetragon.log.process_exec.parent.pod.container.start_time

关键字

cilium_tetragon.log.process_exec.parent.pod.name

关键字

cilium_tetragon.log.process_exec.parent.pod.namespace

关键字

cilium_tetragon.log.process_exec.parent.pod.pod_labels.app.kubernetes.io/name

关键字

cilium_tetragon.log.process_exec.parent.pod.pod_labels.class

关键字

cilium_tetragon.log.process_exec.parent.pod.pod_labels.org

关键字

cilium_tetragon.log.process_exec.parent.pod.pod_labels.pod-template-hash

关键字

cilium_tetragon.log.process_exec.parent.pod.workload

关键字

cilium_tetragon.log.process_exec.parent.pod.workload_kind

关键字

cilium_tetragon.log.process_exec.parent.refcnt

长整型

cilium_tetragon.log.process_exec.parent.start_time

关键字

cilium_tetragon.log.process_exec.parent.tid

长整型

cilium_tetragon.log.process_exec.process.auid

长整型

cilium_tetragon.log.process_exec.process.docker

关键字

cilium_tetragon.log.process_exec.process.exec_id

关键字

cilium_tetragon.log.process_exec.process.flags

关键字

cilium_tetragon.log.process_exec.process.parent_exec_id

关键字

cilium_tetragon.log.process_exec.process.pod.container.image.id

关键字

cilium_tetragon.log.process_exec.process.pod.container.pid

长整型

cilium_tetragon.log.process_exec.process.pod.container.start_time

关键字

cilium_tetragon.log.process_exec.process.pod.name

关键字

cilium_tetragon.log.process_exec.process.pod.namespace

关键字

cilium_tetragon.log.process_exec.process.pod.pod_labels.app

关键字

cilium_tetragon.log.process_exec.process.pod.pod_labels.app.kubernetes.io/name

关键字

cilium_tetragon.log.process_exec.process.pod.pod_labels.class

关键字

cilium_tetragon.log.process_exec.process.pod.pod_labels.org

关键字

cilium_tetragon.log.process_exec.process.pod.pod_labels.pod-template-hash

关键字

cilium_tetragon.log.process_exec.process.pod.workload

关键字

cilium_tetragon.log.process_exec.process.pod.workload_kind

关键字

cilium_tetragon.log.process_exec.process.start_time

关键字

cilium_tetragon.log.process_exec.process.uid

长整型

cilium_tetragon.log.process_exit.parent.auid

长整型

cilium_tetragon.log.process_exit.parent.docker

关键字

cilium_tetragon.log.process_exit.parent.exec_id

关键字

cilium_tetragon.log.process_exit.parent.flags

关键字

cilium_tetragon.log.process_exit.parent.parent_exec_id

关键字

cilium_tetragon.log.process_exit.parent.pod.container.id

关键字

cilium_tetragon.log.process_exit.parent.pod.container.image.id

关键字

cilium_tetragon.log.process_exit.parent.pod.container.image.name

关键字

cilium_tetragon.log.process_exit.parent.pod.container.name

关键字

cilium_tetragon.log.process_exit.parent.pod.container.pid

长整型

cilium_tetragon.log.process_exit.parent.pod.container.start_time

关键字

cilium_tetragon.log.process_exit.parent.pod.name

关键字

cilium_tetragon.log.process_exit.parent.pod.namespace

关键字

cilium_tetragon.log.process_exit.parent.pod.pod_labels.app.kubernetes.io/name

关键字

cilium_tetragon.log.process_exit.parent.pod.pod_labels.class

关键字

cilium_tetragon.log.process_exit.parent.pod.pod_labels.org

关键字

cilium_tetragon.log.process_exit.parent.pod.pod_labels.pod-template-hash

关键字

cilium_tetragon.log.process_exit.parent.pod.workload

关键字

cilium_tetragon.log.process_exit.parent.pod.workload_kind

关键字

cilium_tetragon.log.process_exit.parent.refcnt

长整型

cilium_tetragon.log.process_exit.parent.start_time

关键字

cilium_tetragon.log.process_exit.parent.tid

长整型

cilium_tetragon.log.process_exit.process.auid

长整型

cilium_tetragon.log.process_exit.process.docker

关键字

cilium_tetragon.log.process_exit.process.exec_id

关键字

cilium_tetragon.log.process_exit.process.flags

关键字

cilium_tetragon.log.process_exit.process.parent_exec_id

关键字

cilium_tetragon.log.process_exit.process.pod.container.image.id

关键字

cilium_tetragon.log.process_exit.process.pod.container.pid

长整型

cilium_tetragon.log.process_exit.process.pod.container.start_time

关键字

cilium_tetragon.log.process_exit.process.pod.name

关键字

cilium_tetragon.log.process_exit.process.pod.namespace

关键字

cilium_tetragon.log.process_exit.process.pod.pod_labels.app.kubernetes.io/name

关键字

cilium_tetragon.log.process_exit.process.pod.pod_labels.class

关键字

cilium_tetragon.log.process_exit.process.pod.pod_labels.org

关键字

cilium_tetragon.log.process_exit.process.pod.pod_labels.pod-template-hash

关键字

cilium_tetragon.log.process_exit.process.pod.workload

关键字

cilium_tetragon.log.process_exit.process.pod.workload_kind

关键字

cilium_tetragon.log.process_exit.process.refcnt

长整型

cilium_tetragon.log.process_exit.process.start_time

关键字

cilium_tetragon.log.process_exit.process.uid

长整型

cilium_tetragon.log.process_exit.signal

关键字

cilium_tetragon.log.process_exit.status

浮点数

cilium_tetragon.log.process_exit.time

关键字

cilium_tetragon.log.process_kprobe.action

关键字

cilium_tetragon.log.process_kprobe.args.capability_arg.name

关键字

cilium_tetragon.log.process_kprobe.args.capability_arg.value

长整型

cilium_tetragon.log.process_kprobe.args.file_arg.path

关键字

cilium_tetragon.log.process_kprobe.args.file_arg.permission

关键字

cilium_tetragon.log.process_kprobe.args.int_arg

长整型

cilium_tetragon.log.process_kprobe.args.user_ns_arg.gid

长整型

cilium_tetragon.log.process_kprobe.args.user_ns_arg.level

长整型

cilium_tetragon.log.process_kprobe.args.user_ns_arg.ns.inum

长整型

cilium_tetragon.log.process_kprobe.args.user_ns_arg.ns.is_host

布尔型

cilium_tetragon.log.process_kprobe.args.user_ns_arg.uid

长整型

cilium_tetragon.log.process_kprobe.function_name

关键字

cilium_tetragon.log.process_kprobe.parent.auid

长整型

cilium_tetragon.log.process_kprobe.parent.docker

关键字

cilium_tetragon.log.process_kprobe.parent.flags

关键字

cilium_tetragon.log.process_kprobe.parent.parent_exec_id

关键字

cilium_tetragon.log.process_kprobe.parent.pod.container.id

关键字

cilium_tetragon.log.process_kprobe.parent.pod.container.image.id

关键字

cilium_tetragon.log.process_kprobe.parent.pod.container.image.name

关键字

cilium_tetragon.log.process_kprobe.parent.pod.container.name

关键字

cilium_tetragon.log.process_kprobe.parent.pod.container.pid

长整型

cilium_tetragon.log.process_kprobe.parent.pod.container.start_time

日期

cilium_tetragon.log.process_kprobe.parent.pod.name

关键字

cilium_tetragon.log.process_kprobe.parent.pod.namespace

关键字

cilium_tetragon.log.process_kprobe.parent.pod.pod_labels.app.kubernetes.io/name

关键字

cilium_tetragon.log.process_kprobe.parent.pod.pod_labels.class

关键字

cilium_tetragon.log.process_kprobe.parent.pod.pod_labels.org

关键字

cilium_tetragon.log.process_kprobe.parent.pod.workload

关键字

cilium_tetragon.log.process_kprobe.parent.pod.workload_kind

关键字

cilium_tetragon.log.process_kprobe.parent.refcnt

长整型

cilium_tetragon.log.process_kprobe.policy_name

关键字

cilium_tetragon.log.process_kprobe.process.auid

长整型

cilium_tetragon.log.process_kprobe.process.docker

关键字

cilium_tetragon.log.process_kprobe.process.flags

关键字

cilium_tetragon.log.process_kprobe.process.ns.cgroup.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.ipc.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.mnt.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.net.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.pid.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.pid.pid_for_children.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.pid_for_children.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.time.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.time.is_host

布尔型

cilium_tetragon.log.process_kprobe.process.ns.time.time_for_children.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.time.time_for_children.is_host

布尔型

cilium_tetragon.log.process_kprobe.process.ns.time_for_children.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.time_for_children.is_host

布尔型

cilium_tetragon.log.process_kprobe.process.ns.user.inum

长整型

cilium_tetragon.log.process_kprobe.process.ns.user.is_host

布尔型

cilium_tetragon.log.process_kprobe.process.ns.uts.inum

长整型

cilium_tetragon.log.process_kprobe.process.parent_exec_id

关键字

cilium_tetragon.log.process_kprobe.process.pod.container.image.id

关键字

cilium_tetragon.log.process_kprobe.process.pod.container.pid

长整型

cilium_tetragon.log.process_kprobe.process.pod.container.start_time

日期

cilium_tetragon.log.process_kprobe.process.pod.pod_labels.app.kubernetes.io/name

关键字

cilium_tetragon.log.process_kprobe.process.pod.pod_labels.class

关键字

cilium_tetragon.log.process_kprobe.process.pod.pod_labels.org

关键字

cilium_tetragon.log.process_kprobe.process.pod.workload

关键字

cilium_tetragon.log.process_kprobe.process.refcnt

长整型

cilium_tetragon.log.process_kprobe.return.int_arg

长整型

cilium_tetragon.log.process_kprobe.return_action

关键字

cilium_tetragon.log.time

关键字

cloud.image.id

云实例的镜像 ID。

关键字

container.labels

镜像标签。

object

data_stream.dataset

数据流数据集名称。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

event.dataset

事件数据集

constant_keyword

event.module

事件模块

constant_keyword

host.containerized

主机是否为容器。

布尔型

host.os.build

操作系统构建信息。

关键字

host.os.codename

操作系统代号(如果有)。

关键字

input.type

Filebeat 输入类型。

关键字

log.file.device_id

包含文件所在文件系统的设备的 ID。

关键字

log.file.fingerprint

启用指纹识别时,文件的 sha256 指纹标识。

关键字

log.file.idxhi

与文件关联的唯一标识符的高位部分。(仅限 Windows)

关键字

log.file.idxlo

与文件关联的唯一标识符的低位部分。(仅限 Windows)

关键字

log.file.inode

日志文件的 Inode 编号。

关键字

log.file.vol

包含文件的卷的序列号。(仅限 Windows)

关键字

log.flags

日志文件的标志。

关键字

log.offset

日志文件中条目的偏移量。

长整型

更新日志

编辑
更新日志
版本 详情 Kibana 版本

0.1.0

增强 (查看拉取请求)
初始版本