This module will install the adcli package and Join Active Directory using adcli.
This module will run 'adcli join domain' on the target node which creates a computer account in the domain for the local machine, and sets up a keytab.
Example:
class {'::adcli':
ad_domain => 'ad.example.com',
ad_join_username => 'username',
ad_join_password => 'secret',
ad_join_ou => 'ou=container,dc=example,dc=com'
}
With optional parameters:
class {'::adcli':
ad_domain => 'ad.example.com',
ad_join_username => 'username',
ad_join_password => 'secret',
ad_join_ou => 'ou=container,dc=example,dc=com',
ad_join_domain_controller => 'dc01.example.com',
ad_join_service_names => ['spn1', 'spn2']
ad_join_computer_name => 'TEST-CENTOS-76',
ad_join_os => 'CentOS',
ad_join_os_version => '7',
ad_join_os_service_pack => '6'
}
Using hiera:
adcli::ad_domain: 'ad.example.com'
adcli::ad_join_username: 'username'
adcli::ad_join_password: 'secret'
adcli::ad_join_ou: 'ou=container,dc=example,dc=com'
adcli::ad_join_domain_controller: 'dc01.example.com'
adcli::ad_join_service_names:
- spn1
- spn2
adcli::ad_join_computer_name: 'TEST-CENTOS-76'
adcli::ad_join_os: 'CentOS'
adcli::ad_join_os_version: '7'
adcli::ad_join_os_service_pack: '6'
ad_domain
Defines the Active Directory domain to join
Type: string
Default: undef
ad_join_username
Defines the Active Directory username to use during domain join operations.
Type: string
Default: undef
$ad_join_password
Defines the Active Directory password to use during domain join operations. hiera-eyaml should be used for secure storage of this password.
Type: string
Default: undef
$ad_join_ou
Defines the Active Directory organizational unit to use during domain join operations.
Type: string
Default: undef
$ad_join_domain_controller
(optional) Specify which domain controller to use during the join operation.
Type: string
Default: undef
$ad_join_service_names
(optional) Specify additional kerberos service principals to be created on the account.
Type: array
Default: []
$ad_join_computer_name
(optional) Specify a custom computer name to use during the join operation. This equates to the
sAMAccountName property in Active Directory.
Type: string
Default: undef
$ad_join_os
(optional) Populates the Active Directory value for Operating System Name.
Type: string
Default: undef
$ad_join_os_version
(optional) Populates the Active Directory value for Operating System Version.
Type: string
Default: undef
$ad_join_os_service_pack
(optional) Populates the Active Directory value for Operating System Service Pack.
Type: string
Default: undef
Tested on:
- RHEL & CentOS 6,7
- This Puppet module and TravisCI layout is based on sgnl05-sssd by Gjermund Jensvoll