本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。

机器注册参考

机器注册资源允许:

机器注册有一个 Ready 条件,当 SUSE® Rancher Prime: OS Manager Operator 成功生成注册 URL 和相关 ServiceAccount 时,该条件变为真。从此时起,目标主机可以连接到注册 URL,启动配置过程。

对注册 URL 的 HTTP GET 请求返回 注册文件:一个 .yaml 文件,包含注册数据(即刚创建的机器注册中的 spec:config:elemental:registration 部分)。 注册文件包含所有必需的数据,以允许目标主机执行自我注册并启动 SUSE® Rancher Prime: OS Manager 配置过程。

可以在 MachineRegistration 资源规范下配置多个键。

计算机注册
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
  name: my-nodes
  namespace: fleet-default
spec:
  machineName: name
  machineInventoryLabels:
    label: value
  machineInventoryAnnotations:
    annotation: value
  config:
    cloud-config:
        ...
    elemental:
        registration:
            ...
        install:
            ...

config.cloud-config

包含要注入节点的云配置。 支持 yip 和 cloud-init 语法。有关完整信息,请参见 云配置参考

config.network

包含支持与 CAPI IPAM 提供者 集成的声明式网络配置。
有关完整信息,请参见 声明式网络参考

类型 默认值 说明

配置程序

字符串

nmc

