pxe_install: PXE Install server
pxe_install::apache: Configure webserver for install serverpxe_install::dhcp: Setup DHCP serverpxe_install::params: Default parameterspxe_install::syslinux: Download syslinux archivepxe_install::tftp: Setup ftp serverpxe_install::winipxe: Install windows ipxe files
pxe_install::parent_dirs: Create directories recursivly
pxe_install::kickstart: Create kickstart filepxe_install::partitioning::debian: Create a partion table for Debian systemspxe_install::partitioning::redhat: ACreate partitioning for redhat/CentOPS systemspxe_install::partitioning::ubuntu: Create a partion table for Ubuntu systemspxe_install::partitioning::ubuntu_autoinstall: Create a partion table for Ubuntu systems using autoinstallpxe_install::samba::host: Create a host entry for a Windows nodepxe_install::samba::unattend: create unattended boot filepxe_install::tftp::host: Create a tftp server entry for a host.
get_partition_devices: get_partition_devices.rb Examin partitioning information of Debian/Ubuntu hosts and get all used disk devicesget_partition_devices_autoinstall: get_partition_devices_autoinstall.rb Examin partitioning information of Debian/Ubuntu hosts and get all used disk devicespxe_install::hex_ip: Convert a ip from digits into hex.
pxe_install::hash_key: Check if a hash contains a particular key
create_password: Outputs a SHA512 encrypted password for use with node installation.maintain_netinstaller: Maintain CentOS/Ubuntu/Debian net installer files
Set up an PXE install server with dhcp, tftp and webserver for serving files
include pxe_installThe following parameters are available in the pxe_install class:
installserveripinstallserverrepo_serverrepo_server_iprepos_dirrepos_urlscriptdirscripturlkickstart_dirkickstart_urlpuppetmasterpuppetmasteripservicesmachinesstatus_allow_fromenabledssl_certssl_keyssl_chainssl_certs_dirdocumentrootcreate_aliaseschallenge_passwordadd_hosts_entriesinstall_curlinstall_unzipsyslinux_urlsyslinux_namesyslinux_versionipxefilemirrorsdefaultspurge_apache_configs
Data type: String
The ip of the install server
Data type: String
Hostname of the install server
Data type: String
Hostname of the server hosting the package repositories
Data type: String
IP of the server hosting the package repositories
Data type: Stdlib::Unixpath
Directory location of the package repositories
Data type: String
URI where the pacjaqges can be found on the repo server
Data type: Stdlib::Unixpath
Directory location where to cfreate scripts and prepared files
Data type: String
URL where to find the scripts
Data type: Stdlib::Unixpath
Directory location for the kickstart/preseed files
Data type: String
Url where to download the kickstart/preseed files
Data type: Optional[String]
The hostname of the Puppet master server
Default value: undef
Data type: Optional[String]
The ip of the Puppet master server
Default value: undef
Data type: Optional[Hash]
Hash with services to configure. Valid are dhcp and tftp. Each service is a hash of how to configure that service.
Default value: undef
Data type: Optional[Hash]
Hash with all machines to get installed. Each entry i a whole description of a machine with ips, partitions and so on.
Default value: undef
Data type: Array
Allow Apache status URLs from these ips
Default value: ['127.0.0.1']
Data type: Boolean
Installserver is enbaled or not
Default value: true
Data type: String
Location of the SSL certificate for the webserver to use. he file has to exist on the install server.
Default value: '/etc/pki/httpd/repos.example.com/repos.example.com.cer'
Data type: String
Location of the SSL key for the webserver to use. he file has to exist on the install server.
Default value: '/etc/pki/httpd/repos.example.com/repos.example.com.key'
Data type: String
Location of the SSL certificate chain for the webserver to use. he file has to exist on the install server.
Default value: '/etc/pki/httpd/repos.example.com/fullchain.cer'
Data type: String
Directory where all files for the cdertificates reside.
Default value: '/etc/pki/httpd/repos.example.com/'
Data type: String
Document root for the webserver.
Default value: '/var/www/html'
Data type: Boolean
Create webserver aliases
Default value: true
Data type: Sensitive[String]
Sensitive challenge password for auto signing cert requests.
Data type: Boolean
Add install server and puppet server to /etc/hosts file.
Default value: false
Data type: Boolean
Install curl package
Default value: $pxe_install::params::install_curl
Data type: Boolean
Install unzip package
Default value: $pxe_install::params::install_unzip
Data type: Stdlib::HTTPSUrl
The url where to download the syslinux archive.
Default value: $pxe_install::params::syslinux_url
Data type: String
Ther name of the archive.
Default value: $pxe_install::params::syslinux_name
Data type: String
The version of the archive.
Default value: $pxe_install::params::syslinux_version
Data type: Stdlib::HTTPUrl
The url to download the ipxe file.
Default value: $pxe_install::params::ipxefile
Data type: Hash
Hash with mirror definitions.
Default value: $pxe_install::params::mirrors
Data type: Hash
Default values.
Default value: $pxe_install::params::defaults
Data type: Boolean
Boolean to indicate that all Apache configurations not maintained by the Apache Puppet module should be deleted.
Default value: false
Create all missing directories
}
pxe_installarent_dirs{ 'create script dir':
dir_path => '/var/www/scripts',The following parameters are available in the pxe_install::parent_dirs defined type:
Data type: Stdlib::Unixpath
The directories to be created.
Type: Ruby 4.x API
get_partition_devices.rb Examin partitioning information of Debian/Ubuntu hosts and get all used disk devices
get_partition_devices.rb Examin partitioning information of Debian/Ubuntu hosts and get all used disk devices
Returns: String
Data type: Hash
Type: Ruby 4.x API
get_partition_devices_autoinstall.rb Examin partitioning information of Debian/Ubuntu hosts and get all used disk devices
get_partition_devices_autoinstall.rb Examin partitioning information of Debian/Ubuntu hosts and get all used disk devices
Returns: Array
Data type: Array
Type: Puppet Language
Convert a ip from digits into hex.
The pxe_install::hex_ip function.
Returns: String IP in hey format
Data type: String
The ip to convert, e. g. 10.0.0.1
Outputs a SHA512 encrypted password for use with node installation.
Supports noop? false
Data type: String[1]
The password to encrypt
Maintain CentOS/Ubuntu/Debian net installer files
Supports noop? false
Data type: String[1]
The base directory of the tftpd server where the net installer files go to.
Data type: String[1]
Where to download he net installer from.
Data type: Enum[centos,ubuntu,debian,fedora,alma,rocky,redhat]
The operating system.
Data type: String[1]
The operting system version, depending on the OS.
Data type: Optional[String[1]]
The operating system subversion for CentOS like 'u9'.