theforeman.foreman.hostgroup 模块 – 管理主机组

注意

此模块是 theforeman.foreman 集合 (版本 4.2.0) 的一部分。

如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install theforeman.foreman。您需要其他要求才能使用此模块,请参阅 需求 获取详细信息。

要在剧本中使用它,请指定:theforeman.foreman.hostgroup

theforeman.foreman 1.0.0 中的新增功能

摘要

  • 创建、更新和删除主机组

别名:foreman_hostgroup

需求

以下是执行此模块的主机所需的条件。

  • requests

参数

参数

注释

activation_keys

字符串

用于部署的激活密钥。

逗号分隔列表。

仅适用于 Katello 安装。

ansible_roles

列表 / 元素=字符串

theforeman.foreman 2.1.0 中添加

要与主机组关联的 Ansible 角色列表。

必须安装 foreman-ansible 插件才能使用此参数。

architecture

字符串

架构名称

compute_profile

字符串

计算配置文件名称

compute_resource

字符串

计算资源名称

config_groups

列表 / 元素=字符串

配置组列表

content_source

字符串

内容源(具有内容的智能代理)名称。

仅适用于 Katello 安装。

content_view

字符串

内容视图。

仅适用于 Katello 安装。

description

字符串

主机组描述

domain

字符串

域名

environment

字符串

Puppet 环境名称

kickstart_repository

字符串

Kickstart 仓库名称。

您需要提供此参数才能使用“同步内容”功能。

与 *medium* 互斥。

仅适用于 Katello 安装。

lifecycle_environment

字符串

生命周期环境。

仅适用于 Katello 安装。

locations

列表 / 元素=字符串

应将实体分配到的位置列表

medium

别名:media

字符串

介质名称

与 *kickstart_repository* 互斥。

name

字符串 / 必需

主机组名称

openscap_proxy

字符串

OpenSCAP 代理名称。

仅在安装 OpenSCAP 插件后可用。

operatingsystem

字符串

操作系统按其标题查找,标题的格式为“<名称> <主版本>.<次版本>”。

只要您只有一个同名的操作系统,就可以省略版本部分。

organization

字符串

附加到主机组的范围资源的组织。

仅用于 Katello 安装。

如果需要,此组织将隐式添加到 *organizations* 参数中。

organizations

列表 / 元素=字符串

应将实体分配到的组织列表

parameters

列表 / 元素=字典

主机组特定的主机参数

name

字符串 / 必需

参数名称

parameter_type

字符串

参数类型

选项

  • "string" ← (默认)

  • "boolean"

  • "integer"

  • "real"

  • "array"

  • "hash"

  • "yaml"

  • "json"

value

任意 / 必需

参数的值

parent

字符串

主机组父级名称

password

字符串 / 必需

访问 Foreman 服务器的用户的密码。

如果任务中未指定该值,则将改用环境变量 FOREMAN_PASSWORD 的值。

ptable

字符串

分区表名称

puppet_ca_proxy

字符串

Puppet CA 代理名称

puppet_proxy

字符串

Puppet 服务器代理名称

puppetclasses

列表 / 元素=字符串

要包含在此主机组中的 Puppet 类列表。必须存在于主机组的 Puppet 环境中。

pxe_loader

字符串

PXE 引导加载程序

选项

  • "PXELinux BIOS"

  • "PXELinux UEFI"

  • "Grub UEFI"

  • "Grub2 BIOS"

  • "Grub2 ELF"

  • "Grub2 UEFI"

  • "Grub2 UEFI SecureBoot"

  • "Grub2 UEFI HTTP"

  • "Grub2 UEFI HTTPS"

  • "Grub2 UEFI HTTPS SecureBoot"

  • "iPXE Embedded"

  • "iPXE UEFI HTTP"

  • "iPXE Chain BIOS"

  • "iPXE Chain UEFI"

  • "None"

领域

字符串

领域名称

root_pass

字符串

Root 密码。

将导致实体始终被更新,因为无法检索当前密码。

server_url

字符串 / 必需

Foreman 服务器的 URL。

如果任务中未指定此值,则将使用环境变量FOREMAN_SERVER_URL的值。

状态

字符串

实体的状态

选项

  • "present" ← (默认)

  • "absent"

子网

字符串

IPv4 子网名称

subnet6

字符串

IPv6 子网名称

updated_name

字符串

主机组的新名称。设置此参数后,模块将不再是幂等的。

用户名

字符串 / 必需

访问 Foreman 服务器的用户名。

如果任务中未指定此值,则将使用环境变量FOREMAN_USERNAME的值。

validate_certs

布尔值

是否验证 Foreman 服务器的 TLS 证书。

如果任务中未指定此值,则将使用环境变量FOREMAN_VALIDATE_CERTS的值。

选项

  • false

  • true ← (默认)

属性

属性

支持

描述

check_mode

支持: 完全支持

可以在 check_mode 下运行,并在不修改实体的情况下返回更改状态预测。

diff_mode

支持: 完全支持

在 diff 模式下,将返回有关已更改内容(或在 check_mode 下可能需要更改的内容)的详细信息。

示例

- name: "Create a Hostgroup"
  theforeman.foreman.hostgroup:
    name: "new_hostgroup"
    architecture: "architecture_name"
    operatingsystem: "operatingsystem_name"
    medium: "media_name"
    ptable: "Partition_table_name"
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: "Update a Hostgroup"
  theforeman.foreman.hostgroup:
    name: "new_hostgroup"
    architecture: "updated_architecture_name"
    operatingsystem: "updated_operatingsystem_name"
    organizations:
      - Org One
      - Org Two
    locations:
      - Loc One
      - Loc Two
      - Loc One/Nested loc
    medium: "updated_media_name"
    ptable: "updated_Partition_table_name"
    root_pass: "password"
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: "My nested hostgroup"
  theforeman.foreman.hostgroup:
    parent: "new_hostgroup"
    name: "my nested hostgroup"

- name: "My hostgroup with some proxies"
  theforeman.foreman.hostgroup:
    name: "my hostgroup"
    environment: production
    puppet_proxy: puppet-proxy.example.com
    puppet_ca_proxy: puppet-proxy.example.com
    openscap_proxy: openscap-proxy.example.com

- name: "My katello related hostgroup"
  theforeman.foreman.hostgroup:
    organization: "My Org"
    name: "kt hostgroup"
    content_source: capsule.example.com
    lifecycle_environment: "Production"
    content_view: "My content view"
    parameters:
      - name: "kt_activation_keys"
        value: "my_prod_ak"

- name: "Delete a Hostgroup"
  theforeman.foreman.hostgroup:
    name: "new_hostgroup"
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: absent

返回值

常见的返回值已在此处记录,以下是此模块特有的字段。

描述

实体

字典

受影响实体的最终状态,按其类型分组。

返回: 成功

主机组

列表 / 元素=字典

主机组列表。

返回: 成功

作者

  • Manisha Singhal (@Manisha15) ATIX AG

  • Baptiste Agasse (@bagasse)