架构


Red Hat Advanced Cluster Security for Kubernetes 3.71

系统架构

Red Hat OpenShift Documentation Team

摘要

提供有关 Red Hat Advanced Cluster Security for Kubernetes 架构的概述和描述。

第 1 章 Red Hat Advanced Cluster Security for Kubernetes 架构

发现 Red Hat Advanced Cluster Security for Kubernetes 架构和概念。

1.1. Red Hat Advanced Cluster Security for Kubernetes 架构概述

Red Hat Advanced Cluster Security for Kubernetes (RHACS) 使用分布式架构,它支持大规模部署,并进行了优化,以最大程度降低对底层 OpenShift Container Platform 或 Kubernetes 节点的影响。

图 1.1. Red Hat Advanced Cluster Security for Kubernetes 架构

Red Hat Advanced Cluster Security for Kubernetes 架构
注意

当您在 Kubernetes 和 OpenShift Container Platform 上安装 RHACS 时,架构略有不同。但是,底层组件及其之间的交互保持不变。

您可以将 RHACS 作为 OpenShift Container Platform 或 Kubernetes 集群中的一组容器安装。RHACS 包括:

  • 您在一个集群中安装的核心服务。
  • 在您要由 RHACS 保护的每个集群中安装的安全集群服务。

除了这些主要服务外,RHACS 也与其他外部组件交互,以增强集群的安全性。

1.2. 中央服务

您可以在单个集群中安装 Central 服务。这些服务包括两个主要组件: Central 和 Scanner。

  • Central : Central 是 RHACS 应用程序管理界面和服务。它处理数据持久性、API 互动和用户界面(RHACS Portal)访问。您可以使用同一中实例来保护多个 OpenShift Container Platform 或 Kubernetes 集群。
  • 扫描程序 :扫描程序是红帽开发的、经过认证的漏洞扫描程序,用于扫描容器镜像。扫描程序执行以下功能:

    • 它分析所有镜像层,检查来自常见漏洞和暴露 (CVE) 列表中的已知漏洞。
    • 它标识已安装软件包和用于多种编程语言的依赖关系中的漏洞。除了扫描容器镜像外,Scanner 会识别节点的操作系统和编排器中的漏洞。例如,它会扫描节点来识别 Kubernetes、OpenShift Container Platform 和 Istio 漏洞。

1.3. 安全的集群服务

您可以使用 Red Hat Advanced Cluster Security for Kubernetes 在您要保护的每个集群中安装安全集群服务,包括安装中心的集群。安全的集群服务包括以下组件:

  • Sensor :传感器是负责分析和监控集群的服务。Sensor 侦听 OpenShift Container Platform 或 Kubernetes API 和 Collector 事件来报告集群的当前状态。Sensor 还根据 RHACS 策略触发部署时间和运行时违反情况。另外,Sensor 负责所有集群交互,如应用网络策略、启动 RHACS 策略的重新处理以及与 Admission 控制器交互。
  • 准入控制器 : Admission 控制器可防止用户创建在 RHACS 中违反安全策略的工作负载。
  • Collector :收集器分析和监控集群节点上的容器活动。它收集容器运行时和网络活动信息,并将收集的数据发送到 Sensor。
  • 扫描程序 :在 Kubernetes 上,安全的集群服务不包括 Scanner。但是,在 OpenShift Container Platform 中,RHACS 在每个安全集群中安装轻量级扫描程序版本,以便在集成的 OpenShift Container Platform registry 中扫描镜像。

1.4. 外部组件

Red Hat Advanced Cluster Security for Kubernetes (RHACS) 与以下外部组件交互:

  • 第三方系统 :您可以将 RHACS 与其他系统(如 CI/CD 管道、事件管理(SIEM)系统、日志记录、电子邮件等)集成。
  • roxctl: roxctl 是一个命令行界面 (CLI),用于在 RHACS 上运行命令。
  • 镜像 registry :您可以将 RHACS 与各种镜像 registry 集成,并使用 RHACS 扫描和查看镜像。RHACS 使用安全集群中发现的镜像 pull secret 为活跃镜像自动配置 registry 集成。但是,要扫描不活跃的镜像,您必须手动配置 registry 集成。
  • definitions.stackrox.io:RHACS 聚合了来自 definitions.stackrox.io 端点中各种漏洞源的数据,并将这些信息传递给 Central。该源包括常规、国家漏洞数据库 (NVD) 数据和特定于分发的数据,如 Alpine、Debian 和 Ubuntu。
  • collector-modules.stackrox.io: Central 到达 collector-modules.stackrox.io,以获取受支持的内核模块并将这些模块传递给 Collector。

1.5. 在 OpenShift Container Platform 和 Kubernetes 上安装之间的架构区别

在 OpenShift Container Platform 上安装 RHACS 时,只有两个架构区别:

  1. 当您使用 Operator 或 Helm 安装方法在 OpenShift Container Platform 上安装 RHACS 时,RHACS 会在每个安全集群中安装 RHACS 版本。轻量级扫描器启用扫描集成的 OpenShift Container Registry (OCR) 中的镜像。
  2. 在安装了 Central 的集群中,Sensor 与 Scanner 通信。此连接允许访问附加到集群的内部 registry。

图 1.2. Red Hat Advanced Cluster Security for Kubernetes 架构 for OpenShift Container Platform

Red Hat Advanced Cluster Security for Kubernetes 架构 for OpenShift Container Platform

1.6. 服务间的交互

本节介绍 RHACS 服务如何相互交互。

组件方向相互交互Description

Central

扫描程序

Central 和 Scanner 之间有双向通信。中央从扫描器请求镜像扫描,Scanner 从 Central 请求对其 CVE 数据库的更新。

Central

definitions.stackrox.io

Central 连接到 definitions.stackrox.io 端点,以接收聚合的漏洞信息。

Central

collector-modules.stackrox.io

Central 从 collector-modules.stackrox.io 下载支持的内核模块。

Central

镜像 registry

中央查询镜像 registry 以获取镜像元数据。例如,要在 RHACS 门户中显示 Dockerfile 指令。

扫描程序

镜像 registry

扫描程序从镜像 registry 拉取镜像以识别漏洞。

Sensor

Central

Central 和 Sensor 之间有双向通信。Sensor 定期轮询 Central 以下载传感器捆绑包配置的更新。它还会为安全集群观察到的活动发送事件,并观察到的策略违反情况。Central. 与 Sensor 通信,以强制针对启用的策略对所有部署进行重新处理。

Sensor

扫描程序

仅在 OpenShift Container Platform 中,Sensor 与 Scanner 通信以访问附加到集群的本地 registry。扫描程序与 Sensor 通信,以从 definitions.stackrox.io 请求数据。

Collector

Sensor

收集器与 Sensor 通信,并将所有事件发送到集群的对应 Sensor。收集器也请求 Sensor 中缺少的驱动程序。Sensor 从 Collector 请求合规性扫描结果。另外,Sensor 接收来自 Central 的外部无类别域间路由信息,并将其推送到 Collector。

准入控制器

Sensor

传感器将安全策略列表发送到 Admission 控制器。准入控制器将安全策略违反警报发送到 Sensor。准入控制器也可以根据需要从 Sensor 请求镜像扫描。

准入控制器

Central

它并不常见;但是,如果知道 Central 端点且 Sensor 不可用,Admission 控制器可以直接与 Central 进行通信。

法律通告

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Red Hat logoGithubRedditYoutube

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.