splunk: This class is unused and doesn't do anything but make default data accessiblesplunk::enterprise: Install and configure an instance of Splunk Enterprisesplunk::enterprise::config: Private class declared by Class[splunk::enterprise] to contain all the configuration needed for a base install of Splunk Enterprisesplunk::enterprise::install: Private class declared by Class[splunk::enterprise] to contain or define through additional platform specific sub-class, the required steps for successfully installing Splunk Enterprisesplunk::enterprise::install::nix: Private class declared by Class[splunk::enterprise::install] to provide platform specific installation steps on Linux or Unix type systems.splunk::enterprise::password::manage: Implements the direct management of the Splunk Enterprise admin password so it can be used outside of regular management of the whole stack to facilitate admin password resets through Bolt Plans.
Note: Entirely done to make this implementation consistent with the method used to manage admin password seeding.
splunk::enterprise::password::seed: Implements the seeding and reseeding of the Splunk Enterprise admin password so it can be used outside of regular management of the whole stack to facilitate admin password resets through Bolt Planssplunk::enterprise::service: Private class declared by Class[splunk::enterprise] to define a service as its understood by Puppet using a dynamic set of data or platform specific sub-classessplunk::enterprise::service::nix: Private class declared by Class[splunk::enterprise::service] to provide platform specific service management on Linux or Unix type systems.splunk::forwarder: Install and configure an instance of Splunk Universal Forwardersplunk::forwarder::config: Private class declared by Class[splunk::forwarder] to contain all the configuration needed for a base install of the Splunk Universal Forwardersplunk::forwarder::install: Private class declared by Class[splunk::forwarder] to contain or define through additional platform specific sub-class, the required steps for successfully installing the Splunk Universal Forwardersplunk::forwarder::password::manage: Implements the direct management of the Splunk Forwarder admin password so it can be used outside of regular management of the whole stack to facilitate admin password resets through Bolt Plans.
Note: Entirely done to make this implementation consistent with the method used to manage admin password seeding.
splunk::forwarder::password::seed: Implements the seeding and reseeding of the Splunk Forwarder admin password so it can be used outside of regular management of the whole stack to facilitate admin password resets through Bolt Planssplunk::forwarder::service: Private class declared by Class[splunk::forwarder] to define a service as its understood by Puppet using a dynamic set of data or platform specific sub-classessplunk::forwarder::service::nix: Private class declared by Class[splunk::forwarder::service] to provide platform specific service management on Linux or Unix type systems.splunk::params: This class takes a small number of arguments (can be set through Hiera) and generates sane default values installation media names and locations. Default ports can also be specified here. This is a parameters class, and contributes no resources to the graph. Rather, it only sets values for parameters to be consumed by child classes.
splunk::addon: Defined type for deploying Splunk Add-ons and Apps from either OS packages or via splunkbase compatible archives
splunk_alert_actions: Manage splunk alert_actions settings in alert_actions.confsplunk_authentication: Manage splunk authentication settings in authentication.confsplunk_authorize: Manage splunk authorize settings in authorize.confsplunk_config: splunk configsplunk_deploymentclient: Manage splunk deploymentclient entries in deploymentclient.confsplunk_distsearch: Manage distsearch entries in distsearch.confsplunk_indexes: Manage splunk index settings in indexes.confsplunk_input: Manage splunk input settings in inputs.confsplunk_limits: Manage splunk limits settings in limits.confsplunk_metadata: Manage metadata entries in {default,local}.metasplunk_output: Manage splunk output settings in outputs.confsplunk_props: Manage splunk prop settings in props.confsplunk_server: Manage splunk server settings in server.confsplunk_serverclass: Manage splunk serverclass entries in serverclass.confsplunk_transforms: Manage splunk transforms settings in transforms.confsplunk_uiprefs: Manage splunk web ui settings in ui-prefs.confsplunk_web: Manage splunk web settings in web.confsplunkforwarder_deploymentclient: Manage splunkforwarder deploymentclient entries in deploymentclient.confsplunkforwarder_input: Manage splunkforwarder input settings in inputs.confsplunkforwarder_limits: Manage splunkforwarder limit settings in limits.confsplunkforwarder_output: Manage splunkforwarder output settings in outputs.confsplunkforwarder_props: Manage splunkforwarder props settings in props.confsplunkforwarder_server: Manage splunkforwarder server settings in server.confsplunkforwarder_transforms: Manage splunkforwarder transforms settings in transforms.confsplunkforwarder_web: Manage splunkforwarder web settings in web.conf
This class is unused and doesn't do anything but make default data accessible
- Note If you were expecting this class to setup an instance of Splunk Enterprise then please look to Class[splunk::enterprise].
Install and configure an instance of Splunk Enterprise
include splunk::enterpriseclass { 'splunk::params':
version => '7.2.5',
build => '088f49762779',
}
class { 'splunk::enterprise':
package_ensure => latest,
manage_password => true,
}The following parameters are available in the splunk::enterprise class:
versionpackage_namepackage_ensurestaging_dirpath_delimiterenterprise_package_srcpackage_providermanage_package_sourcepackage_sourceinstall_optionssplunk_userenterprise_homedirenterprise_confdirservice_nameservice_fileboot_startuse_default_configinput_default_hostinput_connection_hostsplunkd_listenlogging_portsplunkd_portweb_httpportpurge_inputspurge_outputspurge_authenticationpurge_authorizepurge_distsearchpurge_indexespurge_limitspurge_propspurge_serverpurge_transformspurge_webmanage_passwordseed_passwordreset_seeded_passwordpassword_config_fileseed_config_fileseed_userpassword_contentpassword_hashsecret_filesecretpurge_alert_actionspurge_deploymentclientpurge_serverclasspurge_uiprefs
Data type: String[1]
Specifies the version of Splunk Enterprise the module should install and manage.
Default value: $splunk::params::version
Data type: String[1]
The name of the package(s) Puppet will use to install Splunk.
Default value: $splunk::params::enterprise_package_name
Data type: String[1]
Ensure parameter which will get passed to the Splunk package resource.
Default value: $splunk::params::enterprise_package_ensure
Data type: String[1]
Root of the archive path to host the Splunk package.
Default value: $splunk::params::staging_dir
Data type: String[1]
The path separator used in the archived path of the Splunk package.
Default value: $splunk::params::path_delimiter
Data type: String[1]
The source URL for the splunk installation media (typically an RPM, MSI,
etc). If a $src_root parameter is set in splunk::params, this will be
automatically supplied. Otherwise it is required. The URL can be of any
protocol supported by the pupept/archive module. On Windows, this can be
a UNC path to the MSI.
Default value: $splunk::params::enterprise_package_src
Data type: Optional[String[1]]
The package management system used to host the Splunk packages.
Default value: $splunk::params::package_provider
Data type: Boolean
Whether or not to use the supplied enterprise_package_src param.
Default value: true
Data type: Optional[String[1]]
Optional The source URL for the splunk installation media (typically an RPM,
MSI, etc). If enterprise_package_src parameter is set in splunk::params and
manage_package_source is true, this will be automatically supplied. Otherwise
it is required. The URL can be of any protocol supported by the puppet/archive
module. On Windows, this can be a UNC path to the MSI.
Default value: undef
Data type: Splunk::Entinstalloptions
This variable is passed to the package resources' install_options parameter.
Default value: $splunk::params::enterprise_install_options
Data type: String[1]
The user to run Splunk as.
Default value: $splunk::params::splunk_user
Data type: Stdlib::Absolutepath
Specifies the Splunk Enterprise home directory.
Default value: $splunk::params::enterprise_homedir
Data type: Stdlib::Absolutepath
Specifies the Splunk Enterprise configuration directory.
Default value: $splunk::params::enterprise_confdir
Data type: String[1]
The name of the Splunk Enterprise service.
Default value: $splunk::params::enterprise_service
Data type: Stdlib::Absolutepath
The path to the Splunk Enterprise service file.
Default value: $splunk::params::enterprise_service_file
Data type: Boolean
Whether or not to enable splunk boot-start, which generates a service file to manage the Splunk Enterprise service.
Default value: $splunk::params::boot_start
Data type: Boolean
Whether or not the module should manage a default set of Splunk Enterprise configuration parameters.
Default value: true
Data type: String[1]
Part of the default config. Sets the splunk_input default host.
Default value: $facts['networking']['fqdn']
Data type: String[1]
Part of the default config. Sets the splunk_input connection host.
Default value: 'dns'
Data type: Stdlib::IP::Address
The address on which splunkd should listen.
Default value: '127.0.0.1'
Data type: Stdlib::Port
The port to receive TCP logs on.
Default value: $splunk::params::logging_port
Data type: Stdlib::Port
The management port for Splunk.
Default value: $splunk::params::splunkd_port
Data type: Stdlib::Port
The port on which to service the Splunk Web interface.
Default value: 8000
Data type: Boolean
If set to true, inputs.conf will be purged of configuration that is
no longer managed by the splunk_input type.
Default value: false
Data type: Boolean
If set to true, outputs.conf will be purged of configuration that is
no longer managed by the splunk_output type.
Default value: false
Data type: Boolean
If set to true, authentication.conf will be purged of configuration
that is no longer managed by the splunk_authentication type.
Default value: false
Data type: Boolean
If set to true, authorize.conf will be purged of configuration that
is no longer managed by the splunk_authorize type.
Default value: false
Data type: Boolean
If set to true, distsearch.conf will be purged of configuration that
is no longer managed by the splunk_distsearch type.
Default value: false
Data type: Boolean
If set to true, indexes.conf will be purged of configuration that is
no longer managed by the splunk_indexes type.
Default value: false
Data type: Boolean
If set to true, limits.conf will be purged of configuration that is
no longer managed by the splunk_limits type.
Default value: false
Data type: Boolean
If set to true, props.conf will be purged of configuration that is
no longer managed by the splunk_props type.
Default value: false
Data type: Boolean
If set to true, server.conf will be purged of configuration that is
no longer managed by the splunk_server type.
Default value: false
Data type: Boolean
If set to true, transforms.conf will be purged of configuration that
is no longer managed by the splunk_transforms type.
Default value: false
Data type: Boolean
If set to true, web.conf will be purged of configuration that is no
longer managed by the splunk_web type.
Default value: false
Data type: Boolean
If set to true, Manage the contents of splunk.secret and passwd.
Default value: $splunk::params::manage_password
Data type: Boolean
If set to true, Manage the contents of splunk.secret and user-seed.conf.
Default value: $splunk::params::seed_password
Data type: Boolean
If set to true, deletes password_config_file to trigger Splunk's password
import process on restart of the Splunk services.
Default value: $splunk::params::reset_seeded_password
Data type: Stdlib::Absolutepath
Which file to put the password in i.e. in linux it would be
/opt/splunk/etc/passwd.
Default value: $splunk::params::enterprise_password_config_file
Data type: Stdlib::Absolutepath
Which file to place the admin password hash in so its imported by Splunk on restart.
Default value: $splunk::params::enterprise_seed_config_file
Data type: String[1]
The local user (usually 'admin') imported by Splunk.
Default value: $splunk::params::seed_user
Data type: String[1]
The hashed password username/details for the user.
Default value: $splunk::params::password_content
Data type: String[1]
The hashed password for the admin user.
Default value: $splunk::params::password_hash
Data type: Stdlib::Absolutepath
Which file we should put the secret in.
Default value: $splunk::params::enterprise_secret_file
Data type: String[1]
The secret used to salt the splunk password.
Default value: $splunk::params::secret
Data type: Boolean
Default value: false
Data type: Boolean
Default value: false
Data type: Boolean
Default value: false
Data type: Boolean
Default value: false
Private class declared by Class[splunk::enterprise] to contain all the configuration needed for a base install of Splunk Enterprise
Private class declared by Class[splunk::enterprise] to contain or define through additional platform specific sub-class, the required steps for successfully installing Splunk Enterprise
Private class declared by Class[splunk::enterprise::install] to provide platform specific installation steps on Linux or Unix type systems.
Implements the direct management of the Splunk Enterprise admin password so it can be used outside of regular management of the whole stack to facilitate admin password resets through Bolt Plans.
Note: Entirely done to make this implementation consistent with the method used to manage admin password seeding.
The following parameters are available in the splunk::enterprise::password::manage class:
Data type: Boolean
If set to true, Manage the contents of splunk.secret and passwd.
Default value: $splunk::params::manage_password
Data type: Stdlib::Absolutepath
Which file to put the password in i.e. in linux it would be
/opt/splunk/etc/passwd.
Default value: $splunk::params::forwarder_password_config_file
Data type: String[1]
The hashed password username/details for the user.
Default value: $splunk::params::password_content
Data type: Stdlib::Absolutepath
Which file we should put the secret in.
Default value: $splunk::params::forwarder_secret_file
Data type: String[1]
The secret used to salt the splunk password.
Default value: $splunk::params::secret
Data type: String[1]
Name of the Splunk Enterprise service that needs to be restarted after files are updated, not applicable when running in agent mode.
Default value: $splunk::params::enterprise_service
Data type: Enum['agent', 'bolt']
The class is designed to work in two ways, as a helper that is called by Class[splunk::enterprise::config] or leveraged independently from with in a Bolt Plan. The value defaults to "bolt" implicitly assuming that anytime it is used outside of Class[splunk::enterprise::config], it is being used by Bolt
Default value: 'bolt'
Data type: String[1]
Default value: $splunk::params::splunk_user
Implements the seeding and reseeding of the Splunk Enterprise admin password so it can be used outside of regular management of the whole stack to facilitate admin password resets through Bolt Plans
The following parameters are available in the splunk::enterprise::password::seed class:
reset_seeded_passwordpassword_config_fileseed_config_fileseed_userpassword_hashsecret_filesecretservicemodesplunk_user
Data type: Boolean
If set to true, deletes password_config_file to trigger Splunk's password
import process on restart of the Splunk services.
Default value: $splunk::params::reset_seeded_password
Data type: Stdlib::Absolutepath
Which file to put the password in i.e. in linux it would be
/opt/splunk/etc/passwd.
Default value: $splunk::params::enterprise_password_config_file
Data type: Stdlib::Absolutepath
Which file to place the admin password hash in so its imported by Splunk on restart.
Default value: $splunk::params::enterprise_seed_config_file
Data type: String[1]
The local user (usually 'admin') imported by Splunk.
Default value: $splunk::params::seed_user
Data type: String[1]
The hashed password for the admin user.
Default value: $splunk::params::password_hash
Data type: Stdlib::Absolutepath
Which file we should put the secret in.
Default value: $splunk::params::enterprise_secret_file
Data type: String[1]
The secret used to salt the splunk password.
Default value: $splunk::params::secret
Data type: String[1]
Name of the Splunk Enterprise service that needs to be restarted after files are updated, not applicable when running in agent mode.
Default value: $splunk::params::enterprise_service
Data type: Enum['agent', 'bolt']
The class is designed to work in two ways, as a helper that is called by Class[splunk::enterprise::config] or leveraged independently from with in a Bolt Plan. The value defaults to "bolt" implicitly assuming that anytime it is used outside of Class[splunk::enterprise::config], it is being used by Bolt
Default value: 'bolt'
Data type: String[1]
Default value: $splunk::params::splunk_user
Private class declared by Class[splunk::enterprise] to define a service as its understood by Puppet using a dynamic set of data or platform specific sub-classes
Private class declared by Class[splunk::enterprise::service] to provide platform specific service management on Linux or Unix type systems.
Install and configure an instance of Splunk Universal Forwarder
include splunk::forwarderclass { 'splunk::params':
version => '7.2.5',
build => '088f49762779',
}
class { 'splunk::forwarder':
package_ensure => latest,
manage_password => true,
}The following parameters are available in the splunk::forwarder class:
serverversionpackage_namepackage_ensurestaging_dirpath_delimiterforwarder_package_srcpackage_providermanage_package_sourcepackage_sourceinstall_optionssplunk_userforwarder_homedirforwarder_confdirservice_nameservice_fileboot_startuse_default_configsplunkd_listensplunkd_portlogging_portpurge_inputspurge_outputspurge_propspurge_transformspurge_webforwarder_inputforwarder_outputmanage_passwordseed_passwordreset_seeded_passwordpassword_config_fileseed_config_fileseed_userpassword_contentpassword_hashsecret_filesecretaddonspurge_deploymentclient
Data type: String[1]
The fqdn or IP address of the Splunk server.
Default value: $splunk::params::server
Data type: String[1]
Specifies the version of Splunk Forwarder the module should install and manage.
Default value: $splunk::params::version
Data type: String[1]
The name of the package(s) Puppet will use to install Splunk Forwarder.
Default value: $splunk::params::forwarder_package_name
Data type: String[1]
Ensure parameter which will get passed to the Splunk package resource.
Default value: $splunk::params::forwarder_package_ensure
Data type: String[1]
Root of the archive path to host the Splunk package.
Default value: $splunk::params::staging_dir
Data type: String[1]
The path separator used in the archived path of the Splunk package.
Default value: $splunk::params::path_delimiter
Data type: String[1]
The source URL for the splunk installation media (typically an RPM, MSI,
etc). If a $src_root parameter is set in splunk::params, this will be
automatically supplied. Otherwise it is required. The URL can be of any
protocol supported by the puppet/archive module. On Windows, this can be
a UNC path to the MSI.
Default value: $splunk::params::forwarder_package_src
Data type: Optional[String[1]]
The package management system used to host the Splunk packages.
Default value: $splunk::params::package_provider
Data type: Boolean
Whether or not to use the supplied forwarder_package_src param.
Default value: true
Data type: Optional[String[1]]
Optional The source URL for the splunk installation media (typically an RPM,
MSI, etc). If enterprise_package_src parameter is set in splunk::params and
manage_package_source is true, this will be automatically supplied. Otherwise
it is required. The URL can be of any protocol supported by the puppet/archive
module. On Windows, this can be a UNC path to the MSI.
Default value: undef
Data type: Splunk::Fwdinstalloptions
This variable is passed to the package resources' install_options parameter.
Default value: $splunk::params::forwarder_install_options
Data type: String[1]
The user to run Splunk as.
Default value: $splunk::params::splunk_user
Data type: Stdlib::Absolutepath
Specifies the Splunk Forwarder home directory.
Default value: $splunk::params::forwarder_homedir
Data type: Stdlib::Absolutepath
Specifies the Splunk Forwarder configuration directory.
Default value: $splunk::params::forwarder_confdir
Data type: String[1]
The name of the Splunk Forwarder service.
Default value: $splunk::params::forwarder_service
Data type: Stdlib::Absolutepath
The path to the Splunk Forwarder service file.
Default value: $splunk::params::forwarder_service_file
Data type: Boolean
Whether or not to enable splunk boot-start, which generates a service file to manage the Splunk Forwarder service.
Default value: $splunk::params::boot_start
Data type: Boolean
Whether or not the module should manage a default set of Splunk Forwarder configuration parameters.
Default value: true
Data type: Stdlib::IP::Address
The address on which splunkd should listen.
Default value: '127.0.0.1'
Data type: Stdlib::Port
The management port for Splunk.
Default value: $splunk::params::splunkd_port
Data type: Stdlib::Port
The port on which to send and listen for logs.
Default value: $splunk::params::logging_port
Data type: Boolean
Optional If set to true, inputs.conf will be purged of configuration that is
no longer managed by the splunkforwarder_input type.
Default value: false
Data type: Boolean
Optional If set to true, outputs.conf will be purged of configuration that is
no longer managed by the splunk_output type.
Default value: false
Data type: Boolean
Optional If set to true, props.conf will be purged of configuration that is
no longer managed by the splunk_props type.
Default value: false
Data type: Boolean
Optional If set to true, transforms.conf will be purged of configuration that is
no longer managed by the splunk_transforms type.
Default value: false
Data type: Boolean
Optional If set to true, web.conf will be purged of configuration that is
no longer managed by the splunk_web type.
Default value: false
Data type: Hash
Used to override the default forwarder_input type defined in splunk::params.
Default value: $splunk::params::forwarder_input
Data type: Hash
Used to override the default forwarder_output type defined in splunk::params.
Default value: $splunk::params::forwarder_output
Data type: Boolean
If set to true, Manage the contents of splunk.secret and passwd.
Default value: $splunk::params::manage_password
Data type: Boolean
If set to true, Manage the contents of splunk.secret and user-seed.conf.
Default value: $splunk::params::seed_password
Data type: Boolean
If set to true, deletes password_config_file to trigger Splunk's password
import process on restart of the Splunk services.
Default value: $splunk::params::reset_seeded_password
Data type: Stdlib::Absolutepath
Which file to put the password in i.e. in linux it would be
/opt/splunkforwarder/etc/passwd.
Default value: $splunk::params::forwarder_password_config_file
Data type: Stdlib::Absolutepath
Which file to place the admin password hash in so its imported by Splunk on restart.
Default value: $splunk::params::forwarder_seed_config_file
Data type: String[1]
The local user (usually 'admin') imported by Splunk.
Default value: $splunk::params::seed_user
Data type: String[1]
The hashed password username/details for the user.
Default value: $splunk::params::password_content
Data type: String[1]
The hashed password for the admin user.
Default value: $splunk::params::password_hash
Data type: Stdlib::Absolutepath
Which file we should put the secret in.
Default value: $splunk::params::forwarder_secret_file
Data type: String[1]
The secret used to salt the splunk password.
Default value: $splunk::params::secret
Data type: Hash
Manage a splunk addons, see splunk::addons.
Default value: {}
Data type: Boolean
Default value: false
Private class declared by Class[splunk::forwarder] to contain all the configuration needed for a base install of the Splunk Universal Forwarder
Private class declared by Class[splunk::forwarder] to contain or define through additional platform specific sub-class, the required steps for successfully installing the Splunk Universal Forwarder
Implements the direct management of the Splunk Forwarder admin password so it can be used outside of regular management of the whole stack to facilitate admin password resets through Bolt Plans.
Note: Entirely done to make this implementation consistent with the method used to manage admin password seeding.
The following parameters are available in the splunk::forwarder::password::manage class:
Data type: Boolean
If set to true, Manage the contents of splunk.secret and passwd.
Default value: $splunk::params::manage_password
Data type: Stdlib::Absolutepath
Which file to put the password in i.e. in linux it would be
/opt/splunkforwarder/etc/passwd.
Default value: $splunk::params::enterprise_password_config_file
Data type: String[1]
The hashed password username/details for the user.
Default value: $splunk::params::password_content
Data type: Stdlib::Absolutepath
Which file we should put the secret in.
Default value: $splunk::params::enterprise_secret_file
Data type: String[1]
The secret used to salt the splunk password.
Default value: $splunk::params::secret
Data type: String[1]
Name of the Splunk Enterprise service that needs to be restarted after files are updated, not applicable when running in agent mode.
Default value: $splunk::params::forwarder_service
Data type: Enum['agent', 'bolt']
The class is designed to work in two ways, as a helper that is called by Class[splunk::forwarder::config] or leveraged independently from with in a Bolt Plan. The value defaults to "bolt" implicitly assuming that anytime it is used outside of Class[splunk::forwarder::config], it is being used by Bolt
Default value: 'bolt'
Data type: String[1]
Default value: $splunk::params::splunk_user
Implements the seeding and reseeding of the Splunk Forwarder admin password so it can be used outside of regular management of the whole stack to facilitate admin password resets through Bolt Plans
The following parameters are available in the splunk::forwarder::password::seed class:
reset_seeded_passwordpassword_config_fileseed_config_fileseed_userpassword_hashsecret_filesecretservicemodesplunk_user
Data type: Boolean
If set to true, deletes password_config_file to trigger Splunk's password
import process on restart of the Splunk services.
Default value: $splunk::params::reset_seeded_password
Data type: Stdlib::Absolutepath
Which file to put the password in i.e. in linux it would be
/opt/splunkforwarder/etc/passwd.
Default value: $splunk::params::forwarder_password_config_file
Data type: Stdlib::Absolutepath
Which file to place the admin password hash in so its imported by Splunk on restart.
Default value: $splunk::params::forwarder_seed_config_file
Data type: String[1]
The local user (usually 'admin') imported by Splunk.
Default value: $splunk::params::seed_user
Data type: String[1]
The hashed password for the admin user.
Default value: $splunk::params::password_hash
Data type: Stdlib::Absolutepath
Which file we should put the secret in.
Default value: $splunk::params::forwarder_secret_file
Data type: String[1]
The secret used to salt the splunk password.
Default value: $splunk::params::secret
Data type: String[1]
Name of the Splunk Forwarder service that needs to be restarted after files are updated, not applicable when running in agent mode.
Default value: $splunk::params::forwarder_service
Data type: Enum['agent', 'bolt']
The class is designed to work in two ways, as a helper that is called by Class[splunk::forwarder::config] or leveraged independently from with in a Bolt Plan. The value defaults to "bolt" implicitly assuming that anytime it is used outside of Class[splunk::forwarder::config], it is being used by Bolt
Default value: 'bolt'
Data type: String[1]
Default value: $splunk::params::splunk_user
Private class declared by Class[splunk::forwarder] to define a service as its understood by Puppet using a dynamic set of data or platform specific sub-classes
Private class declared by Class[splunk::forwarder::service] to provide platform specific service management on Linux or Unix type systems.
This class takes a small number of arguments (can be set through Hiera) and generates sane default values installation media names and locations. Default ports can also be specified here. This is a parameters class, and contributes no resources to the graph. Rather, it only sets values for parameters to be consumed by child classes.
The following parameters are available in the splunk::params class:
versionbuildsplunkd_portlogging_portserversplunk_usersrc_rootboot_startforwarder_installdirenterprise_installdirdefault_hostmanage_net_tools
Data type: String[1]
The version of Splunk to install. This will be in the form x.y.z; e.g. "4.3.2".
Default value: '7.2.4.2'
Data type: String[1]
Splunk packages are typically named based on the platform, architecture, version, and build. Puppet can determine the platform information automatically but a build number must be supplied in order to correctly construct the path to the packages. A build number will be six digits; e.g. "123586".
Default value: 'fb30470262e3'
Data type: Stdlib::Port
The splunkd port.
Default value: 8089
Data type: Stdlib::Port
The port on which to send logs, and listen for logs.
Default value: 9997
Data type: String[1]
Optional fqdn or IP of the Splunk Enterprise server. Used for setting up the default TCP output and input.
Default value: 'splunk'
Data type: String[1]
The user that splunk runs as.
Default value: $facts['os']['family']
Data type: String[1]
The root URL at which to find the splunk packages. The sane-default logic assumes that the packages are located under this URL in the same way that they are placed on download.splunk.com. The URL can be any protocol that the puppet/archive module supports. This includes both puppet:// and http://.
The expected directory structure is:
$root_url/
└── products/
├── universalforwarder/
│ └── releases/
| └── $version/
| └── $platform/
| └── splunkforwarder-${version}-${build}-${additl}
└── splunk/
└── releases/
└── $version/
└── $platform/
└── splunk-${version}-${build}-${additl}
A semi-populated example of src_root contains:
$root_url/
└── products/
├── universalforwarder/
│ └── releases/
| └── 7.2.4.2/
| ├── linux/
| | ├── splunkforwarder-7.2.4.2-fb30470262e3-linux-2.6-amd64.deb
| | ├── splunkforwarder-7.2.4.2-fb30470262e3-linux-2.6-intel.deb
| | └── splunkforwarder-7.2.4.2-fb30470262e3-linux-2.6-x86_64.rpm
| ├── solaris/
| └── windows/
| └── splunkforwarder-7.2.4.2-fb30470262e3-x64-release.msi
└── splunk/
└── releases/
└── 7.2.4.2/
└── linux/
├── splunk-7.2.4.2-fb30470262e3-linux-2.6-amd64.deb
├── splunk-7.2.4.2-fb30470262e3-linux-2.6-intel.deb
└── splunk-7.2.4.2-fb30470262e3-linux-2.6-x86_64.rpm
Default value: 'https://download.splunk.com'
Data type: Boolean
Enable Splunk to start at boot, create a system service file.
WARNING: Toggling boot_start from false to true will cause a restart of
Splunk Enterprise and Forwarder services.
Default value: true
Data type: Optional[String[1]]
Optional directory in which to install and manage Splunk Forwarder
Default value: undef
Data type: Optional[String[1]]
Optional directory in which to install and manage Splunk Enterprise
Default value: undef
Data type: String[1]
The host property in inputs.conf. Defaults to the server's hostname.
Default value: $facts['clientcert']
Data type: Boolean
From Splunk 7.2.2+ the package net-tools is required to be installed on the system.
By default this module manages the resource Package[net-tools], if this resource is
already declared on your code base, you can disable this flag.
Default value: true
Defined type for deploying Splunk Add-ons and Apps from either OS packages or via splunkbase compatible archives
splunk::addon { 'Splunk_TA_nix':
splunkbase_source => 'puppet:///modules/splunk_qd/addons/splunk-add-on-for-unix-and-linux_602.tgz',
inputs => {
'monitor:///var/log' => {
'whitelist' => '(\.log|log$|messages|secure|auth|mesg$|cron$|acpid$|\.out)',
'blacklist' => '(lastlog|anaconda\.syslog)',
'disabled' => 'false'
},
'script://./bin/uptime.sh' => {
'disabled' => 'false',
'interval' => '86400',
'source' => 'Unix:Uptime',
'sourcetype' => 'Unix:Uptime'
}
}
}The following parameters are available in the splunk::addon defined type:
Data type: Optional[Stdlib::Absolutepath]
Overrides the default Splunk installation target values from Class[splunk::params]
Default value: undef
Data type: Boolean
If a package should be installed as part of declaring a new instance of Splunk::Addon
Default value: true
Data type: Optional[String[1]]
When set the add-on will be installed from a splunkbase compatible archive instead of OS packages
Default value: undef
Data type: Optional[String[1]]
A 'extract_command' to pass to the 'archive' that extracts a splunkbase_source package (helpful for SPL files)
Default value: undef
Data type: Optional[String[1]]
The OS package to install if you are not installing via splunk compatible archive
Default value: undef
Data type: String[1]
The user that files are owned by when they are created as part of add-on installation
Default value: 'splunk'
Data type: Hash
A hash of inputs to be configured as part of add-on installation, alterntively you can also define splunk_input or splunkforwarder_input resouces seperately
Default value: {}
Manage splunk alert_actions settings in alert_actions.conf
The following parameters are available in the splunk_alert_actions type.
The specific backend to use for this splunk_alert_actions resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
Manage splunk authentication settings in authentication.conf
The following parameters are available in the splunk_authentication type.
The specific backend to use for this splunk_authentication resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
Manage splunk authorize settings in authorize.conf
The following parameters are available in the splunk_authorize type.
The specific backend to use for this splunk_authorize resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
splunk config
The following parameters are available in the splunk_config type.
namevar
splunk config
Manage splunk deploymentclient entries in deploymentclient.conf
The following parameters are available in the splunk_deploymentclient type.
The specific backend to use for this splunk_deploymentclient resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
Manage distsearch entries in distsearch.conf
The following parameters are available in the splunk_distsearch type.
The specific backend to use for this splunk_distsearch resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk index settings in indexes.conf
The following parameters are available in the splunk_indexes type.
The specific backend to use for this splunk_indexes resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk input settings in inputs.conf
The following parameters are available in the splunk_input type.
The specific backend to use for this splunk_input resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk limits settings in limits.conf
The following parameters are available in the splunk_limits type.
The specific backend to use for this splunk_limits resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage metadata entries in {default,local}.meta
The following parameters are available in the splunk_metadata type.
The specific backend to use for this splunk_metadata resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk output settings in outputs.conf
The following parameters are available in the splunk_output type.
The specific backend to use for this splunk_output resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk prop settings in props.conf
The following parameters are available in the splunk_props type.
The specific backend to use for this splunk_props resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk server settings in server.conf
The following parameters are available in the splunk_server type.
The specific backend to use for this splunk_server resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk serverclass entries in serverclass.conf
The following parameters are available in the splunk_serverclass type.
The specific backend to use for this splunk_serverclass resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk transforms settings in transforms.conf
The following parameters are available in the splunk_transforms type.
The specific backend to use for this splunk_transforms resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk web ui settings in ui-prefs.conf
The following parameters are available in the splunk_uiprefs type.
The specific backend to use for this splunk_uiprefs resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
Manage splunk web settings in web.conf
The following parameters are available in the splunk_web type.
The specific backend to use for this splunk_web resource. You will seldom need to specify this --- Puppet will usually
discover the appropriate provider for your platform.
Manage splunkforwarder deploymentclient entries in deploymentclient.conf
The following parameters are available in the splunkforwarder_deploymentclient type.
The specific backend to use for this splunkforwarder_deploymentclient resource. You will seldom need to specify this
--- Puppet will usually discover the appropriate provider for your platform.
Manage splunkforwarder input settings in inputs.conf
The following parameters are available in the splunkforwarder_input type.
The specific backend to use for this splunkforwarder_input resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
Manage splunkforwarder limit settings in limits.conf
The following parameters are available in the splunkforwarder_limits type.
The specific backend to use for this splunkforwarder_limits resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
Manage splunkforwarder output settings in outputs.conf
The following parameters are available in the splunkforwarder_output type.
The specific backend to use for this splunkforwarder_output resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
Manage splunkforwarder props settings in props.conf
The following parameters are available in the splunkforwarder_props type.
The specific backend to use for this splunkforwarder_props resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
Manage splunkforwarder server settings in server.conf
The following parameters are available in the splunkforwarder_server type.
The specific backend to use for this splunkforwarder_server resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
Manage splunkforwarder transforms settings in transforms.conf
The following parameters are available in the splunkforwarder_transforms type.
The specific backend to use for this splunkforwarder_transforms resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
Manage splunkforwarder web settings in web.conf
The following parameters are available in the splunkforwarder_web type.
The specific backend to use for this splunkforwarder_web resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
The Splunk::Entinstalloptions data type.
Alias of
Variant[Tuple[Hash,Hash,String,3,default], Array[String[1]]]The Splunk::Fwdinstalloptions data type.
Alias of
Variant[Tuple[Hash,String,1,default], Array[String[1]]]