microsoft.ad.domain_controller 模块 – 管理 Windows 主机的域控制器/成员服务器状态

注意

此模块是 microsoft.ad 集合 (版本 1.7.1) 的一部分。

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

要安装它,请使用:ansible-galaxy collection install microsoft.ad

要在 playbook 中使用它,请指定:microsoft.ad.domain_controller

概要

  • 确保将 Windows Server 2012+ 主机配置为域控制器或降级为成员服务器。

  • 如果进行了更改,此模块可能需要随后使用 ansible.windows.win_reboot 操作。

注意

此模块具有相应的 action 插件

参数

参数

注释

database_path

路径

Windows 主机固定磁盘上目录的路径,将在其中创建域数据库。

如果未设置,则默认路径为 %SYSTEMROOT%\NTDS

dns_domain_name

字符串

state=domain_controller 时,目标 Windows 主机应作为 DC 的域的 DNS 名称。

domain_admin_password

字符串 / 必需

指定 domain_admin_user 的密码。

domain_admin_user

字符串 / 必需

目标域的域管理员用户名(提升或降级域控制器所需)。

domain_log_path

路径

指定本地计算机固定磁盘上目录的完全限定的非 UNC 路径,该目录将包含域日志文件。

install_dns

布尔值

创建域控制器时是否安装 DNS 服务。

如果未指定,则不向 Install-ADDSDomainController 命令提供 -InstallDns 选项,请参见 Install-ADDSDomainController

选项

  • false

  • true

install_media_path

路径

Windows 主机固定磁盘上目录的路径,将在其中使用“从介质安装”IFC 数据。

有关更多信息,请参见 使用 IFM 安装指南

local_admin_password

字符串

要分配给本地 Administrator 用户的密码(当 state=member_server 时必需)。

read_only

布尔值

是否将域控制器安装为现有域的只读副本。

选项

  • false ← (默认)

  • true

reboot

布尔值

如果为 true,则如果模块需要重新启动,则会重新启动主机。

如果为 false,则如果需要重新启动,则不会重新启动主机,而是将 reboot_required 返回值设置为 true

不能与异步模式一起使用。

选项

  • false ← (默认)

  • true

reboot_timeout

整数

在 microsoft.ad 1.7.0 中添加

重新启动后等待机器重新出现并响应测试命令的最大秒数。

此超时分别针对重新启动验证和测试命令成功进行评估,因此总超时可能是此值的两倍。

默认: 600

safe_mode_password

字符串

域控制器的安全模式密码(当 state=domain_controller 时必需)。

site_name

字符串

指定可以放置新域控制器的现有站点的名称。

read_only=true 时,此选项是必需的。

state

字符串 / 必需

目标主机应该是域控制器还是成员服务器。

选项

  • "domain_controller"

  • "member_server"

sysvol_path

路径

Windows 主机固定磁盘上目录的路径,将在其中创建 Sysvol 文件夹。

如果未设置,则默认路径为 %SYSTEMROOT%\SYSVOL

属性

属性

支持

描述

action

支持:完全支持

指示其具有相应的 action 插件,因此可以在控制器上执行某些选项部分

async

支持:部分支持

reboot=True 外,所有场景都支持。

支持与 async 关键字一起使用

bypass_host_loop

支持:不支持

强制执行不会按主机执行的“全局”任务,这将绕过按主机进行的模板化以及串行、节流和其他循环考虑因素

条件将像使用 run_once 一样工作,使用的变量将来自第一个可用主机

此操作通常不会在步调一致的策略之外工作

check_mode

支持:完全支持

可以在 check_mode 下运行并返回更改状态预测,而无需修改目标,如果不受支持,则操作将被跳过。

diff_mode

支持:不支持

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

platform

平台: Windows

可以对其进行操作的目标操作系统/系列

备注

注意

  • 强烈建议将 reboot=true 设置为让 Ansible 管理主机重新启动阶段,因为此模块执行的操作会使主机处于 Ansible 可能无法在后续任务中重新连接而无需重新启动的状态。

  • 此模块必须在 Windows 目标主机上运行。

  • 如果使用reboot=true,如果主机在域提升之前需要重启,则可能会发生多次重启。同时确保在任务中使用了完全限定的模块名称,或者collections关键字包含此集合。

另见

另见

microsoft.ad.computer

管理Active Directory计算机对象。

microsoft.ad.domain

确保Windows域的存在。

microsoft.ad.domain_child

在现有的Active Directory森林中管理域子域。

microsoft.ad.group

管理Active Directory组对象。

microsoft.ad.membership

管理Windows主机的域/工作组成员身份。

microsoft.ad.user

管理Active Directory用户。

迁移指南

此模块替换了ansible.windows.win_domain_controller。详情请参阅迁移指南。

ansible.windows.win_domain_controller

管理Windows主机的域控制器/成员服务器状态。

示例

- name: Ensure a server is a domain controller
  microsoft.ad.domain_controller:
    dns_domain_name: ansible.vagrant
    domain_admin_user: [email protected]
    domain_admin_password: password123!
    safe_mode_password: password123!
    state: domain_controller
    reboot: true

- name: Ensure a server is not a domain controller
  microsoft.ad.domain_controller:
    domain_admin_user: [email protected]
    domain_admin_password: password123!
    local_admin_password: password123!
    state: member_server
    reboot: true

- name: Promote server as a read only domain controller
  microsoft.ad.domain_controller:
    dns_domain_name: ansible.vagrant
    domain_admin_user: [email protected]
    domain_admin_password: password123!
    safe_mode_password: password123!
    state: domain_controller
    read_only: true
    site_name: London
    reboot: true

# This scenario is not recommended, use reboot: true when possible
- name: Promote server with custom paths with manual reboot task
  microsoft.ad.domain_controller:
    dns_domain_name: ansible.vagrant
    domain_admin_user: [email protected]
    domain_admin_password: password123!
    safe_mode_password: password123!
    state: domain_controller
    sysvol_path: D:\SYSVOL
    database_path: D:\NTDS
    domain_log_path: D:\NTDS
  register: dc_promotion

- name: Reboot after promotion
  ansible.windows.win_reboot:
  when: dc_promotion.reboot_required

返回值

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

描述

reboot_required

布尔值

如果进行了需要重启的更改,则为True。

返回:始终

示例:true

作者

  • Matt Davis (@nitzmahone)

  • Jordan Borean (@jborean93)