2.7. 为 RHCOS 添加扩展


RHCOS 是基于容器的最小 RHEL 操作系统,旨在为所有平台的 OpenShift Container Platform 集群提供一组通用的功能。通常不建议在 RHCOS 系统中添加软件软件包,但 MCO 提供了一个 extensions(扩展) 功能,您可以使用 MCO 为 RHCOS 节点添加一组最小的功能。

目前,有以下扩展可用:

  • usbguardusbguard 扩展可保护 RHCOS 系统不受入侵 USB 设备的攻击。如需更多信息,请参阅 USBGuard
  • Kerberoskerberos 扩展提供了一种机制,允许用户和机器标识自身对网络进行定义的定义、限制对管理员配置的区域和服务的访问权限。如需更多信息,请参阅使用 Kerberos 了解详情,包括如何设置 Kerberos 客户端和挂载 Kerberized NFS 共享。
  • sandboxed-containerssandboxed-containers 扩展包含 Kata、QEMU 及其依赖项的 RPM。如需更多信息,请参阅 OpenShift Sandboxed Containers
  • ipsecipsec 扩展包含 libreswan 和 NetworkManager-libreswan 的 RPM。
  • wasm: wasm 扩展为想要使用 WASM 支持的工作负载的用户在 OpenShift Container Platform 中启用开发人员预览功能。
  • sysstat :添加 sysstat 扩展可为 OpenShift Container Platform 节点提供额外的性能监控,包括用于收集和报告信息的系统活动报告器(sar)命令。
  • kernel-devel: kernel-devel 扩展提供内核标头和 makefile,以根据内核软件包构建模块。

以下流程描述了如何使用机器配置为 RHCOS 节点添加一个或多个扩展。

先决条件

  • 有一个正在运行的 OpenShift Container Platform 集群(版本 4.6 或更高版本)。
  • 以具有管理特权的用户身份登录集群。

流程

  1. 为扩展创建机器配置:创建一个 YAML 文件(如 80-extensions.yaml),其中包含 MachineConfig extensions 对象。本例告诉集群添加 usbguard 扩展。

    $ cat << EOF > 80-extensions.yaml
    apiVersion: machineconfiguration.openshift.io/v1
    kind: MachineConfig
    metadata:
      labels:
        machineconfiguration.openshift.io/role: worker
      name: 80-worker-extensions
    spec:
      config:
        ignition:
          version: 3.5.0
      extensions:
        - usbguard
    EOF
    Copy to Clipboard Toggle word wrap
  2. 将机器配置添加到集群。键入以下内容将机器配置添加到集群中:

    $ oc create -f 80-extensions.yaml
    Copy to Clipboard Toggle word wrap

    这会将所有 worker 节点设置为安装 usbguard 的 rpm 软件包。

  3. 检查是否应用了扩展:

    $ oc get machineconfig 80-worker-extensions
    Copy to Clipboard Toggle word wrap

    输出示例

    NAME                 GENERATEDBYCONTROLLER IGNITIONVERSION AGE
    80-worker-extensions                       3.5.0           57s
    Copy to Clipboard Toggle word wrap

  4. 检查是否应用新机器配置,并且节点是否处于降级状态。它可能需要几分钟时间。worker 池将显示更新进行中,每台机器都成功应用了新机器配置:

    $ oc get machineconfigpool
    Copy to Clipboard Toggle word wrap

    输出示例

    NAME   CONFIG             UPDATED UPDATING DEGRADED MACHINECOUNT READYMACHINECOUNT UPDATEDMACHINECOUNT DEGRADEDMACHINECOUNT AGE
    master rendered-master-35 True    False    False    3            3                 3                   0                    34m
    worker rendered-worker-d8 False   True     False    3            1                 1                   0                    34m
    Copy to Clipboard Toggle word wrap

  5. 检查扩展。要检查是否应用了扩展,请运行:

    $ oc get node | grep worker
    Copy to Clipboard Toggle word wrap

    输出示例

    NAME                                        STATUS  ROLES    AGE   VERSION
    ip-10-0-169-2.us-east-2.compute.internal    Ready   worker   102m  v1.32.3
    Copy to Clipboard Toggle word wrap

    $ oc debug node/ip-10-0-169-2.us-east-2.compute.internal
    Copy to Clipboard Toggle word wrap

    输出示例

    ...
    To use host binaries, run `chroot /host`
    sh-4.4# chroot /host
    sh-4.4# rpm -q usbguard
    usbguard-0.7.4-4.el8.x86_64.rpm
    Copy to Clipboard Toggle word wrap

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat