The wmq cookbook contains features and functions to support the installation and management of IBM WebSphere MQSeries.
- RHEL 6.x (NOTE, MQ8 is not supported on RHEL6)
- RHEL 7.x
- Ubuntu Server 14.04 or greater
- IBM WebSphere MQSeries V8.0
- IBM WebSphere MQSeries V9.0
Currently on single node (non HA) only.
- Single installation with no configuration. This will entail configuring the kernel, installing pre-requisite libraries, installing the base and fixpack for IBM MQSeries. This pattern is relevant on a single node only.
- Single installation with 1..n queue managers defined. Queue Managers are defined using the following structure.
"wmq": {
"qmgr": {
"qmgr1": {
"name": "QMGR1",
"description": "Default Queue Manager",
"listener_port": "1414",
"loggingtype": "lc",
"primarylogs": "10",
"secondarylogs": "20",
"logsize": "16384",
"dlq": "SYSTEM.DEAD.LETTER.QUEUE"
}
}
- Linux YUM Repository - An onsite linux YUM Repsoitory is required.
SW_REPO_ROOT -> Stored in the ['ibm']['sw_repo'] attribute.
Relative to the software repository, the installation files must be stored in the following location.
- BASE FILES -> /mq/[v80|v90]/base
- FIXPACK FILES -> /mq/[v80|v90]/maint
The following is a description of files needed on the REPO Server depending on version and architecture.
Base Install Files
==================
case node['wmq]['version']
when '8.0'
case os
when 'linux'
case node['kernel']['machine']
when 'x86_64'
force_default['wmq]['archive_names'] = {
'base' => { 'filename' => 'WS_MQ_LINUX_ON_X86_64_V8.0_IMG.tar.gz',
'sha256' => '6d1db6949a2a97606eb62cc7f43977bbdf61bdd229f1a1085ad05b6fb800f176'}
}
when 'powerpc'
force_default['wmq]['archive_names'] = {
'base' => { 'filename' => 'WS_MQ_FOR_AIX_V8.0_EIMAGE.tar.tgz',
'sha256' => '6d1db6949a2a97606eb62cc7f43977bbdf61bdd229f1a1085ad05b6fb800f176'}
}
when 's390x'
force_default['wmq]['archive_names'] = {
'base' => { 'filename' => 'WS_MQ_LINUX_SYS_Z_64B_V8.0_IMG.tar.gz',
'sha256' => '6d1db6949a2a97606eb62cc7f43977bbdf61bdd229f1a1085ad05b6fb800f176'}
}
end
end
when '9.0'
case os
when 'linux'
case node['kernel']['machine']
when 'x86_64'
force_default['wmq]['archive_names'] = {
'base' => { 'filename' => 'IBM_MQ_9.0.5.0_LINUX_X86-64.tar.gz',
'sha256' => '2fbaebec64fefbf863c9d33ab50c4197cd2d3eb9cd041e1cbef7558cba61db6c'}
}
when 'powerpc'
force_default['wmq]['archive_names'] = {
'base' => { 'filename' => 'IBM_MQ_9.0.5.0_AIX.tar.gz',
'sha256' => 'f6f45473bfdf05235e1acc6af7f37f819b279aee2613058e4a1f8dcd0f8ed3c1'}
}
when 's390x'
force_default['wmq]['archive_names'] = {
'base' => { 'filename' => 'IBM_MQ_9.0.5.0_LINUX_SYSTEM_Z.tar.gz',
'sha256' => 'c5103d2a633b357d4fa8c5834b3c4788e3c6b1eb61a6f335a13db96a371fdb2a'}
}
end
end
end
Fixpack Files
=============
case node['wmq']['version']
when '8.0'
case node['os']
when 'linux'
case node['kernel']['machine']
when 'x86_64'
force_default['wmq']['fixpack_names'] = {
'fixpack' => { 'filename' => '8.0.0-WS-MQ-LinuxX64-FP000{node['wmq']['fixpack']}.tar.gz' }
}
when 'powerpc'
force_default['wmq']['fixpack_names'] = {
'fixpack' => { 'filename' => '8.0.0-WS-MQ-LinuxPPC64-FP000{node['wmq']['fixpack']}.tar.gz' }
}
when 's390x'
force_default['wmq']['fixpack_names'] = {
'fixpack' => { 'filename' => '8.0.0-WS-MQ-LinuxS390X-FP000{node['wmq']['fixpack']}.tar.gz' }
}
end
end
end
default['ibm']['sw_repo'] - URL of the Software Repository.
default['ibm']['sw_repo_user'] - User to access the software Repository.
default['ibm']['sw_repo_password'] - Password for the software repository, note, will exist in VAULT.
default['ibm']['sw_repo_self_signed_cert'] - Boolean indicating whether the repo uses a self signed certificate.
default['ibm']['sw_repo_auth'] - Boolean indicating whether the software repo is secured.
default['ibm_internal']['stack_id'] - Unique ID referencing all nodes in a deployment.
default['ibm_internal']['stack_name'] - Common name for the deployed stack.
default['ibm_internal']['vault']['name'] - Name of the Vault, will be generated by the environment.
default['ibm_internal']['vault']['item'] - Vault Item to reference, will be generated by the environment.
- Ubuntu (>= 16.04)
- Redhat (>= 7.0)
- ibm_cloud_utils
Attribute | Description | Default |
node['wmq']['advanced'] |
Install IBM MQ Advanced components: File Transfer, IBM MQ Telemetry, and Advanced Message Security. | false |
node['wmq']['data_dir'] |
The directory to install IBM MQ Data files, recommended /var/mqm | /var/mqm |
node['wmq']['fixpack'] |
The fixpack of IBM MQ to install. | 0 |
node['wmq']['global_mq_service'] |
Option to defined service for all IBM MQ Queue Manager |
|
node['wmq']['install_dir'] |
The directory to install IBM MQ Binaries, recommended /opt/mqm | /opt/mqm |
node['wmq']['kernel_sem'] |
WebSphere MQ Server Shared Memory Semaphores Value | 32 4096 32 128 |
node['wmq']['kernel_shmall'] |
WebSphere MQ Server Shared Memory Segments Max Value | 2097152 |
node['wmq']['kernel_shmmax'] |
WebSphere MQ Server Shared Memory Segments Size Value | 268435456 |
node['wmq']['kernel_shmmni'] |
WebSphere MQ Server Shared Memory Segments Value | 4096 |
node['wmq']['log_dir'] |
The directory to install IBM MQ Log Directory, recommended -> node[wmq][data_dir]/log | /var/mqm/log |
node['wmq']['net_core_rmem_default'] |
WebSphere MQ Server Kernel Configuration net_core_rmem_default | 262144 |
node['wmq']['net_core_rmem_max'] |
WebSphere MQ Server Kernel Configuration net_core_rmem_max | 4194304 |
node['wmq']['net_core_wmem_default'] |
WebSphere MQ Server Kernel Configuration net_core_wmem_default | 262144 |
node['wmq']['net_core_wmem_max'] |
WebSphere MQ Server Kernel Configuration net_core_wmem_max | 1048576 |
node['wmq']['net_ipv4_tcp_fin_timeout'] |
WebSphere MQ Server Kernel Configuration net_ipv4_tcp_fin_timeout | 60 |
node['wmq']['net_ipv4_tcp_keepalive_intvl'] |
WebSphere MQ Server Kernel Configuration net_ipv4_tcp_keepalive_intvl | 75 |
node['wmq']['net_ipv4_tcp_keepalive_time'] |
WebSphere MQ Server Kernel Configuration net_ipv4_tcp_keepalive_time | 7200 |
node['wmq']['net_ipv4_tcp_rmem'] |
WebSphere MQ Server Kernel Configuration net_ipv4_tcp_rmem | 4096 87380 4194304 |
node['wmq']['net_ipv4_tcp_sack'] |
WebSphere MQ Server Kernel Configuration net_ipv4_tcp_sack | 1 |
node['wmq']['net_ipv4_tcp_timestamps'] |
WebSphere MQ Server Kernel Configuration net_ipv4_tcp_timestamps | 1 |
node['wmq']['net_ipv4_tcp_window_scaling'] |
WebSphere MQ Server Kernel Configuration net_ipv4_tcp_window_scaling | 1 |
node['wmq']['net_ipv4_tcp_wmem'] |
WebSphere MQ Server Kernel Configuration net_ipv4_tcp_wmem | 4096 87380 4194304 |
node['wmq']['nofile_value'] |
WebSphere MQ Server Ulimit Nofile Value | 10240 |
node['wmq']['os_users']['mqm']['comment'] |
Comment associated with the IBM MQ User | IBM MQ User |
node['wmq']['os_users']['mqm']['gid'] |
Group ID of the Unix OS User for IBM MQ | mqm |
node['wmq']['os_users']['mqm']['home'] |
Home Directory of Default OS User for IBM MQ User. | /home/mqm |
node['wmq']['os_users']['mqm']['ldap_user'] |
A flag which indicates whether to create the MQ USer locally, or utilise an LDAP based user. | false |
node['wmq']['os_users']['mqm']['name'] |
Name of the Unix OS User that owns and controls IBM MQ | mqm |
node['wmq']['os_users']['mqm']['shell'] |
Location of the IBM MQ User Shell | /bin/bash |
node['wmq']['perms'] |
Default permissions for IBM MQ files on Unix | 775 |
node['wmq']['qmgr']['qmgr($INDEX)']['description'] |
Description of the Queue Manager | Queue Manager 1 |
node['wmq']['qmgr']['qmgr($INDEX)']['dlq'] |
Queue Manager dead letter queue | SYSTEM.DEAD.LETTER.QUEUE |
node['wmq']['qmgr']['qmgr($INDEX)']['listener_port'] |
Port the Queue Manager listens on. | 1414 |
node['wmq']['qmgr']['qmgr($INDEX)']['loggingtype'] |
Type of logging to use ll(Linear), lc(Circular) | lc |
node['wmq']['qmgr']['qmgr($INDEX)']['logsize'] |
Size of the IBM MQ Logs | 16384 |
node['wmq']['qmgr']['qmgr($INDEX)']['name'] |
Name of the Queue Manager to Create | qmgr1 |
node['wmq']['qmgr']['qmgr($INDEX)']['primarylogs'] |
Number of primary logs to create. | 10 |
node['wmq']['qmgr']['qmgr($INDEX)']['secondarylogs'] |
Number of Secondary Logs | 20 |
node['wmq']['qmgr_dir'] |
The directory to install IBM MQ Queue Manager Directory, recommended node[wmq][data_dir]/qmgrs | /var/mqm/qmgrs |
node['wmq']['service_name'] |
WebSphere MQ service name | mq |
node['wmq']['swap_file'] |
Swap file name | /swapfile |
node['wmq']['swap_file_size'] |
UNIX Swap size in megabytes | 512 |
node['wmq']['version'] |
The Version of IBM MQ to install, eg, 8.0 | 9.0 |
node['wmq']['vm_swappiness'] |
WebSphere MQ Server Kernel Configuration vm_swappiness | 0 |
node['wmq']['webhost'] |
The host name for MQ web console, use IP address of the node. Valid only for MQ 9.0. |
|
Cleanup recipe (cleanup.rb) Perform post-install cleanup
Create one or more queue managers if they do not already exist.
Default recipe
Installation recipe (fixpack.rb) This recipe performs the fixpack installation for the product
Evidence gathering recipe (gather_evidence.rb) This recipe will collect functional product information and store it in an archive.
Installation recipe (install.rb) This recipe performs the product installation.
Prerequisites recipe (prereq.rb) This recipe configures the operating prerequisites for the product.
Prerequisite Check Recipe (preq_check.rb) This recipe wil check the target platform to ensure installation is possible
Create the MQ service and enables it on RHEL 7 Determine Service Type, systemd or not Create the MQ service file Create Upstart Service File Create the MQ service script Enable and start the httpd service Enable and start the httpd service Enable the MQ service Start the MQ service
Start all queue managers defined for the target node.
Stop all queue managers defined for the target node.
Author:: IBM Corp (<>)
Copyright:: 2020, IBM Corp
License:: Copyright IBM Corp. 2012, 2020