要使用的网络配置程序(nmcnmstatenmconnections

ipAddresses

objRefMap

IPPool 引用的映射。映射键可用于网络配置模板中的 IP 地址替换。

config

obj

网络配置模板。语法因使用的 configurator 而异。

config.elemental.registration

包含用于连接和初始注册到 SUSE® Rancher Prime: OS Manager Operator 的配置。

支持以下值:

类型 默认值 说明

url

字符串

连接到 SUSE® Rancher Prime: OS Manager Operator 的 URL

ca-cert

字符串

用于验证服务器在 'url' 提供的证书的 CA(如果证书未由公共 CA 签名,则必需)

no-smbios

布尔

false

是否应将 SMBIOS 数据发送到 SUSE® Rancher Prime: OS Manager Operator

no-toolkit

布尔

false

禁用 {elemental_toolkit_name"} 支持,并允许注册 未管理的操作系统

以下值仅用于开发目的。

类型 默认值 说明

鉴定

字符串

tpm

注册时使用的身份验证方法,可以是 tpmmacsys-uuid 之一。有关更多信息,请参见 身份验证

emulate-tpm

布尔

false

这将使用 TPM 的软件仿真(对于没有 TPM 硬件的主机是必需的)

emulated-tpm-seed

int64

1

固定种子以用于 'emulate-tpm'。设置为 -1 以获取随机种子。有关更多信息,请参见 TPM

config.elemental.install

包含当从 .iso 映像启动时,通过 elemental-register --install 应用的安装配置,并传递给 elemental install

支持以下值:

类型 默认值 说明

固件

字符串

efi

要安装的固件('efi' 或 'bios')

device

字符串

要安装系统的设备

设备选择器

字符串

选择要安装系统的设备的规则

不格式化

布尔

false

不格式化磁盘。假定 COS_STATE、COS_RECOVERY、COS_PERSISTENT、COS_OEM 分区已存在于目标磁盘上。

config-urls

list

Cloud-init 配置文件位置

iso

字符串

从 .iso 映像 URL 执行安装,而不是运行中的 .iso 映像。

system-uri

字符串

设置系统映像源及其类型(例如 'docker:registry.org/image:tag'),而不是使用运行中的 .iso 映像。

debug

布尔

false

启用调试输出

tty

字符串

将命名的 tty 添加到 grub。

关机

布尔

false

安装后关闭系统

reboot

布尔

false

安装后重启系统

snapshotter

obj

快照工具配置。请参见`config.elemental.install.snapshotter`参考

弹出 CD

布尔

false

尝试在重启时弹出 CD

如果同时使用 isosystem-uri,则 iso 的值优先。

只需指定 devicedevice-selector 字段之一即可成功安装,其余参数均为可选。

如果同时指定了 devicedevice-selector,则使用 device 的值,忽略 device-selector

点击这里查看详细信息
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
  name: my-nodes
  namespace: fleet-default
spec:
  config:
    elemental:
      install:
        device: /dev/sda
        debug: true
        reboot: true
        eject-cd: true
        system-uri: registry.suse.com/rancher/sle-micro/5.5:latest

config.elemental.install.device-selector

device-selector 字段可用于在安装过程中动态选择设备。该字段包含如下规则的列表:

点击这里查看详细信息
基于设备名称的示例设备选择器
device-selector:
  - key: Name
    operator: In
    values:
      - /dev/sda
      - /dev/vda
      - /dev/nvme0
点击这里查看详细信息
基于设备大小的示例设备选择器
device-selector:
  - key: Size
    operator: Lt
    values:
      - 100Gi
  - key: Size
    operator: Gt
    values:
      - 30Gi

当前支持的操作符有:

运算符 说明

键与提供的值之一匹配

NotIn

键与提供的值都不匹配

Gt

该键大于提供的单个值

Lt

该键小于提供的单个值

当前支持的键有:

说明

名称

设备名称(例如 /dev/sda)

大小

设备大小(值可以使用 Kubernetes 资源指定,例如 100Gi)

规则是通过 AND 连接在一起的,这意味着所有规则必须匹配目标设备。

config.elemental.install.snapshotter

您可以配置 Elemental 如何管理已安装机器上的快照。例如,当 升级 机器时,会为新的操作系统映像创建快照。

loopdevice 快照器将在 ext4 文件系统上解压新镜像,而 btrfs 快照器将利用底层 btrfs 快照 功能,大大减少存储多个快照所需的磁盘空间。

类型 默认值 说明

type

字符串

loopdevice

用于管理操作系统镜像中快照的设备类型('loopdevice' 或 'btrfs')。

config.elemental.reset

包含通过 elemental-register --reset 应用的重置配置,当从恢复分区启动并传递给 elemental reset 时。

支持以下值:

类型 默认值 说明

已启用

布尔

false

从此机器注册创建的 MachineInventories 将启用重置功能

reset-persistent

布尔

true

格式化 COS_PERSISTENT 分区

reset-oem

布尔

true

格式化 COS_OEM 分区

config-urls

list

Cloud-init 配置文件

system-uri

字符串

设置系统映像源及其类型(例如 'docker:registry.org/image:tag'),而不是使用运行中的 .iso 映像。

debug

布尔

false

启用调试输出

关机

布尔

false

在重置后关闭系统

reboot

布尔

true

在重置后重启系统

点击这里查看详细信息
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
  name: my-nodes
  namespace: fleet-default
spec:
  config:
    elemental:
      reset:
        enabled: true
        reset-persistent: true
        reset-oem: true
        reboot: true
        system-uri: registry.suse.com/rancher/sle-micro/5.5:latest

machineName

这指的是将设置为节点的名称,以及需要主机名的 Kubernetes 资源(例如,RKE2 部署的 Pod,它们会将节点主机名作为 Pod 名称的一部分)的 String 类型。

当`elemental:registration:no-smbios`被设置为`false`(默认值)时,machineName会与https://www.dmtf.org/standards/smbios[SMBIOS]数据进行插值,这允许您存储硬件信息。

如果未指定`machineName`,将设置一个默认值,形式为`m-$UUID`。 如果可用,将从SMBIOS数据中检索UUID,否则将生成一个随机UUID。

点击这里查看详细信息
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
  name: my-nodes
  namespace: fleet-default
spec:
  machineName: hostname-test-4

machineInventoryLabels

将设置为从此 MachineRegistration 创建的 MachineInventory 的标签,Key: value 类型。这些标签将用于在MachineInventorySelectorTemplate中建立选择标准。

SUSE® Rancher Prime: OS Manager节点将每24小时运行一次`elemental-register`。
可以更新`machineInventoryLabels`,以便所有注册的节点将在下次成功注册更新时应用新标签。

当`elemental:registration:no-smbios`被设置为`false`(默认值)时,标签会与https://www.dmtf.org/standards/smbios[SMBIOS]数据进行插值。这允许在自定义标签中存储硬件信息。

点击这里查看详细信息
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
  name: my-nodes
  namespace: fleet-default
spec:
  machineInventoryLabels:
    my.prefix.io/element: fire
    my.prefix.io/cpus: 32
    my.prefix.io/manufacturer: "${System Information/Manufacturer}"
    my.prefix.io/productName: "${System Information/Product Name}"
    my.prefix.io/serialNumber: "${System Information/Serial Number}"
    my.prefix.io/machineUUID: "${System Information/UUID}"

machineInventoryAnnotations

将设置为从此 MachineRegistration 创建的 MachineInventory 的注释,Key: value 类型。

点击这里查看详细信息
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
  name: my-nodes
  namespace: fleet-default
spec:
  machineInventoryAnnotations:
    owner: bob
    version: 1.0.0