3.4. 基于镜像的置备的先决条件


启动后配置方法

使用 完成后配置脚本 的镜像需要托管的 DHCP 服务器,例如,您的 Satellite 服务器或 Capsule 服务器。主机必须创建有与 DHCP 胶囊关联的子网,并且主机的 IP 地址必须是 DHCP 范围内的有效 IP 地址。

可以使用外部 DHCP 服务,但必须手动输入 IP 地址。必须在 Satellite 中配置与镜像中配置与配置对应的 SSH 凭据,以便进行启动后配置。

在对从依赖于安装后配置脚本的镜像引导时检查以下项目:

  • 主机在 Satellite 服务器中分配了子网。
  • 子网在 Satellite 服务器中分配了 DHCP 胶囊。
  • 主机具有在 Satellite 服务器中分配的有效 IP 地址。
  • 使用 DHCP 获取的 IP 地址与 Satellite 服务器中配置的地址匹配。
  • 从镜像创建的虚拟机响应 SSH 请求。
  • 从镜像创建的虚拟机通过 SSH 授权用户和密码,与要部署的镜像相关联。
  • Satellite 服务器能够通过 SSH 密钥访问虚拟机。虚拟机需要这才能从 Satellite 服务器接收安装后配置脚本。

预引导初始化配置方法

使用 cloud-init 脚本的镜像需要 DHCP 服务器以避免在镜像中包含 IP 地址。首选受管 DHCP 胶囊。镜像必须将 cloud-init 服务配置为在系统引导时启动,并获取要完成配置时使用的脚本或配置数据。

在对从依赖于镜像中包含的初始化脚本的镜像进行故障排除时,检查以下项目:

  • 子网中有一个 DHCP 服务器。
  • 虚拟机已安装并启用了 cloud-init 服务。

有关虚拟机镜像中完成和 cloud-init 脚本的支持级别的信息,请参阅红帽知识库解决方案在红帽客户门户网站中 支持的完整计算资源和 cloud-init 脚本

3.4.1. 使用安装程序的多个子网或域

satellite-installer 选项只允许单个 DHCP 子网或 DNS 域。定义多个子网的一种方法是使用自定义配置文件。

对于每个额外的子网或域,在 /etc/foreman-installer/custom-hiera.yaml 文件中创建一个条目:

dhcp::pools:
 isolated.lan:
   network: 192.168.99.0
   mask: 255.255.255.0
   gateway: 192.168.99.1
   range: 192.168.99.5 192.168.99.49

dns::zones:
  # creates @ SOA $::fqdn root.example.com.
  # creates $::fqdn A $::ipaddress
  example.com: {}

  # creates @ SOA test.example.net. hostmaster.example.com.
  # creates test.example.net A 192.0.2.100
  example.net:
    soa: test.example.net
    soaip: 192.0.2.100
    contact: hostmaster.example.com.

  # creates @ SOA $::fqdn root.example.org.
  # does NOT create an A record
  example.org:
    reverse: true

  # creates @ SOA $::fqdn hostmaster.example.com.
  2.0.192.in-addr.arpa:
    reverse: true
    contact: hostmaster.example.com.
Copy to Clipboard Toggle word wrap

执行 satellite-installer 来执行更改,并验证 /etc/dhcp/dhcpd.conf 是否包含适当的条目。然后,必须在 Satellite 数据库中定义子网。

3.4.2. 网络配置的 DNS 选项

--foreman-proxy-dns
启用 DNS 功能。您可以将这个选项设置为 truefalse
--foreman-proxy-dns-provider
选择要使用的提供程序。
--foreman-proxy-dns-managed
让安装程序管理 ISC BIND。这只有在使用 nsupdatensupdate_gss 供应商时才相关。您可以将这个选项设置为 truefalse
--foreman-proxy-dns-forwarders
设置 DNS 转发器。仅在由安装程序管理 ISC BIND 时使用。把它设置为您的 DNS 递归器。
--foreman-proxy-dns-interface
将接口设置为侦听 DNS 请求。仅在由安装程序管理 ISC BIND 时使用。把它设置为 eth1
--foreman-proxy-dns-reverse
DNS 反向区名称。仅在由安装程序管理 ISC BIND 时使用。
--foreman-proxy-dns-server
设置 DNS 服务器的地址。仅供 nsupdatensupdate_gssinfoblox 供应商使用。
--foreman-proxy-dns-zone
设置 DNS 区域名称。仅在由安装程序管理 ISC BIND 时使用。

运行 satellite-installer --help 来查看与 DNS 和其他 Capsule 服务相关的更多选项。

3.4.3. 用于网络配置的 TFTP 选项

--foreman-proxy-tftp
启用 TFTP 服务。您可以将这个选项设置为 truefalse
--foreman-proxy-tftp-managed
启用 Foreman 管理 TFTP 服务。您可以将这个选项设置为 truefalse
--foreman-proxy-tftp-servername
设置要使用的 TFTP 服务器。确保您使用胶囊的 IP 地址。

运行 satellite-installer --help 来查看与 TFTP 和其他 Capsule 服务相关的更多选项。

3.4.4. 通过 NAT 使用 TFTP 服务

您可以通过 NAT 使用 Satellite TFTP 服务。要做到这一点,在所有 NAT 路由器或防火墙上,您必须在 UDP 端口 69 上启用 TFTP 服务并启用 TFTP 状态跟踪功能。如需更多信息,请参阅您的 NAT 设备文档。

在 Red Hat Enterprise Linux 7 中使用 NAT:

  1. 在防火墙配置中允许 TFTP 服务:

    # firewall-cmd --add-service=tftp
    Copy to Clipboard Toggle word wrap
  2. 使更改具有持久性:

    # firewall-cmd --runtime-to-permanent
    Copy to Clipboard Toggle word wrap

在 Red Hat Enterprise Linux 6 中使用 NAT:

  1. 配置防火墙以允许在端口 69 上允许 TFTP 服务 UDP:

    # iptables \
    --sport 69 \
    --state ESTABLISHED \
    -A OUTPUT \
    -i eth0 \
    -j ACCEPT \
    -m state \
    -p udp
    # service iptables save
    Copy to Clipboard Toggle word wrap
  2. 加载 ip_conntrack_tftp 内核 TFTP 状态模块。在 /etc/sysconfig/iptables-config 文件中,找到 IPTABLES_MODULES 并添加 ip_conntrack_tftp,如下所示:

    IPTABLES_MODULES="ip_conntrack_tftp"
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat