A.7. 特定于主机的变量
以下变量启用在模板中使用主机数据。请注意,作业模板仅接受 @host
变量。
名称 | Description |
---|---|
@host.architecture | 主机的架构。 |
@host.bond_interfaces | 返回所有绑定接口的数组。请参阅 第 A.10 节 “parsing Arrays”。 |
@host.capabilities | 系统调配方法,可以是构建(如 kickstart)或镜像。 |
@host.certname | 主机的 SSL 证书名称。 |
@host.diskLayout | 主机的磁盘布局。可以从操作系统继承。 |
@host.domain | 主机的域。 |
@host.environment 已弃用 使用 | 主机的 Puppet 环境。 |
@host.facts | 从 Facter 返回 Ruby 事实哈希。例如,若要访问输出中的 'ipaddress' 事实,请指定 @host.facts['ipaddress']。 |
@host.grub_pass | 返回主机的引导装载程序密码。 |
@host.hostgroup | 主机的主机组。 |
host_enc['parameters'] | 返回包含主机参数信息的 Ruby 哈希。例如,使用 host_enc['parameters']['lifecycle_environment'] 获取主机的生命周期环境。 |
@host.image_build? |
如果使用镜像置备主机,则返回 |
@host.interfaces | 包含包括主接口在内的所有可用主机接口的数组。请参阅 第 A.10 节 “parsing Arrays”。 |
@host.interfaces_with_identifier('IDs') | 返回带有给定标识符的接口数组。您可以将多个标识符数组作为输入传递,如 @host.interfaces_with_identifier (['eth0', 'eth1'])。请参阅 第 A.10 节 “parsing Arrays”。 |
@host.ip | 主机的 IP 地址。 |
@host.location | 主机的位置。 |
@host.mac | 主机的 MAC 地址。 |
@host.managed_interfaces | 返回一组受管接口(不包括 BMC 和绑定接口)。请参阅 第 A.10 节 “parsing Arrays”。 |
@host.medium | 分配的操作系统安装介质。 |
@host.name | 主机的全名。 |
@host.operatingsystem.family | 操作系统系列。 |
@host.operatingsystem.major | 分配的操作系统的主要版本号。 |
@host.operatingsystem.minor | 分配的操作系统的次要版本号。 |
@host.operatingsystem.name | 分配的操作系统名称。 |
@host.operatingsystem.boot_files_uri(medium_provider) | 内核和 initrd 的完整路径,返回一个数组。 |
@host.os.medium_uri(@host) | 用于置备的 URI (安装介质中配置的路径)。 |
host_param('parameter_name') | 返回指定主机参数的值。 |
host_param_false?('parameter_name') |
如果指定的 host 参数评估为 |
host_param_true?('parameter_name') |
如果指定的 host 参数评估为 |
@host.primary_interface | 返回主机的主接口。 |
@host.provider | 计算资源提供程序。 |
@host.provision_interface | 返回主机的调配接口。返回 interface 对象。 |
@host.ptable | 分区表名称。 |
@host.puppet_ca_server 已弃用 使用 | 主机必须使用的 Puppet CA 服务器。 |
@host.puppetmaster 已弃用 使用 | 主机必须使用的 Puppet 服务器。 |
@host.pxe_build? |
如果使用网络或 PXE 置备主机,则返回 |
@host.shortname | 主机的短名称。 |
@host.sp_ip | BMC 接口的 IP 地址。 |
@host.sp_mac | BMC 接口的 MAC 地址。 |
@host.sp_name | BMC 接口的名称。 |
@host.sp_subnet | BMC 网络的子网。 |
@host.subnet.dhcp |
如果为这个主机配置了 DHCP 代理,则返回 |
@host.subnet.dns_primary | 主机的主 DNS 服务器。 |
@host.subnet.dns_secondary | 主机的辅助 DNS 服务器。 |
@host.subnet.gateway | 主机网关。 |
@host.subnet.mask | 主机的子网掩码。 |
@host.url_for_boot(:initrd) | 与此主机关联的 initrd 镜像的完整路径。不建议,因为它不进行插入变量。 |
@host.url_for_boot(:kernel) | 与此主机关联的内核的完整路径。不建议,因为它不进行插入变量,首选 boot_files_uri。 |
@provisioning_type | 根据调配类型,等于 'host' 或 'hostgroup'。 |
@static |
如果网络配置是静态的,则返回 |
@template_name | 被呈现的模板的名称。 |
grub_pass | 返回一个 bootloader 参数,以设置加密的引导装载程序密码,如 --md5pass=114{@host.grub_pass}。 |
ks_console | 返回使用端口编译的字符串,以及可添加到内核行的主机的 baud 速率。例如 console=ttyS1,9600。 |
root_pass | 返回为系统配置的根密码。 |
大多数常见 Ruby 方法都可以应用到特定于主机的变量。例如,要提取主机 IP 地址的最后一部分,您可以使用:
<% @host.ip.split('.').last %>