2.5. 创建主机组


如果您创建大量主机,则许多主机都可以具有通用的设置和属性。为每个新主机添加这些设置和属性是耗时的。如果使用主机组,您可以将通用属性应用到您创建的主机。

主机组充当常见主机设置的模板,包含您提供给主机的许多相同详情。当您使用主机组创建主机时,主机会从主机组继承定义的设置。然后,您可以提供额外的详细信息来个性化主机。

主机组层次结构

您可以创建主机组的层次结构。目的是提供一个基本级别主机组,它代表您组织中的所有主机并提供常规设置,然后嵌套组来提供特定的设置。例如,您可以有一个基本级别主机组来定义操作系统,以及继承基本级别主机组的两个嵌套主机组:

  • hostgroup: Base (Red Hat Enterprise Linux 7.6)

    • hostgroup:Web server (应用 httpd Puppet 类)

      • 主机: webserver1.example.com (Web 服务器)
      • 主机: webserver2.example.com (Web 服务器)
    • hostgroup: 存储 (适用于 nfs Puppet 类)

      • 主机: storage1.example.com (存储服务器)
      • 主机: storage2.example.com (存储服务器)
    • 主机: custom.example.com (自定义主机)

在本例中,由于 Base 主机组的继承,所有主机都使用 Red Hat Enterprise Linux 7.6 作为其操作系统。两个 Web 服务器主机继承 Webserver 主机组中的设置,其中包括 httpd Puppet 类以及 Base 主机组中的设置。这两个存储服务器从 Storage 主机组继承设置,其中包括 nfs Puppet 类以及 Base 主机组中的设置。自定义主机仅继承 Base 主机组中的设置。

流程

  1. 在 Satellite Web UI 中,导航到 Configure > Host Groups,再点 Create Host Group
  2. 如果您有一个要从中继承属性的现有主机组,您可以从 Parent 列表中选择一个主机组。如果没有,请将此字段留空。
  3. 输入新 主机组的名称
  4. 输入您希望将来的主机继承的任何其他信息。
  5. 单击 Ansible Roles 选项卡,然后从 Ansible Roles 列表中选择您要添加到主机的一个或多个角色。使用 箭头图标 管理添加或删除的角色。
  6. 单击附加选项卡,并将您要属性的任何详细信息添加到主机组中。

    注意

    Puppet 在将主机注册到与 Production 环境中创建的 Puppet 环境关联的主机组时,无法检索 Puppet CA 证书。

    要创建与主机组关联的适当 Puppet 环境,请手动创建目录并更改所有者:

    # mkdir /etc/puppetlabs/code/environments/example_environment
    # chown apache /etc/puppetlabs/code/environments/example_environment
  7. 单击 Submit 以保存主机组。

对于 CLI 用户

使用 hammer hostgroup create 命令创建主机组。例如:

# hammer hostgroup create --name "Base" \
--lifecycle-environment "Production" --content-view "Base" \
--puppet-environment "production" --content-source-id 1 \
--puppet-ca-proxy-id 1 --puppet-proxy-id 1 --domain "example.com" \
--subnet `ACME's Internal Network` --architecture "x86_64" \
--operatingsystem "RedHat 7.2" --medium-id 9 \
--partition-table "Kickstart default" --root-pass "p@55w0rd!" \
--locations "New York" --organizations "ACME"
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.