activemq
: Install and configure ActiveMQ Artemis
activemq::install
: Install ActiveMQ distribution archiveactivemq::service
: Setup ActiveMQ multi-instance system service
activemq::instance
: Create an instance of ActiveMQ Artemis broker
Install and configure ActiveMQ Artemis
The following parameters are available in the activemq
class:
admin_password
admin_user
bootstrap_template
broker_template
checksum
checksum_type
cluster
cluster_name
cluster_password
cluster_user
cluster_topology
distribution_name
download_url
gid
group
hawtio_role
install_base
instance_defaults
instances
instances_base
java_args
java_xms
java_xmx
jolokia_access_template
log4j_template
logging_template
login_template
manage_account
manage_instances_base
manage_roles
manage_users
management_template
port
proxy_server
proxy_type
roles_properties_template
server_discovery
service_enable
service_ensure
service_file
service_name
service_template
symlink_name
uid
user
users_properties_template
version
Data type: String
Specifies the password to use for standalone instances.
Data type: String
Specifies the name of the user to use for standalone instances.
Data type: String
The template used to generate bootstrap.xml.
Data type: String
The template used to generate broker.xml.
Data type: Optional[String]
Specifies the checksum for the distribution archive (bin.tar.gz), which will be verified after downloading the file and before starting the installation.
Default value: undef
Data type: Optional[String]
Specifies the type of the checksum. Defaults to sha512
.
Default value: undef
Data type: Boolean
Whether to setup a cluster or a standalone instance.
Data type: Optional[String]
Specifies the name to use for the cluster.
Default value: undef
Data type: String
Specifies the password to use for clustered instances.
Data type: String
Specifies the name of the user to use for clustered instances.
Data type: Hash[String[1], Hash]
The topology of the cluster, which should contain ALL instances across the whole cluster (not only local instances), their settings and relationships.
Data type: String
Specifies the name of the distribution, which is usually used to build the actual download URL.
Data type: String
Specifies the download location. It should contain a %s
string which
is automatically replaced with the actual filename during installation.
The latter makes it easier to use mirror redirection URLs.
Data type: Optional[Integer]
Specifies an optional GID that should be used when creating the group.
Default value: undef
Data type: String
Specifies the name of the group to use for the service/instance.
Data type: String
Access to the JMX web console is only allow to users with this role.
Data type: Stdlib::Absolutepath
Specifies the installation directory. This directory must already exist. A subdirectory for every version is automatically created.
Data type: Hash
The default parameters for all instances. They are merged with all instance-specific parameters. This makes it obsolete to specify ALL required parameters for every instance, but only parameters that differ from these defaults.
Data type: Hash[String[1], Hash]
A list of instances that should be created.
Data type: Stdlib::Absolutepath
Specifies the directory where broker instances should be installed. This directory must already exist. A subdirectory for every instance is automatically created.
Data type: Hash
Options for the JVM. Be careful to not override required default options. The syntax may look a bit off, but this way it's possible to replace certain values or to remove an option by adding the value 'DISABLED'.
Data type: String
The initial Java heap size.
Data type: String
The maximum Java heap size.
Data type: String
The template used to generate jolokia-access.xml.
Data type: String
The template used to generate log4j2.properties (on version 2.27.0 and later).
Data type: String
The template used to generate logging.properties (on versions before 2.27.0).
Data type: String
The template used to generate login.config.
Data type: Boolean
Whether or not to create the user and group.
Data type: Boolean
Whether or not to create the directory specified in $instances_base
.
Data type: Boolean
Whether or not to manage ActiveMQ roles.
Data type: Boolean
Whether or not to manage ActiveMQ users.
Data type: String
The template used to generate management.xml.
Data type: Integer
Specifies the port to use for the artemis connector and will also be used as default port for the acceptor.
Data type: Optional[String]
Specify a proxy server, with port number if needed. ie: https://example.com:8080
Default value: undef
Data type: Optional[String]
Specify the proxy_type: proxy server type (none|http|https|ftp)
Default value: undef
Data type: String
The template used to generate roles.properties.
Data type: Enum['dynamic','static']
Controls how servers can propagate their connection details.
Data type: Boolean
Specifies whether the service should be enabled.
Data type: Enum['running','stopped']
Specifies the desired state for the service.
Data type: Stdlib::Absolutepath
Specifies the filename of the service file.
Data type: String
Controls the name of the system service. Must NOT be changed while instances are running.
Data type: String
The template used to generate the service definition.
Data type: String
Controls the name of a version-independent symlink. It will always point
to the release specified by $version
.
Data type: Optional[Integer]
Specifies an optional UID that should be used when creating the user.
Default value: undef
Data type: String
Specifies the name of the user to use for the service/instance.
Data type: String
The template used to generate users.properties.
Data type: String
Specifies the version of ActiveMQ (Artemis) to install and use. No default value is provided on purpose, to avoid prevent new users from using a outdated version and to avoid unexpected updates by later changing the default value.
Create an instance of ActiveMQ Artemis broker
The following parameters are available in the activemq::instance
defined type:
acceptors
acceptor_settings
address_settings
addresses
allow_failback
allow_direct_connections_only
bind
broadcast_groups
broker_plugins
check_for_live_server
connectors
discovery_groups
failover_on_shutdown
global_max_size_mb
group
ha_policy
initial_replication_sync_timeout
java_args
java_xms
java_xmx
jmx
journal_buffer_timeout
journal_datasync
journal_max_io
journal_type
log_level
log4j_level
management_notification_address
max_disk_usage
max_hops
message_load_balancing
persistence
port
role
security
service_enable
service_ensure
target_host
vote_on_replication_failure
web_bind
web_port
Data type: Hash[String[1], Hash]
ActiveMQ Artemis acceptors.
Data type: Array
Shared settings that should be used for ALL acceptors.
Data type: Hash[String[1], Hash]
A hash containing global address settings. This is especially useful for wildcard/catch all matches.
Data type: Hash[String[1], Hash]
A hash containing configuration for addresses (messaging endpoints),
queues and routing types. Note: Setting adresses and queues to
enable: false
will remove them from the configuration file, but
they will still be available in Artemis. In order to completely
remove them, the config-delete-*
options may be set to FORCE
.
Data type: Boolean
Should stop backup on live restart.
Data type: Optional[Boolean]
When using static
for server_discovery
only make connections to the defined connectors and not any other
broker in the cluser.
Default value: true
Data type: String
Configure which IP address to listen on. Should be either a FQDN or an IP address.
Data type: Array
ActiveMQ Artemis broadcast groups.
Data type: Hash[String[1], Hash]
A hash containing a list of broker plugins and their configuration.
Each plugin can be enabled by setting enable
to true
.
Data type: Boolean
Used for a live server to verify if there are other nodes with the same ID on the topology.
Data type: Hash[String[1], Hash]
ActiveMQ Artemis connectors.
Data type: Array
ActiveMQ Artemis discovery groups.
Data type: Boolean
This will cause a HA failover to occur on normal server shutdown.
Data type: Optional[Integer]
The amount in Mb before all addresses are considered full.
Default value: undef
Data type: Optional[String]
The group for ActiveMQ Artemis.
Default value: undef
Data type: Optional[Enum['live-only','replication','shared-storage']]
ActiveMQ Artemis HA policy.
Data type: Integer
Timeout for initial replication to complete.
Data type: Hash
Options for the JVM. Be careful to not override required default options. The syntax may look a bit off, but this way it's possible to replace certain values or to remove an option by adding the value 'DISABLED'.
Default value: $activemq::java_args
Data type: String
The initial Java heap size.
Default value: $activemq::java_xms
Data type: String
The maximum Java heap size.
Default value: $activemq::java_xmx
Data type: Hash
A hash containing settings for the Jolokia JMX console.
Data type: Integer
The flush timeout for the journal buffer.
Data type: Boolean
Whether ActiveMQ Artemis will use msync/fsync on journal operations.
Data type: Integer
The maximum number of write requests that can be in the ASYNCIO queue at any one time.
Data type: Enum['asyncio','mapped','nio']
The type of journal to use.
Data type: Hash
The log levels to use for the various configured loggers (on versions before 2.27.0).
Data type: Hash
The log levels to use for the various configured loggers (on version 2.27.0 and later).
Data type: String
The address to receive management notifications.
Data type: Integer
The max percentage of data to use from disks. The broker will block while the disk is full. Disable by setting -1.
Data type: Integer
Maximum number of hops cluster topology is propagated.
Data type: Enum['off','strict','on_demand']
Specifies how messages should be load balanced.
Data type: Boolean
Whether the server will use the file based journal for persistence.
Data type: Integer
The port to use.
Data type: Enum['master','slave']
The replication role.
Data type: Hash
A hash containing the security configuration, includes users and roles.
Data type: Optional[Boolean]
Specifies whether the service should be enabled for this instance.
Default value: undef
Data type: Optional[Enum['running','stopped']]
Specifies the desired service state for this instance.
Default value: undef
Data type: Optional[String]
Specifies the target host where this instance should be installed.
The value will be matched against $facts['networking']['fqdn']
.
This is especially useful for cluster configurations.
Default value: undef
Data type: Boolean
Configuration for classic replication (not needed for Pluggable Quorum Vote Replication).
Data type: String
The host name to use for embedded web server.
Data type: Integer
The port to use for embedded web server.