11.3. 置备发现的主机


在 Satellite 服务器和 Capsule 服务器上正确配置了发现插件后,您可以自动检测裸机主机。要做到这一点,请在任何使用 第 11.1.2 节 “配置 PXE 引导” 中描述的 PXE 配置模板配置的 provisioning 网络中引导机器。计算机自动注册到 Satellite 服务器,并出现在 Satellite Web UI 中的 Hosts Discovered Hosts 列表中。
您可以手动置备发现的主机,也可以配置自动置备。

11.3.1. 手动置备主机

以下流程描述了如何从 Satellite Web UI 手动置备发现的主机。

过程 11.2. 手动置备发现的主机:

  1. 前往 Hosts Discovered Hosts
  2. 选择您要调配的主机,再单击 Provision
  3. 在主机的 Edit 页面中,完成所需详情,然后单击 Save
保存主机配置后,Satellite 会在 TFTP 服务器上修改主机的 PXELinux 文件,然后重新启动发现的主机。然后,它会引导到所选操作系统的安装程序,最后进入安装的操作系统。
如果您决定重新置备现有的发现的主机,请从机器中删除操作系统并重启它。然后,主机会在 Discovered Hosts 页面中重新显示。

11.3.2. 停用发现的主机

如果您不再需要 Red Hat Satellite 管理特定主机,您需要停用该主机以防止被发现。

过程 11.3. 禁止发现的主机:

  1. 关闭主机。
  2. 前往 Hosts Discovered Hosts
  3. Name 列中找到您要停用的主机,然后从对应的 Edit 下拉菜单中选择 Delete

11.3.3. 自动配置主机

使用 Satellite 6.2 时,可以定义调配规则,将主机组分配到调配的主机并自动触发调配。

过程 11.4. 要创建置备规则,请执行以下操作:

  1. 导航到 Configure Discovery rules
  2. 单击 New Rule。指定置备规则的以下参数:
    • name 是规则列表中显示的规则的名称。此名称不得包含空格或非字母数字字符。
    • search 是用于匹配特定规则发现的主机的 search 语句。您可以使用范围搜索语法进行定义。有关使用范围搜索的示例,请参阅 第 11.3.4 节 “有范围搜索语法”
    • 在开始置备过程前,主机组 是要分配给匹配主机的主机组。确保所选主机组已设置了所有必要的参数;所需参数被标记为星号 unicode。
    • hostname 定义为匹配的主机分配人类可读的主机名的模式。当留空时,主机名默认以"macMACADDRESS"格式分配。此实例中使用了与调配模板相同的语法。如需更多信息和示例,请参阅 第 11.3.5 节 “主机名模式”
    • 主机限制是 每个规则置备的主机的最大数量。如果达到限制,则规则在一个或多个主机被删除后才会生效。典型的用例是每个服务器机架或行的规则,当需要更改置备参数,如每个条目的主机名或主机组等。您可以将这个值设置为 0 (0)来指定限制。
    • priority 指定规则的执行顺序。该值必须大于或等于零。较低值表示优先级更高。如果两个规则具有相同的优先级,则应用第一个规则。
    • Enabled 提供用于临时启用或禁用规则的选项。
  3. 单击 Submit 以保存该规则。
默认情况下,Satellite 不启用主机自动发现。以下流程描述了如何启用 discovery_auto 变量根据指定规则提供自动置备。

过程 11.5. 启用自动置备:

  1. 在 Satellite Web UI 中,导航到 Administer Settings Discovered
  2. Name 列中找到 discovery_auto,并将其值设为 true
  3. 点击 Save
在定义了一些规则后,红帽建议您发现主机,并使用主机上的 Auto discover 按钮应用规则。这会触发自动置备,而无需启用全局选项。

11.3.4. 有范围搜索语法

本节介绍如何使用范围搜索语法根据所选参数过滤发现的主机。这在为自动置备创建规则时很有用(请参阅 第 11.3.3 节 “自动配置主机”)。
Satellite Web UI 中的搜索字段支持自动完成,以便更轻松地构建搜索字符串。例如,您可以在 Hosts Discovered Hosts 页面中测试搜索模式。以下是典型的搜索查询示例:
  • facts.architecture = x86_64
  • facts.bios_vendor ~ 'Dell*'
  • facts.macaddress = "aa:bb:cc:dd:ee:ff"
  • facts.macaddress_eth0 = "aa:bb:cc:dd:ee:ff"
  • facts.ipaddress_eth1 ~ "192.168.*"
  • facts.architecture ^(x86_64,i386)
注意
在有范围搜索中的 caret 符号(^)表示"in" (与 SQL 中相同)的使用,而不是"开始与正则表达式中使用的一样。您可以在以下位置查看范围搜索操作符的完整列表 https://github.com/wvanbergen/scoped_search/blob/master/lib/scoped_search/query_language/tokenizer.rb
在 Satellite 6.2 中,所有事实都是字符串,因此无法进行数字比较。但是,提取三个重要事实并将其转换为数字。它们在 表 11.1 “允许数字比较的事实” 中进行了描述。
Expand
表 11.1. 允许数字比较的事实
搜索参数描述用法示例
cpu_count CPU 数量 cpu_count >= 8
disk_count 附加的磁盘数 disk_count < 10
disks_size 磁盘空间总量(以 MiB 为单位) disks_size > 1000000

11.3.5. 主机名模式

本节列出了您在为自动置备创建规则时使用的主机名模式(请参阅 第 11.3.3 节 “自动配置主机”)。
目标主机名模板模式的语法与调配模板(ERB)相同。域会自动附加。除了 @host 属性外,还提供随机整数的 rand() 功能。例如:
  • application-server-<%= rand(99999) %>
  • load-balancer-<%= @host.facts['bios_vendor'] + '-' + rand (99999)%>
  • wwwsrv-<%= @host.hostgroup.name %>
  • minion-<%= @host.discovery_rule.name %>
  • db-server-<%= @host.ip.gsub('.','-') + '-' + @host.hostgroup.subnet.name %>>
重要
在创建主机名模式时,请确保生成的主机名是唯一的。主机名不能以数字开头。最好是使用 Facter (如 MAC 地址、BIOS 或串行 ID)或随机化主机名提供的唯一信息。

11.3.6. 在命令行中使用发现插件

您可以使用 hammer 命令来执行某些与发现相关的任务。运行 hammer -h 命令来验证您的配置:
$ hammer -h | grep discovery
 discovery                     Manipulate discovered hosts.
 discovery_rule                Manipulate discovered rules.
Copy to Clipboard Toggle word wrap
使用 hammer discovery -h 命令查看可用选项。例如,您可以使用以下命令重新引导发现的主机(假设其 ID 为 130):
$ hammer discovery reboot -id 130
Host reboot started
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat