community.general.ipa_service 模块 – 管理 FreeIPA 服务

注意

此模块是 community.general 集合(版本 10.1.0)的一部分。

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

要安装它,请使用: ansible-galaxy collection install community.general

要在 playbook 中使用它,请指定:community.general.ipa_service

概要

  • 使用 IPA API 添加和删除 IPA 服务。

参数

参数

注释

force

布尔值

即使主机不在 DNS 中也强制使用主体名称。

选择

  • false

  • true

hosts

列表 / elements=字符串

定义“ManagedBy”主机的列表。

ipa_host

字符串

IPA 服务器的 IP 或主机名。

如果在任务中未指定值,则将改为使用环境变量 IPA_HOST 的值。

如果任务中未指定环境变量 IPA_HOST 和值,则将使用 DNS 尝试发现 FreeIPA 服务器。

FreeIPA 中需要的相关条目是 ipa-ca 条目。

如果任务中没有 DNS 条目、环境变量 IPA_HOST 和值,则将使用默认值。

默认: "ipa.example.com"

ipa_pass

字符串

管理用户的密码。

如果在任务中未指定值,则将改为使用环境变量 IPA_PASS 的值。

请注意,如果 urllib_gssapi 库可用,则可以使用 GSSAPI 对 FreeIPA 进行身份验证。

如果环境变量 KRB5CCNAME 可用,则模块将使用此 Kerberos 凭据缓存对 FreeIPA 服务器进行身份验证。

如果环境变量 KRB5_CLIENT_KTNAME 可用,并且没有 KRB5CCNAME;则模块将使用此 Kerberos 密钥表进行身份验证。

如果 GSSAPI 不可用,则需要使用 ipa_pass

ipa_port

整数

FreeIPA / IPA 服务器的端口。

如果在任务中未指定值,则将改为使用环境变量 IPA_PORT 的值。

如果任务中未指定环境变量 IPA_PORT 和值,则会设置默认值。

默认: 443

ipa_prot

字符串

IPA 服务器使用的协议。

如果在任务中未指定值,则将改为使用环境变量 IPA_PROT 的值。

如果任务中未指定环境变量 IPA_PROT 和值,则会设置默认值。

选择

  • "http"

  • "https" ← (默认)

ipa_timeout

整数

指定连接的空闲超时(以秒为单位)。

对于批量操作,您可能需要增加此值,以避免来自 IPA 服务器的超时。

如果在任务中未指定值,则将改为使用环境变量 IPA_TIMEOUT 的值。

如果任务中未指定环境变量 IPA_TIMEOUT 和值,则会设置默认值。

默认: 10

ipa_user

字符串

在 IPA 服务器上使用的管理帐户。

如果在任务中未指定值,则将改为使用环境变量 IPA_USER 的值。

如果任务中未指定环境变量 IPA_USER 和值,则会设置默认值。

默认: "admin"

krbcanonicalname

别名:name

字符串 / 必需

服务的主体。

不能更改,因为它是唯一的标识符。

skip_host_check

布尔值

在 community.general 4.7.0 中添加

即使主机对象不存在来管理该服务,也强制创建该服务。

这仅在创建时使用,不用于更新现有服务。

选择

  • false ← (默认)

  • true

state

字符串

要确保的状态。

选择

  • "absent"

  • "present" ← (默认)

validate_certs

布尔值

仅当 ipa_prothttps 时适用。

如果设置为 false,则不会验证 SSL 证书。

仅当在个人控制的站点上使用自签名证书时,才应将其设置为 false

选择

  • false

  • true ← (默认)

属性

属性

支持

描述

check_mode

支持:完整

可以在 check_mode 下运行,并返回更改状态预测,而无需修改目标。

diff_mode

支持:

当处于差异模式时,将返回有关已更改(或可能需要在 check_mode 中更改)的详细信息。

示例

- name: Ensure service is present
  community.general.ipa_service:
    name: http/host01.example.com
    state: present
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

- name: Ensure service is absent
  community.general.ipa_service:
    name: http/host01.example.com
    state: absent
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

- name: Changing Managing hosts list
  community.general.ipa_service:
    name: http/host01.example.com
    hosts:
       - host01.example.com
       - host02.example.com
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

返回值

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

描述

service

字典

由 IPA API 返回的服务。

返回: 总是

作者

  • Cédric Parent (@cprh)