RabbitMQ Helper
Integration Guide
Version:2024
Publication Date:9/12/2024
©Delinea, 2024
RabbitMQ Helper Integration Guide
Version:2024, Publication Date:9/12/2024
©Delinea,2024
Warranty Disclaimer
DELINEA AND ITS AFFILIATES, AND/OR ITS AND THEIR RESPECTIVE SUPPLIERS, MAKE NO REPRESENTATIONS
ABOUT THE SUITABILITY OF THE INFORMATION CONTAINED IN THE DOCUMENTS AND RELATED GRAPHICS, THE
SOFTWARE AND SERVICES, AND OTHER MATERIAL PUBLISHED ON OR ACCESSIBLE THROUGH THIS SITE FOR ANY
PURPOSE. ALL SUCH MATERIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. DELINEA AND ITS
AFFILIATES, AND/OR ITS AND THEIR RESPECTIVE SUPPLIERS, HEREBY DISCLAIM ALL WARRANTIES AND
CONDITIONS WITH REGARD TO SUCH MATERIAL, INCLUDING ALL IMPLIED WARRANTIES AND CONDITIONS OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT.
THE MATERIAL PUBLISHED ON THIS SITE COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL
ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN. DELINEA AND ITS AFFILIATES,
AND/OR ITS AND THEIR RESPECTIVE SUPPLIERS, MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE MATERIAL
DESCRIBED HEREIN AT ANY TIME.
Disclaimer of Liability
IN NO EVENT SHALL DELINEA AND ITS AFFILIATES, AND/OR ITS AND THEIR RESPECTIVE SUPPLIERS, BE LIABLE
FOR ANY SPECIAL, INDIRECT, OR CONSEQUENTIAL DAMAGES (INCLUDING LOSS OF USE, DATA, PROFITS OR
OTHER ECONOMIC ADVANTAGE) OR ANY DAMAGES WHATSOEVER, WHETHER IN AN ACTION OF CONTRACT,
NEGLIGENCE, OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF SOFTWARE, DOCUMENTS, PROVISION OF OR FAILURE TO PROVIDE SERVICES, OR MATERIAL
AVAILABLE FROM THIS SITE.
Table of Contents
About RabbitMQ and RabbitMQ Helper vii
What can RabbitMQ Helper do for me? vii
Installing RabbitMQ with RabbitMQ Helper vii
Software Downloads and Requirements viii
Installing RabbitMQ and Setting Up a Site Connector ix
Downloading Installers using RabbitMQ Helper ix
Installing RabbitMQ Helper via command line ix
Installing RabbitMQ via the command line x
Validating the RabbitMQ Installation x
About the Install-Connector Cmdlet x
Installing RabbitMQ Online without TLS xii
Installing RabbitMQOffline without TLS xii
Installing RabbitMQ Online with TLS (Advanced) xiv
General TLS requirements xiv
Installing RabbitMQ Offline with TLS (Advanced) xv
Downloading the RabbitMQand and installers xv
General TLS requirements xv
RabbitMQ TLS Certificate requirements xvi
Exporting the machine certificate for use with RabbitMQ xvii
Exporting the Certificate Authority certificate for use with RabbitMQ xviii
Manually converting a non-TLS RabbitMQ to use TLS xviii
Updating the RabbitMQ config to use TLS xix
Installing RabbitMQ with TLS for CNG/ECC or Chained Certificates xx
About RabbitMQ Helper Management User Interface xx
Installing RabbitMQ Helper via User Interface xxi
Installing UI RabbitMQ Online without TLS xxi
Installing UI RabbitMQ Offline without TLS xxii
Installing UI RabbitMQ Online with TLS xxii
Installing UI RabbitMQ Offline with TLS xxiii
Uninstalling RabbitMQ and Erlang xxiii
Compatibility Matrix xxiii
Certificates Conversion Commands xxiv
Convert a CA Certificate to a PEM File xxiv
Example Localhostca.cer xxv
Convert a CA Certificate Chain into a PEM File xxv
Examples rootca.cer and intermediateca.cer xxv
Convert a Host PFX to a PEM File xxv
Example Localhost.pfx xxvi
How to Use CNG or ECC Certificates with the Helper xxvi
Delinea RabbitMQ Helper Integration Guide iii
Table of Contents
Convert a CNG or ECC Certificate to PEM Files xxvi
.pfx to .pem Conversion Example xxvi
Manual Conversion from .pfx to .pem Using OpenSSL xxvi
.pfx to .pem Conversion Using RabbitMQ Helper xxvii
Clustering xxvii
Clustering Prerequisites xxvii
Joining a Cluster Using the RabbitMQ Helper xxviii
Clustering a Rabbit Node Without the Helper xxix
Establishing Cluster Policy xxix
Creating a New Cluster Policy Using the Helper xxx
Establishing Policy without the Helper xxxi
Leaving a Cluster xxxi
Removing a Node from a RabbitMQ Cluster Using the Helper xxxi
Management xxxi
RabbitMQ Node Diagnostics xxxii
User Credential Validation xxxii
Node and Queue Information xxxii
Remove All Queues on a RabbitMQ Node xxxiii
LoadBalancing xxxiii
HAProxy on Ubuntu Example for POC xxxiii
Get Help for Powershell cmdlets xxxiv
Assert-RabbitMQConnectivity xxxiv
Assert-RabbitMQIsRunning xxxv
Convert-CaCertToPem xxxvi
Convert-CngOrEccToPem xxxvii
Convert-PfxToPem xxxviii
Copy-ErlangCookieFile xxxviii
Disable-RabbitMQFederationAndManagement xxxix
Disable-RabbitMQManagement xl
Enable-RabbitMQFederationAndManagement xli
Enable-RabbitMQManagement xli
Get-RabbitMQClusterName xlii
Get-RabbitMQLog xliii
Get-DownloadLocations xliv
Get-ErlangInstaller xlv
Get-RabbitMQClusterNodes xlvi
Get-RabbitMQInstaller xlvii
Get-RabbitMQQueues xlviii
Grant-RabbitMQUserPermission xlix
Install-Connector l
Install- ConnectorWithSSCred liii
Install-Erlang lvii
Delinea RabbitMQ Helper Integration Guide iv
Table of Contents
Install-RabbitMQ lviii
Join-RabbitMQCluster lix
New-RabbitMQClusterPolicy lx
New-RabbitMQConfigDirectory lxii
New-RabbitMQNonTlsConfigFiles lxiii
New-RabbitMQTlsConfigFiles lxiii
New-RabbitMQUser lxiv
Open-RabbitMQManagement lxv
Remove-RabbitMQClusterNode lxv
Remove-RabbitMQQueues lxvi
Request-RabbitMQHealthCheck lxvii
Reset-RabbitMQNodeCommand lxviii
Select-Exception lxix
Set-ErlangCookieFileCommand lxx
Set-ErlangHomeEnvironmentalVariable lxx
Set-MinMasterToClusterPolicy lxxi
Set-RabbitMQBaseEnvironmentalVariable lxxiii
Set-RabbitMQFederationUpstream lxxiv
Set-RabbitMqUserAdmin lxxv
Start-RabbitMQ lxxvii
Stop-RabbitMQ lxxvii
Test-RabbitMqPort lxxviii
Uninstall-Connector lxxx
Uninstall-Erlang lxxx
Uninstall-RabbitMQ lxxxi
Update Connector lxxxii
Update Erlang lxxxiii
Update RabbitMQ lxxxiv
Troubleshooting lxxxv
Cannot Delete epmd.exe after Uninstalling RabbitMQ and Erlang lxxxv
Can't Remove Erlang Cookie During Installation lxxxv
Management Plugin Does Not Load lxxxv
Getting Exceptions but Not Seeing Details lxxxvi
RabbitMQ "broken" After Hostname Change lxxxvi
TypeError: Cannot read properties of undefined (reading 'length') lxxxvi
Vulnerability scans return AMQP Cleartext Authentication on port 5672 on RabbitMQ server(s) lxxxvii
RabbitMQ Helper Release Notes lxxxviii
RabbitMQ Helper FAQ xc
What is RabbitMQ Helper? xc
How do Icheck if RabbitMQ is running using RabbitMQ Helper? xci
What is the purpose of a particular command? xci
Assert-RabbitMqConnectivity xci
Install-RabbitMq xci
Delinea RabbitMQ Helper Integration Guide v
Table of Contents
Grant-RabbitMqUserPermission xci
Set-RabbitMqUserAdmin xci
Test-RabbitMqPort xci
Set-ErlangHomeEnvironmentalVariable xci
How can I install Erlang using RabbitMQ Helper? xci
How do I join a RabbitMQ cluster using RabbitMQ Helper? xci
How can I remove RabbitMQ queues using RabbitMQ Helper? xci
How do I perform a health check on RabbitMQ with RabbitMQ Helper? xcii
How can I update Erlang or RabbitMQ with RabbitMQ Helper? xcii
How do I enable RabbitMQ Management features with RabbitMQ Helper? xcii
Who can log in to the RabbitMQ Management UI? xcii
How can I uninstall Erlang, RabbitMQ, or both with RabbitMQ Helper? xcii
Can I view RabbitMQ logs using RabbitMQ Helper? xcii
How can I update an existing connector using RabbitMQ Helper? xcii
Will updating an existing connector using the RabbitMQ Helper impact the existing data? xcii
Will my Queues and Messages get affected on Update? xciii
Does the Install-Connector command create a default admin account ('guest') during the process? xciii
What are the Direct Exchanges? xciii
What is a feature flag? xciii
What is ‘Enable Feature Flags for Direct Exchanges’? xciii
Delinea RabbitMQ Helper Integration Guide vi
Table of Contents
About RabbitMQ and RabbitMQ Helper
RabbitMQ is an important component of Secret Server’s on-premises environment, providing a robust framework
for queuing messages between Secret Server and its Distributed Engines. RabbitMQ is an enterprise-ready
software package that provides reliability and clustering functionality superior to other applications. For more
details, visit the RabbitMQ official website.
Note: RabbitMQ is not a Delinea product. Delinea provides support for RabbitMQ and Erlang versions that
you install with the Delinea RabbitMQHelper.
RabbitMQ Helper is a PowerShell-based tool designed to work with RabbitMQ. It provides a set of commands to
streamline various RabbitMQ-related tasks including installation, configuration, and management. This makes it
easier for users to interact with and efficiently manage RabbitMQ instances. The installation and un-installation
steps for Erlang and RabbitMQ can be performed using two workflow commands, Install-Connector and
Uninstall-Connector.
What can RabbitMQ Helper do for me?
RabbitMQ Helper can help with the following tasks:
n
Install RabbitMQ online or offline with or without TLS
n
Convert certificates for use with RabbitMQ
n
Establish RabbitMQ clusters and streamline cluster policies
n
Enable the management interface
n
Create basic users
n
View and manage the RabbitMQ log
Note: RabbitMQ Helper only works on Windows systems.
Installing RabbitMQ with RabbitMQ Helper
This documentation provides information about the different types of RabbitMQ and Helper installations, the usage
of a Site Connector, and the validation for the RabbitMQ product.
n
"Software Downloads and Requirements" on the next page
n
"Installing RabbitMQ and Setting Up a Site Connector" on pageix
n
"Installing RabbitMQ with RabbitMQ Helper" above
n
"Validating the RabbitMQ Installation" on pagex
n
"About the Install-Connector Cmdlet" on pagex
Delinea RabbitMQ Helper Integration Guide Pageviiof94
About RabbitMQ and RabbitMQ Helper
Software Downloads and Requirements
The following table lists the download links and versions for each software element required to use the RabbitMQ
Helper correctly.
Note: Delinea is aware that certain anti-virus scanners have flagged the OpenSSL download as malware.
For more information, click here. Before installing RabbitMQ Helper, you must set up inbound firewall rules
on the computer that is hosting the connector.
To view the compatible versions of the RabbitMQ-related applications, see the "Compatibility Matrix" on pagexxiii
Starting from v11.0.0.0, RabbitMQ Helper introduces a new installation method via a guided user interface. The
installation supports all types of Online and Offline installations for TLS and non-TLS configurations.
Software and
Download Links Additional Notes
RabbitMQ Helper
(current version)
To install RabbitMQ Helper for version 10.5.0.0 and above:
1. Run the cmd as an administrator.
2. Run on cmd: cd <helper-installer-directory>.
3. Run on cmd:
msiexec /i Delinea.RabbitMq.Helper.xx.x.x.x.msi /l*v install.log
Starting from version 10.2.0.0 the -UseDelineaMirror switch is now UseNonMirror.
This change happened because commands use Delinea download mirror links as the
default.
Microsoft.NET
components for the
RabbitMQ Helper
v.11.0.0
Installation of the RabbitMQ Helper v.11.0.0 requires additional components of the
Microsoft.NET - Desktop Runtime (v6.0 or above).
Microsoft.NET -
Windows Server
Hosting (v7.0 or
above)
We recommend installing .NET before you install RabbitMQ Helper.
PowerShell Core
(v7.3.2 or above)
Install PowerShell 7 before performing the RabbitMQ Helper installation. To install the
PowerShell Core:
1. Run the installer.
2. Accept the terms in the license agreement.
3. Click Install and Finish.
RabbitMQ Helper Software Downloads
Delinea RabbitMQ Helper Integration Guide Pageviiiof94
Installing RabbitMQ with RabbitMQ Helper
Software and
Download Links Additional Notes
ErLang (current
version)
RabbitMQ Server
(current version)
Installing RabbitMQ and Setting Up a Site Connector
A Site Connector is a combination of Erlang and RabbitMQ. To view the installation requirements for setting up a
site connector, open Secret Server and navigate to Installing RabbitMQ > Installation.
Downloading Installers using RabbitMQ Helper
To download the Erlang and RabbitMQ Installers using the RabbitMQ Helper, run the following commands
(recommended):
Get-ErlangInstaller -Verbose
Get-RabbitMqInstaller -Verbose
Alternatively, you can download the installers using official CND mirrors:
Get-ErlangInstaller -UseNonMirror -Verbose
Get-RabbitMqInstaller –UseNonMirror -Verbose
Installing RabbitMQ Helper via command line
To install RabbitMQ Helper for v10.5.0.0 and above:
1. Run the cmd prompt as an administrator.
2. Switch to the directory where the .msi file exists using the cd <helper-msi-directory-path> command.
3. Run the msiexec / i Delinea.RabbitMq.Helper.10.6.0.0.msi /l*v install.log command.
Note: Change the name of the .msi file as per the requirements outlined for your version.
To install RabbitMQ Helper for v10.4.2.0 and below:
1. Run the RabbitMQ Helper executable from the installation folder.
a.
PROGRAMFILES%\Delinea Software Ltd\RabbitMQ Helper\net6.0\Delinea.RabbitMQ.Helper.exe
2. This program prepares and runs a Windows PowerShell instance that is pre-configured to use the RabbitMQ
Helper PowerShell module.
Delinea RabbitMQ Helper Integration Guide Pageixof94
Installing RabbitMQ with RabbitMQ Helper
Installing RabbitMQ via the command line
Depending on your installation scenario, certain PowerShell cmdlets need to be run. For details, follow the links
below to select what type of installation you need and its relevant cmdlets.
n
Simple installations (without TLS):
l
" Installing RabbitMQ Online without TLS" on pagexii
l
"Installing RabbitMQOffline without TLS " on pagexii
n
Advanced installations (with TLS):
l
"Installing RabbitMQ Online with TLS (Advanced)" on pagexiv
l
"Installing RabbitMQ Offline with TLS (Advanced)" on pagexv
Validating the RabbitMQ Installation
After successfully installing RabbitMQ, the next step is to validate the RabbitMQ Helper installation.
Use the following commands in the RabbitMQ Helper PowerShell window:
1. Assert-RabbitMqConnectivity—Validates the connectivity to RabbitMQ.
2. Assert-RabbitMqIsRunning—Validates that RabbitMQ is running on the current host.
Note: The command run was successful if no output is shown after the command execution.
About the Install-Connector Cmdlet
The table below lists the commands to process in the Install-Connector cmdlet. Use the Install-Connector cmdlet to
install RabbitMQ and not the individual commands available.
Command Description
Get-ErlangInstaller
Downloads the currently supported Erlang installer.
Get-RabbitMqInstaller
Downloads the currently supported RabbitMQ installer.
Uninstall-RabbitMq
Uninstalls the previous RabbitMQ installation.
Uninstall-Erlang
Uninstalls the previous Erlang installation.
Set-ErlangHomeEnvironmentalVariable
Sets the Erlang and RabbitMQ environmental variables.
Install-Erlang
Installs Erlang.
New-RabbitMqConfigDirectory
Creates a custom RabbitMQ configuration directory.
Install-Connector Cmdlet commands
Delinea RabbitMQ Helper Integration Guide Pagexof94
Installing RabbitMQ with RabbitMQ Helper
Command Description
Set-RabbitMqBaseEnvironmentalVariable
Sets the RabbitMQ BASE environment variable to the created
configuration directory.
With TLS
Convert-CaCerToPem
Converts a CA certificate to the PEM file format.
Convert-PfxToPem
Converts a Host PFX to the PEM file format.
Convert-CngOrEccToPem
Converts a CNG or ECC key type certificate to the PEM file
format.
New-RabbitMqTlsConfigFiles
Creates a RabbitMQ TLS configuration file.
Install-RabbitMq
Installs RabbitMQ.
Copy-ErlangCookieFile
Copies the Erlang system cookie to the current user profile.
Assert-RabbitMqIsRunning
Verifies that RabbitMQ is running.
Enable-RabbitMqManagement
Enables the RabbitMQ management UI.
New-RabbitMqUser
Creates a basic user.
Grant-RabbitMqUserPermission
Grants permissions to the created user.
Assert-RabbitMqConnectivity
Verifies that the newly created user can connect to RabbitMQ
with TLS.
Delete-RabbitMqUser
Deletes a default Admin(guest) in RabbitMQ.
Create RabbitMQ Management Admin
Creates an Admin User for RabbitMQ Management UI access
and for running commands that need Admin access.
Without TLS
New-RabbitMqNonTlsConfigFiles
Creates a RabbitMQ non-TLS configuration file.
Install-RabbitMq
Installs RabbitMQ.
Copy-ErlangCookieFile
Copies the Erlang system cookie to the current user profile.
Assert-RabbitMqIsRunning
Verifies that RabbitMQ is running.
Enable-RabbitMqManagement
Enables the RabbitMQ management UI.
Delinea RabbitMQ Helper Integration Guide Pagexiof94
Installing RabbitMQ with RabbitMQ Helper
Command Description
New-RabbitMqUser
Creates a basic user.
Grant-RabbitMqUserPermission
Grants permissions to the created user.
Assert-RabbitMqConnectivity
Asserts that the newly created user can connect to RabbitMQ
without TLS.
Delete-RabbitMqUser
Deletes a default Admin(guest) in RabbitMQ.
Create RabbitMQ Management Admin
Creates an Admin User for RabbitMQ Management UI access
and for running commands that need Admin access.
Note: After a successful installation, you must create an Admin User to access RabbitMQ Management.
Therefore, the Install-Connector command process now includes a provision to add an Admin User.
Installing RabbitMQ Online without TLS
If you're installing RabbitMQwithout TLS, run the following PowerShell commands:
# Get the values from your Secret Server Site Connector page for the following:
$username = "<SITE CONNECTOR USERNAME FROM SECRET SERVER>"
$password = "<SITE CONNECTOR PASSWORD FROM SECRET SERVER>"
# Create a PSCredential object to use for the installation
$credential = New-Object System.Management.Automation.PSCredential ($username,
(ConvertTo-SecureString -String $password -AsPlainText -Force))
#Online install without TLS command
Install-Connector ` -Credential $credential ` -Verbose;
There are more switches for this Install-Connector cmdlet. For more information, run get-help install-
connector when inside the RabbitMQ Helper.
Note: Using an admin account for the installation is required.
Installing RabbitMQOffline without TLS
An offline RabbitMQ installation is helpful when you are trying to install RabbitMQ on a system without internet
access and cannot download any installers directly.
To perform an offline installation without TLS for the version 10.5.0.0 and higher
1. Download the Erlang and RabbitMQ Installers on a computer with internet access using the installation links
provided in the "Installing RabbitMQ with RabbitMQ Helper" on pagevii section.
Delinea RabbitMQ Helper Integration Guide Pagexiiof94
Installing RabbitMQ with RabbitMQ Helper
Note: Make sure to verify the compatibility matrix before downloading the installer.
2. Copy the downloaded installers (for Erlang and RabbitMQ) and RabbitMQ-Helper Installer to the target (offline)
host computer.
3. Install the RabbitMQ-Helper on the host computer that does not have internet access.
4. Conduct the desired offline installation on the target host by running the commands provided below.
#Get the values from your Secret Server Site Connector page for the following:
$username = "<SITE CONNECTOR USERNAME FROM SECRET SERVER>"
$password = "<SITE CONNECTOR PASSWORD FROM SECRET SERVER>"
#Create a PSCredential object to use for the installation
$credential = New-Object System.Management.Automation.PSCredential ($username,
(ConvertTo-SecureString -String $password -AsPlainText -Force))
Install-Connector ` -Credential $credential ` -OfflineErlangInstallerPath "<erlang-
installer-with-complete-path>" ` -OfflineRabbitMqInstallerPath "<rabbitmq-installer-
with-complete-path>" ` -Verbose;
To perform an offline installation without TLS for the version 10.4.2.0 and lower:
1. Download the Erlang and RabbitMQ Helper on a computer with internet access. For details about the
installation process, see "Installing RabbitMQ with RabbitMQ Helper" on pagevii.
Note: Make sure to verify the compatibility matrix before downloading the installer.
2. Copy the downloaded installers (Erlang and RabbitMQ) and RabbitMQ Helper Installer to the target (offline)
host computer.
3. Install the RabbitMQ Helper on the host computer that does not have internet access.
4. Run the scripts listed below on the host computer where RabbitMQ Helper is installed.
These scripts are a necessary preliminary step for the RabbitMQ installation command, as they prepare the
Helper for offline installation.
Get-ErlangInstaller ` -PrepareForOfflineInstall ` -OfflineErlangInstallerPath "<erlang-
installer-with-complete-path>" ` -Verbose;
#Use the -Force switch to force download even if the files exist on the system
Get-RabbitMqInstaller ` -PrepareForOfflineInstall ` -OfflineRabbitMqInstallerPath
"<rabbitmq-installer-with-complete-path>" ` -Verbose;
#Use the -Force switch to force download even if the files exist on the system
5. Conduct the desired offline installation on the target host by running the installation scripts provided below.
Delinea RabbitMQ Helper Integration Guide Pagexiiiof94
Installing RabbitMQ with RabbitMQ Helper
# Get the values from your Secret Server Site Connector page for the following:
$username = "<SITE CONNECTOR USERNAME FROM SECRET SERVER>"
$password = "<SITE CONNECTOR PASSWORD FROM SECRET SERVER>"
# Create a PSCredential object to use for the installation
$credential = New-Object System.Management.Automation.PSCredential ($username,
(ConvertTo-SecureString -String $password -AsPlainText -Force))
# Offline Installation Without TLS
Install-Connector ` -Credential $credential ` -OfflineErlangInstallerPath "<erlang-
installer-with-complete-path>" ` -OfflineRabbitMqInstallerPath "<rabbitmq-installer-
with-complete-path>" ` -Verbose;
There are more switches for this Install-Connector cmdlet. For more information, run get-help install-
connector when inside the RabbitMQ Helper.
Installing RabbitMQ Online with TLS (Advanced)
General TLS requirements
n
The certificate used has to match the hostname used by RabbitMQ. Wildcard certificates are supported.
n
The certificate has to be an RSA with 2048 bit encryption or higher for the RabbitMQ Helper to be able to
convert it.
l
CNG and/or ECC certificates can be manually converted with OpenSSL, see Convert a CNG or ECC
certificate to PEM File
n
The certificate chain has to be trusted by both the RabbitMq node and anything connecting to the RabbitMQ
host.
l
If using self-signed certificated, ensure that the certificates are properly installed in the certificate store.
To conduct an online with TLS installation, run the commands provided below.
$path = "C:\Program Files\Delinea Software Ltd\RabbitMq Helper\net6.0"
$username = "<SITE CONNECTOR USERNAME FROM SECRET SERVER>"
$password = "<SITE CONNECTOR PASSWORD FROM SECRET SERVER>"
# Create a PSCredential object to use for the installation
$cred = New-Object System.Management.Automation.PSCredential ($username, (ConvertTo-
SecureString -String $password -AsPlainText -Force))
# FQDN which will be used by clients connecting to this RabbitMq host
$fqdn = "localhost";
$certpath = $path;
Delinea RabbitMQ Helper Integration Guide Pagexivof94
Installing RabbitMQ with RabbitMQ Helper
$pfxCred = Get-Credential -UserName PfxUserName -Message "Enter the PFX password. Username
is ignored";
#(the password for the example localhost.pfx certificate is "password1")
#$password = ConvertTo-SecureString "PlainTextPassword" -AsPlainText -Force
#$pfxCred = New-Object System.Management.Automation.PSCredential ("Ignored", $password)
Install-Connector ` -Hostname $fqdn ` -Credential $cred ` -UseTls ` -CaCertPath
"$certpath\localhostca.cer" ` -PfxPath "$certpath\localhost.pfx" ` -PfxCredential $pfxCred
` -Verbose;
There are more switches for this commandlet, your run "get-help install-connector" when inside the helper for more
information.
Note: Using a local, non-domain admin account for the installation is required.
Installing RabbitMQ Offline with TLS (Advanced)
Downloading the RabbitMQand and installers
Before you begin, make sure that you download the RabbitMQand Erlang installers.
Note: Starting from version 10.2.0.0 the -UseDelineaMirror switch is now UseNonMirror. This change
happened because commands are using Delinea download mirror links as the default.
To set up download locations, run the commands below.
To get the download locations for the installers, run the following command:
Get-DownloadLocations;
#To get the official CNDmirror download location, run the following command:
Get-DownloadLocations -UseNonMirror
Next, copy the offline folder to the target system which does not have internet and proceed with the desired
installation.
General TLS requirements
n
The certificate used has to match the hostname used by RabbitMq. Wildcard certificates are supported.
n
The certificate has to be an RSA with 2048 bit encryption or higher for the RabbitMq Helper to be able to convert
it.
l
CNG and/or ECC certificates can be manually converted with OpenSSL, see Convert a CNG or ECC
certificate to PEM File
n
The certificate chain has to be trusted by both the RabbitMq node and anything connecting to the RabbitMq
host.
l
If using self-signed certificated, ensure that the certificates are properly installed in the certificate store.
Delinea RabbitMQ Helper Integration Guide Pagexvof94
Installing RabbitMQ with RabbitMQ Helper
Conduct the desired offline installation by running the commands provided below.
$path = "C:\Program Files\Delinea Software Ltd\RabbitMq Helper\net6.0"
$username = "<SITE CONNECTOR USERNAME FROM SECRET SERVER>"
$password = "<SITE CONNECTOR PASSWORD FROM SECRET SERVER>"
# Create a PSCredential object to use for the installation
$cred = New-Object System.Management.Automation.PSCredential ($username, (ConvertTo-
SecureString -String $password -AsPlainText -Force))
# FQDN which will be used by clients connecting to this RabbitMq host. *It has to match
the subject name in the PFX*
$fqdn = "fullyqualifieddomainname.in.the.pfx";
$certpath = $path;
#(the password for the example localhost.pfx certificate is "password1")
#if you don't want to be prompted, you can hardcode your credential in the script
#$password = ConvertTo-SecureString "PlainTextPassword" -AsPlainText -Force
#$pfxCred = New-Object System.Management.Automation.PSCredential ("Ignored", $password)
Install-Connector ` -Hostname $fqdn ` -Credential $cred ` -UseTls ` -CaCertPath
"$certpath\localhostca.cer" ` -PfxPath "$certpath\localhost.pfx" ` -PfxCredential $pfxCred
` -OfflineErlangInstallerPath "$path\o-erlang.exe" ` -OfflineRabbitMqInstallerPath
"$path\o-rabbitMq.exe" ` -Verbose;
There are more switches for this Install-Connector cmdlet. For more information, run get-help install-
connector when inside the RabbitMQ Helper.
Note: Using a local, non-domain admin account for the Installation is suggested.
RabbitMQ TLS Certificate requirements
TLS Certificates for RabbitMQ must comply with the following rules:
n
Common name should match the host FQDN.
n
Subject alternative name for the host NetBIOS name.
n
Subject alternative name for the cluster name (if you are planning to implement a RabbitMQ cluster).
n
Certificate must have the private key.
n
Certificate must support Server Authentication.
n
Key size of at least 2048 bits or higher.
n
Optional: Installed in the machine’s local certificate store if possible (not all certificate formats and certificate
authorities will support this).
n
The certificate should come from a certificate authority with a certificate in the Trust Root Certification
Authorities store on the host.
Delinea RabbitMQ Helper Integration Guide Pagexviof94
Installing RabbitMQ with RabbitMQ Helper
Exporting the machine certificate for use with RabbitMQ
To export the machine certificate:
1. Open the Certificate Manager.
2. Press Win + R to open the Run dialog.
3. Type certmgr.msc and press Enter.
4. In the Certificate Manager, go to Personal > Certificates.
5. Find the certificate you want to export.
6. Right-click the certificate and select All Tasks > Export.
7. The Certificate Export Wizard will open. Select Next.
8. Select Yes, export the private key and then, select Next.
9. Ensure that Personal Information Exchange - PKCS #12 (.PFX) is selected.
10. Check Password and enter a password to protect the PFX file. Confirm the password and select Next.
11. Select Browse to choose the location and file name for the PFX file.
12. Enter the desired file name and select Save.
13. Select Next and review the settings.
14. Select Finish to complete the export process.
Delinea RabbitMQ Helper Integration Guide Pagexviiof94
Installing RabbitMQ with RabbitMQ Helper
Exporting the Certificate Authority certificate for use with RabbitMQ
To export the Certificate Authority certificate:
1. Open the Certificate Manager.
2. Press Win + R to open the Run dialog.
3. Type certmgr.msc and press Enter.
4. In the Certificate Manager, go to Trusted Root Certification Authorities > Certificates.
5. Find the root certificate you want to export.
6. Right-click the certificate and select All Tasks > Export.
7. The Certificate Export Wizard will open. Select Next.
8. Choose DER encoded binary X.509 (.CER).
9. Select Browse to choose the location and file name for the CER file.
10. Enter the desired file name and select Save.
11. Select Next and review the settings.
12. Select Finish to complete the export process.
Manually converting a non-TLS RabbitMQ to use TLS
Converting the host PFX certificate
1. Install OpenSSL.
You can also choose another service for the certificate conversion.
2. Run the "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" pkcs12 -in <filename>.pfx -nocerts
-out key.pem:
a. Enter password created when the PFX was created.
b. Enter a password to use for the PEM (best to use the same password as the PFX).
3. Run the "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" pkcs12 -in <filename>.pfx -clcerts
-nokeys -out cert.pem using the original PFX password.
4. Run the "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" rsa -in key.pem -out cert.key using
the newly created password.
Converting the Trusted Root Certificate Authority Certificate
Run the "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" x509 -in ca.cer -outform pem -out ca.pem.
The complete example looks like the following:
n
"C:\Program Files\OpenSSL-Win64\bin\openssl.exe" pkcs12 -in c:\temp\RMQCLUSTER3.pfx -
nocerts -out c:\temp\key.pem
n
"C:\Program Files\OpenSSL-Win64\bin\openssl.exe" pkcs12 -in c:\temp\RMQCLUSTER3.pfx -
clcerts -nokeys -out c:\temp\cert.pem
Delinea RabbitMQ Helper Integration Guide Pagexviiiof94
Installing RabbitMQ with RabbitMQ Helper
n
"C:\Program Files\OpenSSL-Win64\bin\openssl.exe" rsa -in c:\temp\key.pem -out
c:\temp\cert.key
n
"C:\Program Files\OpenSSL-Win64\bin\openssl.exe" x509 -in c:\temp\ca.cer -outform pem -out
c:\temp\ca.pem
If the process was successful, you should have the following files ready for use with RabbitMQ:
n
ca.pem
n
cert.pem
n
cert.key
Updating the RabbitMQ config to use TLS
To make necessary updates to use TLS in the RabbitMQ:
1. Copy the ca.pem, cert.pem, and cert.key to c:\RabbitMQ location on your RabbitMQ host.
2. Run notepad as administrator and open C:\RabbitMq\rabbitmq.conf.
3. Add the following lines to the end of the config file:
listeners.ssl.default = 5671
ssl_options.versions.1 = tlsv1.2
ssl_options.versions.2 = tlsv1.3
ssl_options.verify = verify_peer
ssl_options.fail_if_no_peer_cert = false
ssl_options.cacertfile = C:\\RabbitMq\\ca.pem
ssl_options.certfile = C:\\RabbitMq\\cert.pem
ssl_options.keyfile = C:\\RabbitMq\\cert.key
The complete example will look like the following:
listeners.tcp.default = 5672
# logging to file and/or to an exchange
# log.dir = C:\\temp
# log.file = false
log.file.level = error
# log.exchange = true
# log.exchange.level = error
listeners.ssl.default = 5671
ssl_options.versions.1 = tlsv1.2
ssl_options.versions.2 = tlsv1.3
ssl_options.verify = verify_peer
ssl_options.fail_if_no_peer_cert = false
Delinea RabbitMQ Helper Integration Guide Pagexixof94
Installing RabbitMQ with RabbitMQ Helper
ssl_options.cacertfile = C:\\RabbitMq\\ca.pem
ssl_options.certfile = C:\\RabbitMq\\cert.pem
ssl_options.keyfile = C:\\RabbitMq\\cert.key
Installing RabbitMQ with TLS for CNG/ECC or Chained Certificates
The TLS Installation process for CNG/ECC or Chained certificates differs because this conversion requires
OpenSSL as a prerequisite. If you don’t have OpenSSL installed, click here to download it.
If you're installing RabbitMQ with TLS for CNG/ECC or Chained Certificates, follow these steps:
1. Perform a Non-TLS Installation(Offline/Online).
2. Convert the CNG/ECC or Chained certificates to PEM using Conversion commands.
After the conversion, you will get a .pem and a .key files. For details, see "Certificates Conversion Commands"
on pagexxiv.
3. Convert a CA Certificate to PEM using the Convert-CaCertToPem command.
4. In the PowerShell prompt, run the following commands:
#Run the below command to configure your Non-TLS installation for TLS
New-RabbitMqTlsConfigFiles ` -CaCertFile <ca.pem-file-with-full-path> ` -CertFile
<converted-cert.pem-file-with-full-path> ` -KeyFile <generated-cert.key-file-with-
full-path> -Verbose;
About RabbitMQ Helper Management User Interface
With v11.0.0.0, RabbitMQ Helper introduces a new user interface (UI) to simplify RabbitMQ installation by
executing commands for Erlang and RabbitMQ installation. It supports all types of Online and Offline installations
for TLS and non-TLS configurations.
Delinea RabbitMQ Helper Integration Guide Pagexxof94
Installing RabbitMQ with RabbitMQ Helper
Installing RabbitMQ Helper via User Interface
Once you run RabbitMQ Helper v11.0.0.0, a welcome screen with the documentation hyperlink will appear for any
related help. Select Next to see all the options available for RabbitMQ installation.
You can select the Advanced (PowerShell) option to execute any command other than the Installation. It will open
the PowerShell window to execute all the Helper commands using this PowerShell window just as the Helper used
to work in earlier versions.
Installing UI RabbitMQ Online without TLS
To install RabbitMQ online without TLS:
1. From the available installation options on the welcome screen, select Online Installation without TLS.
2. In the displayed dialog, accept the Erlang and RabbitMQ License Agreement. Once you check both the
license checkboxes, select Next.
3. In the displayed dialog, provide your Secret Server Site Connector credentials. Once you enter the username
and password, select Next.
4. The installation starts, and process information is displayed in the Command Run Output dialog.
5. Upon installation completion, you will get a message box mentioning ‘Command Run Successful’.
6. Select OK to create an Admin user to access RabbitMQ Management UI. If you select No, the installation will be
interrupted, and you return to the Installation Options screen.
Note: RabbitMQ Management UI is available only for users with an Admin role.
Delinea RabbitMQ Helper Integration Guide Pagexxiof94
Installing RabbitMQ with RabbitMQ Helper
7. In the displayed dialog, provide your Admin user credentials.
8. Entering the username and password enables the Next button, and then the Command Run Output window
displays the process of creating the Admin user.
Installing UI RabbitMQ Offline without TLS
The process for installing RabbitMQ without TLS using the offline installers is similar to installing UI RabbitMQ
Online without TLS. The only difference is the extra dialog after the Erlang and RabbitMQ License Agreement
requesting offline installer paths. Provide the installer paths, and select Next to finalize the installation.
Installing UI RabbitMQ Online with TLS
To install RabbitMQ online with TLS:
1. From the available installation options on the welcome screen, select Online Installation with TLS.
2. In the next dialog, accept Erlang and RabbitMQ License Agreement. Once you check both the license
checkboxes, select Next.
3. In the displayed dialog, provide your Hostname. By default, the hostname is
localhost
.
4. In the displayed dialog, specify the Certificate file path. You can select the certificate from the local directory.
Select, Next.
5. Specify the PFX file path. You can select the PFX file from the local directory. Select, Next.
6. Provide the PFX credentials. By default, the username is
Ignored
. Select, Next.
7. The installation starts, and process information is displayed in the Command Run Output dialog.
Delinea RabbitMQ Helper Integration Guide Pagexxiiof94
Installing RabbitMQ with RabbitMQ Helper
8. Provide your Secret Server Site Connector credentials. Once you enter the username and password, select
Next.
9. The installation starts, and process information is displayed in the Command Run Output dialog.
10. Upon installation completion, you will get a message box mentioning ‘Command Run Successful’.
11. Select OK to create an Admin user to access RabbitMQ Management UI. If you select No, the installation will be
interrupted, and you return to the Installation Options screen.
12. In the displayed dialog, provide your Admin user credentials.
13. Entering the username and password enables the Next button, and then the Command Run Output window
displays the process of creating the Admin user.
Installing UI RabbitMQ Offline with TLS
To perform RabbitMQ installation with TLS, complete the steps described in the Installing UI RabbitMQ Online
with TLS section. After the Erlang and RabbitMQ License Agreement completion, in the displayed dialog, provide
offline installer paths. Then, select Next to finalize the installation.
Uninstalling RabbitMQ and Erlang
Note: If you have issues with RabbitMQ or Erlang, it is recommended to look at the troubleshooting section
first.
Run the following commands to delete the required software:
n
To uninstall RabbitMQ and Erlang installations, run the Uninstall-Connector cmdlet. This cmdlet removes
both RabbitMQ and Erlang from the system.
n
To uninstall only Rabbit MQ, run the Uninstall-RabbitMq cmdlet.
n
To uninstall only Erlang, run the Uninstall-Erlang cmdlet.
For details about the RabbitMQ cmdlests, see "Uninstall-Connector" on pagelxxx, "Uninstall-Erlang" on pagelxxx
and "Uninstall-RabbitMQ" on pagelxxxi.
Compatibility Matrix
To install the supported version of the RabbitMQ-related applications, see the "Installing RabbitMQ with RabbitMQ
Helper" on pagevii.
RabbitMQ Helper Release Date Erlang RabbitMQ
v11.0.0.0 8/29/2024 v26.2.5 v3.13.2
v10.6.0.0 7/03/2024 v26.2.5 v3.13.2
Delinea RabbitMQ Helper Integration Guide Pagexxiiiof94
Uninstalling RabbitMQ and Erlang
RabbitMQ Helper Release Date Erlang RabbitMQ
v10.5.0.0 6/07/2024 v26.2.1 v3.12.12
v10.4.2.0 2/16/2024 v26.2.1 v3.12.12
v10.4.1.0 12/01/2023 v26.1.2 v3.12.8
v10.4.0.0 9/22/2023 v26.0.2 v3.12.2
v10.3.0.0 8/25/2023 v26.0.2 v3.12.2
v10.2.0.0 6/12/2023 v25.1.2 v3.11.2
v10.1.0.0 5/23/2023 v25.1.2 v3.11.2
v10.0.0.1 5/4/2023 v25.1.2 v3.11.2
v10.0.0.0 8/2/2023 v25.1.2 v3.11.2
v9.6.0.0 12/20/2022 v25.1.2 v3.11.2
v9.5.0.2 3/8/2022 v24.0.0 v3.9.5
v9.5.0.1 11/7/2022 v24.0.0 v3.9.5
v9.5.0.0 3/14/2022 v24.0.0 v3.9.5
RabbitMQ recommends performing a rolling upgrade, i.e., upgrading to the corresponding version
rather than jumping from a very old to the latest version. For more details, see the RabbitMQ official
documentation.
Certificates Conversion Commands
The Convert cmdlets may be necessary when renewing a certificate, as typical installation commands handle initial
certificate conversion and placement.
OpenSSL must be installed for the conversion using the Convert-CngOrEccToPem and Convert-
CaCertChainToPem commands. Also, the path must be set in the System Environment Variables (for
example, C:\Program Files\OpenSSL-Win64\bin).
Convert a CA Certificate to a PEM File
RabbitMQ only supports the PEM file format for certificate verification. Typically, a collection of CA certificates is
provided in a single file called a CA bundle. There are two types of certificates: Root and Intermediate.
Delinea RabbitMQ Helper Integration Guide Pagexxivof94
Certificates Conversion Commands
After generation, the newly created PEM file will appear in HomeDirectory%\rabbitmq.
For more information on certificates and TLS Support for RabbitMQ, see TLS Support.
Example Localhostca.cer
The Examples folder contains the following test file: localhostca.cer. This certificate file CER is strictly for testing
TLS on a single machine. You have to import it into the machine Trusted Root Certification Authorities since it is not
an actual CA certificate and is not trusted. Any connections made to RabbitMQ when this certificate is used will
otherwise fail.
$path = "$env:programfiles\Delinea Software Ltd\RabbitMq Helper\net6.0\Examples";
#Use a real CA cert in production unless there are good reasons not to
Convert-CaCertToPem `
-CaCertPath "$path\localhostca.cer" `
-Verbose;
Convert a CA Certificate Chain into a PEM File
RabbitMQ only supports the PEM file format for certificate verification. The new PEM file created below will be
placed in the %HomeDirectory%\rabbitmq folder. Chains of CA certificates are usually distributed together in a
single file, called a CA bundle. One certificate is considered a Root certificate, and the other is an Intermediate
certificate.
The new PEM file created will be appear in HomeDirectory%\rabbitmq.
Examples rootca.cer and intermediateca.cer
In the Examples folder, you will find the rootca.cer and the intermediateca.cer files. These certificates are
aimed to test TLS on a single machine. It is important to note that they are not actual CA certificates and therefore,
cannot be trusted. To use them, import them into the Trusted Root Certification Authorities folder. Any connections
made to RabbitMQ when these certificates are used before this addition, will fail.
$path = "$env:programfiles\Delinea Software Ltd\RabbitMq Helper\Examples";
# Use real CA certs in production unless there are good reasons not to Convert-
CaCertChainToPem
-RootCertPath "$path\rootca.cer"
-IntermediateCertPath "$path\intermediateca.cer" `
-Verbose;
Click here for more information on certificates and TLS Support for RabbitMQ.
Convert a Host PFX to a PEM File
RabbitMQ only supports the PEM File format for certificate verification. After generation, the newly created PEM file
will appear in HomeDirectory%\rabbitmq.
Delinea RabbitMQ Helper Integration Guide Pagexxvof94
Certificates Conversion Commands
Example Localhost.pfx
The Examples folder contains the following test file: localhost.pfx. This PFX is strictly for testing TLS on a single
machine. You must import it into the Personal/Certificates certificate store, as it is not a valid certificate issued
by a CA and is not trusted.
$path = "$env:programfiles \Program Files\Delinea Software Ltd\RabbitMq
Helper\net6.0\Examples”;
Convert-PfxToPem
-PfxPath "$path\localhost.pfx"
-PfxCredential $pfxCred
-Verbose;
For more information on certificates, see RabbitMQ TLS Support.
How to Use CNG or ECC Certificates with the Helper
To use CNG or ECC certificates:
1. Run the Convert-CngOrEccToPem command to convert your CNG or ECC PFX certificate to cert.key and
cert.pem files.
2. Follow the Convert a CA Certificate to a PEM File instructions to generate your ca.pem file.
3. Follow the instructions to install RabbitMQ with TLS enabled, using the localhost certs.
4. Replace the example cert.key, cert.pem, and ca.pem in %HomeDirectory%\rabbitmq with your files.
5. Restart the RabbitMQ service using the Stop-RabbitMq and Start-RabbitMq helper commands.
Convert a CNG or ECC Certificate to PEM Files
RabbitMQ only supports the PEM File format for certificate verification. The new PEM file created below will be
placed in the %HomeDirectory%\rabbitmq folder.
.pfx to .pem Conversion Example
The Examples folder contains the following test file: localhost.pfx. This PFX is strictly for testing TLS on a single
machine. You have to import it in the Personal/Certificates certificate store for it to be useable, as it is not a
valid certificate issued by a CA and is not trusted. Any connections made to RabbitMQ when this certificate is used
before being added to the store, will otherwise fail.
RabbitMQ supports CNG and/or ECC certificates. OpenSSL is needed to convert these types of certificates from
PFX. OpenSSL can also be used directly to perform the conversion.
Manual Conversion from .pfx to .pem Using OpenSSL
For manual conversions, use the following commands:
Delinea RabbitMQ Helper Integration Guide Pagexxviof94
Certificates Conversion Commands
openssl pkcs12 -in localhost.pfx -nocerts -out cert.key -nodes
openssl pkcs12 -in localhost.pfx -clcerts -nokeys -out cert.pem
.pfx to .pem Conversion Using RabbitMQ Helper
You can use the Convert-CngOrEccToPem command for this conversion. It will generate the two files below in the
%HomeDirectory%\rabbitmq folder:
n
CngEccCert.key
n
CngEccCert.pem
The converted files will be generated in the RabbitMQ folder inside the Default Directory (for example,
C:\RabbitMq\...).
$path = "$env:programfiles\Delinea Software Ltd\RabbitMq Helper\net6.0\Examples";
#$password = ConvertTo-SecureString “PlainTextPassword” -AsPlainText -Force
#$pfxCred = New-Object System.Management.Automation.PSCredential (“Ignored”, $password)
Convert- CngOrEccToPem `
-PfxPath "$path\localhost.pfx" `
-PfxCredential $pfxCred `
-Verbose;
Clustering
The RabbitMQ Helper is a tool that streamlines that streamlines the RabbitMQ clustering process on Windows. For
instructions, see Clustering Guide and Quorum Queues.
Warning: For Quorum Queues, ensure you have at least three nodes, or your cluster cannot tolerate a
node fault.
Warning: Be careful not to decommission a node from your cluster without first removing it from the
member list of the Quorum Queues. It hosts replicas using the rabbitmq-queues shrink command. And if
adding nodes after Quorum Queues has been configured in Secret Server, you must explicitly add the
Quorum Queues to the node by using therabbitmq-queues grow command. For more details,
seeRabbitMq Quorum Queue Management documentation.
The Helper does not assist with load-balancing. For details, see Load Balancing.
Clustering Prerequisites
When RabbitMQ is installed on a virtual or physical machine, it is already in a cluster of one node. To add another
node to the cluster, you need to install RabbitMQ on a different virtual or physical machine and then join either of the
nodes to the other cluster. The cluster name is irrelevant and can be changed later.
Delinea RabbitMQ Helper Integration Guide Pagexxviiof94
Clustering
n
Ensure that you have at least two RabbitMQ nodes already installed following the appropriate installation
process.
n
Ensure that all cluster nodes can resolve each others’ DNSnames to the corerct IPs.
n
Install RabbitMQ on N+1 virtual or physical machines.
n
Check the availability of open firewall for cluster ports:
l
Make sure the firewall rule is open for the network type (private/domain only) on each virtual/physical
machine where RabbitMQ nodes will be installed.
l
Required TCP ports: 4369, 25672,44002.
n
See RabbitMQ Clustering to find the value for the Erlang cookie of Rabbit Service on the node that you are
trying to join.
n
On Erlang versions starting with 20.2, the cookie file locations are:
l
%HOMEDRIVE%\%HOMEPATH%\.erlang.cookie (usually C:\Users\%USERNAME%\erlang.cookie for user
%USERNAME%’) if both the HOMEDRIVE and HOMEPATH environment variables are set.
l
%USERPROFILE%\.erlang.cookie, (usually C:\`Users\%USERNAME%\.erlang.cookie') if HOMEDRIVE
and HOMEPATH are not set.
n
For the RabbitMQ Windows service: %USERPROFILE%\.erlang.cookie (usually
C:\`WINDOWS\system32\config\systemprofile'). The cookie file used by the Windows service account and
the user running CLI tools must be synchronized.
n
On Erlang versions prior to 20.2 (e.g. 19.3 or 20.1), the cookie file locations are:
%HOMEDRIVE%%HOMEPATH%.erlang.cookie (usually C:\`Users%USERNAME%.\erlang.cookie for user
%USERNAME%') if both the HOMEDRIVE and HOMEPATH environment variables are
set,%USERPROFILE%.erlang.cookie (usually C:\`Users\%USERNAME%.\erlang.cookie') if HOMEDRIVE and
HOMEPATH are not both set.
n
For the RabbitMQ Windows service: %WINDIR%\Users\%USER%.\erlang.cookie (usually
C:Users\<UserName>.\erlang.cookie) The cookie file used by the Windows service account and the user
running CLI tools must be synchronized.
Usually, the cookie location is the following: C:\WINDOWS\system32\config\systemprofile. That cookie value is the
shared secret for the cluster, so all nodes joining the cluster must use this shared secret. By retrieving the value
from the cookie in the above node's location, try to join and use it with the Set ErlangCookieFileCommand on
another node. The other node will have its Erlang cookie set to match the first node. Clustering commands join the
other node to the first node and then bring the first node into the mirror.
Joining a Cluster Using the RabbitMQ Helper
To join a cluster using the RabbitMQ Helper, run the commands listed below.
1. Set-ErlangCookieFileCommand—updates the Erlang Cookie file with values given by the user. If two or more
nodes want to communicate, they must have the same shared secret called the Erlang cookie. For details, see
the Prerequisites section above.
Delinea RabbitMQ Helper Integration Guide Pagexxviiiof94
Clustering
You can update the existing erlang cookie file values to the nodes that need to be joined for clustering.
Alternatively, use the same command with an arbitrary cookie on all nodes (if you want to use a new value or
cannot look the existing one up).
2. Join-RabbitMqCluster—joins the other node in a cluster.
Joining a Cluster Powershell Example
#on the node which you are joining into the target node/cluster
#Use the value for cookie from the target node, collected in the prerequisite steps.
# <cluster-cookie-value> can be found iside the Erlang Cookie File
Set-ErlangCookieFileCommand -CookieContent cluster-cookie-value> -Verbose
#using the CookieSet and FirewallConfigured will prevent the helper for prompting. Only
use if you have actually already set the cluster cookie and you have configured your
firewall
#OTHERHOSTNAME is CASE SENSITIVE and is the exact hostname of a machine that you are
trying to join this machine into a cluster with.
Join-RabbitMqCluster -StrictHostname OTHERHOSTNAME -CookieSet - FirewallConfigured -
Verbose
Clustering a Rabbit Node Without the Helper
Prerequisites
n
Ensure that RabbitMQ is installed and running on each machine you want to include in the cluster
n
Each node must have a unique name. By default, it is rabbit@hostname. You can change this value using the
RABBITMQ_NODENAME environment variable
To cluster a Rabbit node in an alternative way:
1. Copy the .erlang.cookie from one node to all nodes in the system profile (usually
C:\Windows\System32\config\systemprofile) and the user profile running rabbitmqctl.bat.
2. Restart the RabbitMQ nodes.
3. Go to the RabbitMQ Bin Directory and run the following reset commands:
a.
- rabbitmqctl stop_app
b.
- rabbitmqctl reset
An example of the RabbitMQ Bin Directory: - C:\Program Files\RabbitMQ Server\rabbitmq_server-
xx.xx.xx\sbin.
4. Join the cluster by running the - rabbitmqctl join_cluster rabbit@OTHERHOSTNAME command.
5. Start the RabbitMQ nodes by running the - rabbitmqct start_app command.
6. Verify the cluster by running the rabbitmqctl cluster_statuscommand.
Establishing Cluster Policy
Clusters do not mirror queues unless configured to do so via policies. The Helper creates unbalanced policies by
default. Balanced policies require the execution of the Set-MinMasterToClusterPolicy command, which
distributes queues to all nodes in the cluster.
Delinea RabbitMQ Helper Integration Guide Pagexxixof94
Clustering
Non-Balanced policy
Even though the node is in a two-node cluster, all queues have it as primary. Therefore, the other nodes are not
helping with the load even though they may have mirrors of those queues.
Balanced policy (Min-Master)
The queues are distributed inside the cluster because the node is in a two-node cluster. Almost half use one node
as their primary and vice versa.
Creating a New Cluster Policy Using the Helper
To create a new cluster policy, run the New-RabbitMqClusterPolicy -Name <policy_name> -Pattern
<pattern_string> command in PowerShell command prompt.
The command consists of the following elements:
n
New-RabbitMqClusterPolicy argument—creates an unbalanced cluster policy
n
‘-Name’— argument sets the policy name. It must be unique
n
The ‘-Pattern’ argument sets a pattern to match at the beginning of the queue name. If the pattern is matched,
the queue is replicated. For example, “^ActiveNonSslRabbitMq:” would match a queue that begins with
‘ActiveNonSslRabbitMq:’ and would replicate that queue across the cluster
An example of setting up a cluster policy in the Powershell prompt:
$admincred = Get-Credential -Message “Enter the administrative user RabbitMq user username and
password”;
New-RabbitMqClusterPolicy -Name cluster-test-all -Pattern “^ActiveNonSslRabbitMq:” -AdminCredential
$admincred.
You can create a policy with a custom sync batch size. The default is 400 for New-RabbitMqClusterPolicy because
Delinea products have a worst-case scenario for messages to be 256KB. When a sync message is generated, 256*
400 = 100MB. A larger sync message can cause fragmentation if there is latency or network connection drops
between cluster nodes.
An example of a synch batch size policy:
New-RabbitMqClusterPolicy -Name cluster-test-all -Pattern “^ActiveNonSslRabbitMq:” -
AdminCredential $admincred -SyncBatchSize 100.
For a policy with a custom replica count batch size, the default value for New-RabbitMqClusterPolicy is two
because anything higher strains the cluster. Two replicas mean one master and one mirror.
An example of a replica count batch size policy:
New-RabbitMqClusterPolicy -Name cluster-test-all -Pattern “^ActiveNonSslRabbitMq:” -
AdminCredential $admincred -QueueReplicaCount 3.
For a policy with automatic sync mode, the default value for New-RabbitMqClusterPolicy is manual to avoid forcing
a queue to synchronize when a new mirror joins automatically.
An example of an automatic sync mode policy:
New-RabbitMqClusterPolicy -Name cluster-test-all -Pattern “^ActiveNonSslRabbitMq:” -
AdminCredential $admincred -AutomaticSyncMode.
Delinea RabbitMQ Helper Integration Guide Pagexxxof94
Clustering
Establishing Policy without the Helper
The mentioned policy is not ideal and is not balanced. Use the RabbitMQ Helper if possible.
An example of a ctl command:
rabbitmqctl set_policy cluster-test-all "\^cluster\-test:" "{""ha-mode"":""all""}".
Commands:
n
rabbitmqctl—the base command to interact with the RabbitMQ server
n
set_policy—this subcommand defines a new policy for managing queues
Policy Definition Commands:
n
cluster-test-all—this is the chosen name for the policy. It helps identify its purpose
n
"\^cluster\-test:"—defines the pattern that the policy applies to.
Command elements description:
n
^—matches the beginning of the queue name
n
cluster-test—matches the literal string "cluster-test"
n
::—matches a colon, potentially separating a category from the queue name (optional here)
n
.*—matches any character sequence zero or more times (to capture anything after "cluster-test:")
n
'{"ha-mode"":""all""}'—defines the policy configuration as a JSON string enclosed in single quotes.
Command elements description:
n
"ha-mode"—this property specifies the High Availability (HA) mode for the queues
n
"all"—this value sets the HA mode to "all," which means the queue will be mirrored to all nodes in
the RabbitMQ cluster
Leaving a Cluster
Warning: The Helper uses reset to leave the clusters. This removes the node from any cluster it belongs to,
all data from the management database (such as configured users and hosts), and all persistent
messages.
Removing a Node from a RabbitMQ Cluster Using the Helper
To reset the RabbitMQ node to the initial condition, run the Reset-RabbitMqNodeCommand.
Management
Generally, most management tasks are handled via the RabbitMQ Management Plugin and RabbitMQ
Management HTTP API.
The RabbitMQ Helper uses the API to either automate or to assist with the following:
Delinea RabbitMQ Helper Integration Guide Pagexxxiof94
Management
n
RabbitMQ Node Diagnostics
n
Remove All Queues on a RabbitMQ Node
RabbitMQ Node Diagnostics
The Helper contains several cmdlets that allow you to extract information about your cluster nodes and queues.
You can use standard Powershell syntax to suit your needs.
The examples below represent a node where the Helper is installed. It is available to use the -Verbose switch for
more details.
User Credential Validation
Assert-RabbitMqConnectivity
$usercred = Get-Credential -Message "Enter the RabbitMq user username and
password to validate";
Assert-RabbitMqConnectivity -Credential $usercred
Assert-RabbitMqConnectivity -Hostname Nefarian -Credential $usercred
Node and Queue Information
#check to make sure RabbitMq is running
Assert-RabbitMqIsRunning
$admincred = Get-Credential -Message “Enter the administrative user RabbitMq user username
and password”;
#get the cluster name
Get-RabbitMqClusterName -AdminCredential $admincred
#get all cluster nodes
$nodes = Get-RabbitMqClusterNodes -AdminCredential $admincred
#select basic node information
$nodes | Select name,type,running
#request the current node to conduct a health-check
Request-RabbitMqHealthCheck -AdminCredential $admincred
$queues = Get-RabbitMqQueues -AdminCredential $admincred
#select all queues which have a node as their master node
$queues | Where-Object {$_.node -eq ‘rabbit@Nefarian’} | Select name | format-list
$queues | Where-Object {$_.node -eq ‘rabbit@Nefarian’} | Measure
Delinea RabbitMQ Helper Integration Guide Pagexxxiiof94
Management
#select all queues which do not have a node as their master node
$queues | Where-Object {$_.node -ne ‘rabbit@Nefarian’} | Select name,node | format-list
$queues | Where-Object {$_.node -ne ‘rabbit@Nefarian’} | Measure
#select all queues which have a node as their salve node
$queues | Where-Object {$_.slave_nodes.Contains(‘rabbit@Nefarian’)} | Select name,node |
format-list
#select all queues and their respective effective policies
$queues | Select name,effective_policy_definition | format-list
Remove All Queues on a RabbitMQ Node
For debugging and testing purposes, you can remove all queues using the following commandlet: Remove-
RabbitMqQueues
LoadBalancing
While RabbitMQ Helper can't assist with TCP load balancing for RabbitMQ, it's important to note that this is
because it falls outside the scope of RabbitMQ. However, you can choose any load balancer that best suits your
needs.
Several load-balancers are available, including but not limited to F5, NetScaler, and HAProxy.
HAProxy on Ubuntu Example for POC
sudo apt-get install openssh-server
sudo apt-get install haproxy
sudo nano /etc/haproxy/haproxy.cfg
sudo ufw allow 5671
sudo ufw enable
sudo service haproxy restart
Sample haproxy.cfg
global
log /dev/loglocal0
log /dev/loglocal1 notice
chroot /var/lib/haproxy
user haproxy
group haproxy
daemon
Delinea RabbitMQ Helper Integration Guide Pagexxxiiiof94
LoadBalancing
defaults
mode tcp
maxconn 10000
timeout connect 5s
timeout client 100s
timeout server 100s
listen rabbitmq 172.25.0.30:5671
mode tcp
balance roundrobin
server SSLRabbitMqCN1 172.25.0.31:5671 weight 10 check inter 2000 rise 2 fall 2
server SSLRabbitMqCN2 172.25.0.32:5671 weight 10 check inter 2000 rise 2 fall 2
Get Help for Powershell cmdlets
The Powershell cmdlets provide instruction for various helper cmdlets.
Assert-RabbitMQConnectivity
NAME
Assert-RabbitMqConnectivity
SYNOPSIS
Validates connectivity to RabbitMq
SYNTAX
Assert-RabbitMqConnectivity -Credential <PSCredential> [-Hostname <string>] [-Port
<int>] [-UseTls <SwitchParameter>] [<CommonParameters>]
DESCRIPTION
The Assert-RabbitMqConnectivity attempts to connect to RabbitMq the same way a
Distributed Engine or Secret Server would.
PARAMETERS
-UseTls <SwitchParameter>
Gets or sets the use TLS.
-Hostname <string>
Gets or sets the hostname.
-SubjectName <string>
Gets or sets the hostname.
This is an alias of the Hostname parameter.
-FQDN <string>
Delinea RabbitMQ Helper Integration Guide Pagexxxivof94
Get Help for Powershell cmdlets
Gets or sets the hostname.
This is an alias of the Hostname parameter.
-Port <int>
Port to connect on.
-Credential <PSCredential>
Gets or sets the credential of the rabbit mq user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Assert-RabbitMqConnectivity
REMARKS
To see the examples, type: "get-help Assert-RabbitMqConnectivity -examples".
For more information, type: "get-help Assert-RabbitMqConnectivity -detailed".
For technical information, type: "get-help Assert-RabbitMqConnectivity -full".
For online help, type: "get-help Assert-RabbitMqConnectivity -online"
Assert-RabbitMQIsRunning
NAME
Assert-RabbitMqIsRunning
SYNOPSIS
Validates RabbitMq is running on the current host.
SYNTAX
Assert-RabbitMqIsRunning [<CommonParameters>]
DESCRIPTION
The Assert-RabbitIsRunning attempts read the status of RabbitMq.
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
Delinea RabbitMQ Helper Integration Guide Pagexxxvof94
Get Help for Powershell cmdlets
PS C:\>Assert-RabbitIsRunning
REMARKS
To see the examples, type: "get-help Assert-RabbitMqIsRunning -examples".
For more information, type: "get-help Assert-RabbitMqIsRunning -detailed".
For technical information, type: "get-help Assert-RabbitMqIsRunning -full".
For online help, type: "get-help Assert-RabbitMqIsRunning -online"
Convert-CaCertToPem
NAME
Convert-CaCertToPem
SYNOPSIS
Converts a Certificate Authority cert to a pem.
SYNTAX
Convert-CaCertToPem [-CaCertPath] <string> [<CommonParameters>]
DESCRIPTION
The Convert-CaCertToPem cmdlet converts a Certificate Authority cert to a pem.
The pem file will be located in the Delinea RabbitMq Site Connector folder.
PARAMETERS
-CaCertPath <string>
Gets or sets the ca cert path.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>
Convert-CaCertToPem -CaCertPath "$PSScriptRoot\..\Examples\sc.cer" -Verbose
REMARKS
To see the examples, type: "get-help Convert-CaCertToPem -examples".
For more information, type: "get-help Convert-CaCertToPem -detailed".
For technical information, type: "get-help Convert-CaCertToPem -full".
For online help, type: "get-help Convert-CaCertToPem -online"
Delinea RabbitMQ Helper Integration Guide Pagexxxviof94
Get Help for Powershell cmdlets
Convert-CngOrEccToPem
SYNOPSIS
Converts a CNG or ECC Certificate Authority cert to a pem.
SYNTAX
Convert-CngOrEccToPem [-PfxPath] <string> -PfxCredential <PSCredential>
[<CommonParameters>]
DESCRIPTION
The Convert-CngOrEccToPem cmdlet converts a CNG or ECC Certificate Authority
cert to a pem.
The pem file will be located in the Delinea RabbitMQ Site Connector folder.
PARAMETERS
-PfxPath <string>
Gets or sets the PFX path.
-PfxCredential <PSCredential>
Gets or set the credential for the PFX. Username part is ignored.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
---------- EXAMPLE 1 ----------
PS C:\>Convert-CngOrEccToPem -PfxPath "$PSScriptRoot..\Examples\sc.pfx"
-PfxPassword "password1" -Verbose
REMARKS
To see the examples, type: "Get-Help Convert-CngOrEccToPem -Examples"
For more information, type: "Get-Help Convert-CngOrEccToPem -Detailed"
For technical information, type: "Get-Help Convert-CngOrEccToPem -Full"
For online help, type: "Get-Help Convert-CngOrEccToPem -Online"
Delinea RabbitMQ Helper Integration Guide Pagexxxviiof94
Get Help for Powershell cmdlets
Convert-PfxToPem
NAME
Convert-PfxToPem
SYNOPSIS
Converts a PFX cert to a pem/key combination.
SYNTAX
Convert-PfxToPem [-PfxPath] <string> -PfxCredential <PSCredential>
[<CommonParameters>]
DESCRIPTION
The Convert-PfxToPem cmdlet converts a PFX cert to a pem/key combination.
The pem file will be located in the Delinea RabbitMq Site Connector folder.
PARAMETERS
-PfxPath <string>
Gets or sets the PFX path.
-PfxCredential <PSCredential>
Gets or set the credential for the PFX. Username part is ignored.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Convert-PfxToPem -PfxPath "$PSScriptRoot\..\Examples\sc.pfx" -PfxPassword
"password1" -Verbose
REMARKS
To see the examples, type: "get-help Convert-PfxToPem -examples".
For more information, type: "get-help Convert-PfxToPem -detailed".
For technical information, type: "get-help Convert-PfxToPem -full".
For online help, type: "get-help Convert-PfxToPem -online"
Copy-ErlangCookieFile
NAME
Copy-ErlangCookieFile
SYNOPSIS
Copies system cookie to user profile.
Delinea RabbitMQ Helper Integration Guide Pagexxxviiiof94
Get Help for Powershell cmdlets
SYNTAX
Copy-ErlangCookieFile [<CommonParameters>]
DESCRIPTION
The Copy-ErlangCookieFile cmdlet copies Erlang cookie.
Cookie is placed in the current user's profile.
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Copy-ErlangCookieFile
REMARKS
To see the examples, type: "get-help Copy-ErlangCookieFile -examples".
For more information, type: "get-help Copy-ErlangCookieFile -detailed".
For technical information, type: "get-help Copy-ErlangCookieFile -full".
For online help, type: "get-help Copy-ErlangCookieFile -online"
Disable-RabbitMQFederationAndManagement
Note: For Release 10.0 and going forward, this command is obsolete.
AME
Disable-RabbitMqFederationAndManagement
SYNOPSIS
Disables the RabbitMq federation and federation management UI
SYNTAX
Disable-RabbitMqFederationAndManagement [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
Delinea RabbitMQ Helper Integration Guide Pagexxxixof94
Get Help for Powershell cmdlets
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Disable-RabbitMqFederationAndManagement
REMARKS
To see the examples, type: "get-help Disable-RabbitMqFederationAndManagement -
examples".
For more information, type: "get-help Disable-RabbitMqFederationAndManagement -
detailed".
For technical information, type: "get-help Disable-RabbitMqFederationAndManagement -
full".
For online help, type: "get-help Disable-RabbitMqFederationAndManagement -online"
Disable-RabbitMQManagement
NAME
Disable-RabbitMqManagement
SYNOPSIS
Disables the RabbitMQ management UI (https://www.rabbitmq.com/management.html)
SYNTAX
Disable-RabbitMqManagement [&lt;CommonParameters&gt;]
DESCRIPTION
PARAMETERS
&lt;CommonParameters&gt;
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\&gt;Enable-RabbitMqManagement
REMARKS
To see the examples, type: "get-help Disable-RabbitMqManagement -examples".
For more information, type: "get-help Disable-RabbitMqManagement -detailed".
For technical information, type: "get-help Disable-RabbitMqManagement -full".
For online help, type: "get-help Disable-RabbitMqManagement -online"
Delinea RabbitMQ Helper Integration Guide Pagexlof94
Get Help for Powershell cmdlets
Enable-RabbitMQFederationAndManagement
Note: For Release 10.0 and going forward, this command is obsolete.
NAME
Enable-RabbitMqFederationAndManagement
SYNOPSIS
Enables the RabbitMq federation and federation management UI
SYNTAX
Enable-RabbitMqFederationAndManagement [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Enable-RabbitMqFederationAndManagement
REMARKS
To see the examples, type: "get-help Enable-RabbitMqFederationAndManagement -
examples".
For more information, type: "get-help Enable-RabbitMqFederationAndManagement -
detailed".
For technical information, type: "get-help Enable-RabbitMqFederationAndManagement -
full".
For online help, type: "get-help Enable-RabbitMqFederationAndManagement -online"
Previous
Back to top
Next
Enable-RabbitMQManagement
NAME
Enable-RabbitMqManagement
SYNOPSIS
Enables the RabbitMq management UI (https://www.rabbitmq.com/management.html)
Delinea RabbitMQ Helper Integration Guide Pagexliof94
Get Help for Powershell cmdlets
SYNTAX
Enable-RabbitMqManagement [&lt;CommonParameters&gt;]
DESCRIPTION
PARAMETERS
&lt;CommonParameters&gt;
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\&gt;Enable-RabbitMqManagement
REMARKS
To see the examples, type: "get-help Enable-RabbitMqManagement -examples".
For more information, type: "get-help Enable-RabbitMqManagement -detailed".
For technical information, type: "get-help Enable-RabbitMqManagement -full".
For online help, type: "get-help Enable-RabbitMqManagement -online"
Get-RabbitMQClusterName
NAME
Get-RabbitMqClusterName
SYNOPSIS
Gets the current cluster name
SYNTAX
Get-RabbitMqClusterName [-Credential] <PSCredential> [-AdminCredential <PSCredential>]
[-BaseUrl <string>] [<CommonParameters>]
DESCRIPTION
RabbitMQ nodes are identified by node names. A node name consists of two parts, a
prefix (usually rabbit) and hostname.
For example, '[email protected]' is a node name with the prefix of 'rabbit' and a
hostname of 'demo.node'.
This command gives the name to the running node.
PARAMETERS
-Credential <PSCredential>
Gets or sets the name of the rabbitmq admin user.
Delinea RabbitMQ Helper Integration Guide Pagexliiof94
Get Help for Powershell cmdlets
-BaseUrl <string>
Gets or sets the base URL for the RabbitMq REST API.
-AdminCredential <PSCredential>
Gets or sets the credential of the RabbitMq administrator user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Get-RabbitMqClusterName
REMARKS
To see the examples, type: "get-help Get-RabbitMqClusterName -examples".
For more information, type: "get-help Get-RabbitMqClusterName -detailed".
For technical information, type: "get-help Get-RabbitMqClusterName -full".
For online help, type: "get-help Get-RabbitMqClusterName -online"
Get-RabbitMQLog
NAME
Get-RabbitMqLog
SYNOPSIS
Selects the tail of the RabbitMq log
SYNTAX
Get-RabbitMqLog [[-Count] <int>] [<CommonParameters>]
DESCRIPTION
Log files are an essential aspect of system observability, much like monitoring.
Developers and operators should inspect logs when troubleshooting an issue or assessing
the state of the system.
PARAMETERS
-Count <int>
Gets or sets the count.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
Delinea RabbitMQ Helper Integration Guide Pagexliiiof94
Get Help for Powershell cmdlets
PS C:\>Get-RabbitMqLog
REMARKS
To see the examples, type: "get-help Get-RabbitMqLog -examples".
For more information, type: "get-help Get-RabbitMqLog -detailed".
For technical information, type: "get-help Get-RabbitMqLog -full".
For online help, type: "get-help Get-RabbitMqLog -online"
Get-DownloadLocations
NAME
Get-DownloadLocations
SYNOPSIS
Gets download locations for Erlang and RabbitMq (most helpful when needing to do
offline installation)
SYNTAX
Get-DownloadLocations [-UseNonMirror <SwitchParameter>] [<CommonParameters>]
DESCRIPTION
PARAMETERS
UseNonMirror <SwitchParameter>
Gets or sets a value indicating whether to use the Non Delinea Mirrors during
download.
-Mirror <SwitchParameter>
Gets or sets a value indicating whether to use the Delinea Mirror even if the file
exists.
This is an alias of the UseNonMirror parameter.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Get-DownloadLocations
----------EXAMPLE 2----------
Delinea RabbitMQ Helper Integration Guide Pagexlivof94
Get Help for Powershell cmdlets
PS C:\>Get-DownloadLocations UseDelineaMirror-UseNonMirror
REMARKS
To see the examples, type: "get-help Get-DownloadLocations -examples".
For more information, type: "get-help Get-DownloadLocations -detailed".
For technical information, type: "get-help Get-DownloadLocations -full".
For online help, type: "get-help Get-DownloadLocations -online"
Get-ErlangInstaller
NAME
Get-ErlangInstaller
SYNOPSIS
Downloads Erlang Installer
SYNTAX
Get-ErlangInstaller [-Force <SwitchParameter>] [-UseNonMirror <SwitchParameter>]
[<CommonParameters>]
DESCRIPTION
Downloads the Erlang Installer.
PARAMETERS
-UseNonMirror <SwitchParameter>
Gets or sets a value indicating whether to use the Non Delinea Mirrors during
download.
-Mirror <SwitchParameter>
Gets or sets a value indicating whether to use the Non Delinea Mirrors during
download.
This is an alias of the UseNonMirror parameter.
-Force <SwitchParameter>
Gets or sets a value indicating whether force download (even if they already exist).
This is an alias of the UseNonMirror parameter.
-Force <SwitchParameter>
Gets or sets a value indicating whether the force download is necessary (even if it
already exists).
<CommonParameters>
Delinea RabbitMQ Helper Integration Guide Pagexlvof94
Get Help for Powershell cmdlets
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
Download from erlang's web site
PS C:\>Get-ErlangInstaller
----------EXAMPLE 2----------
Download from Official mirror web site
PS C:\>Get-ErlangInstaller -UseNonMirror
----------EXAMPLE 3----------
Force download from Official mirror web site even if the file already exists
PS C:\>Get-ErlangInstaller -UseNonMirror -Force
REMARKS
To see the examples, type: "get-help Get-ErlangInstaller -examples".
For more information, type: "get-help Get-ErlangInstaller -detailed".
For technical information, type: "get-help Get-ErlangInstaller -full".
For online help, type: "get-help Get-ErlangInstaller -online"
Get-RabbitMQClusterNodes
NAME
Get-RabbitMqClusterNodes
SYNOPSIS
Gets the current cluster nodes
SYNTAX
Get-RabbitMqClusterNodes [-Credential] <PSCredential> [-AdminCredential <PSCredential>] [-
BaseUrl <string>]
[<CommonParameters>]
DESCRIPTION
Shows the details of nodes present in the cluster.
PARAMETERS
-Credential <PSCredential>
Gets or sets the name of the rabbitmq admin user.
-BaseUrl <string>
Delinea RabbitMQ Helper Integration Guide Pagexlviof94
Get Help for Powershell cmdlets
Gets or sets the base URL for the RabbitMQ REST API.
-AdminCredential <PSCredential>
Gets or sets the credential of the RabbitMQ administrator user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Get-RabbitMqClusterNodes
REMARKS
To see the examples, type: "get-help Get-RabbitMqClusterNodes -examples".
For more information, type: "get-help Get-RabbitMqClusterNodes -detailed".
For technical information, type: "get-help Get-RabbitMqClusterNodes -full".
For online help, type: "get-help Get-RabbitMqClusterNodes -online"
Get-RabbitMQInstaller
NAME
Get-RabbitMqInstaller
SYNOPSIS
Downloads RabbitMq Installer
SYNTAX
Get-RabbitMqInstaller [-Force <SwitchParameter>] [-UseNonMirror <SwitchParameter>]
[<CommonParameters>]
DESCRIPTION
Downloads RabbitMq Installer
PARAMETERS
-Force <SwitchParameter>
Gets or sets a value indicating whether to force download even the file exists.
UseNonMirror <SwitchParameter>
Gets or sets a value indicating whether to use the Non Delinea Mirrors during
download.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
Delinea RabbitMQ Helper Integration Guide Pagexlviiof94
Get Help for Powershell cmdlets
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
Download from rabbitmq's web site
PS C:\>Get-RabbitMqInstaller
----------EXAMPLE 2----------
Download from Non-Delinea's mirror web site
PS C:\>Get-RabbitMqInstaller -UseNonMirror
----------EXAMPLE 3----------
Force download from Official mirror web site even if the file already exists
PS C:\>Get-RabbitMqInstaller -UseNonMirror -Force
REMARKS
To see the examples, type: "get-help Get-RabbitMqInstaller -examples".
For more information, type: "get-help Get-RabbitMqInstaller -detailed".
For technical information, type: "get-help Get-RabbitMqInstaller -full".
For online help, type: "get-help Get-RabbitMqInstaller -online"
Get-RabbitMQQueues
NAME
Get-RabbitMqQueues
SYNOPSIS
Gets all queues in the cluster.
SYNTAX
Get-RabbitMqQueues [-Credential] <PSCredential> [-AdminCredential <PSCredential>] [-
BaseUrl <string>] [<CommonParameters>]
DESCRIPTION
Gets all the queues in the current system node.
PARAMETERS
-Credential <PSCredential>
Gets or sets the name of the rabbitmq admin user.
-BaseUrl <string>
Gets or sets the base URL for the RabbitMq REST API.
Delinea RabbitMQ Helper Integration Guide Pagexlviiiof94
Get Help for Powershell cmdlets
-AdminCredential <PSCredential>
Gets or sets the credential of the RabbitMq administrator user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Get-RabbitMqQueues
REMARKS
To see the examples, type: "get-help Get-RabbitMqQueues -examples".
For more information, type: "get-help Get-RabbitMqQueues -detailed".
For technical information, type: "get-help Get-RabbitMqQueues -full".
For online help, type: "get-help Get-RabbitMqQueues -online"
Grant-RabbitMQUserPermission
NAME
Grant-RabbitMqUserPermission
SYNOPSIS
Grants a RabbitMq permissions
SYNTAX
Grant-RabbitMqUserPermission -UserName <string> [-VirtualHost <string>]
[<CommonParameters>]
DESCRIPTION
PARAMETERS
-VirtualHost <string>
Gets or sets the virtual host.
-VHost <string>
Gets or sets the virtual host.
This is an alias of the VirtualHost parameter.
-UserName <string>
Gets or sets the name of the rabbit mq user.
-RabbitMqUserName <string>
Gets or sets the name of the rabbit mq user.
Delinea RabbitMQ Helper Integration Guide Pagexlixof94
Get Help for Powershell cmdlets
This is an alias of the UserName parameter.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>New-BasicRabbitMqUser
REMARKS
To see the examples, type: "get-help Grant-RabbitMqUserPermission -examples".
For more information, type: "get-help Grant-RabbitMqUserPermission -detailed".
For technical information, type: "get-help Grant-RabbitMqUserPermission -full".
For online help, type: "get-help Grant-RabbitMqUserPermission -online"
Install-Connector
NAME
Install-Connector
SYNOPSIS
Installs the site connector.
SYNTAX
Install-Connector [-Credential] <PSCredential> [[-AgreeErlangLicense] <SwitchParameter>]
[[-AgreeRabbitMqLicense]
<SwitchParameter>] -OfflineErlangInstallerPath <string> -OfflineRabbitMqInstallerPath
<string>
[-CreateUIAdmin <SwitchParameter>] [<CommonParameters>]
Install-Connector [-Credential] <PSCredential> [[-AgreeErlangLicense]
<SwitchParameter>] [[-AgreeRabbitMqLicense] <SwitchParameter>] -CaCertPath <string> -
Hostname <string> -PfxCredential <PSCredential>
-PfxPath <string> -UseTls <SwitchParameter> [-CreateUIAdmin <SwitchParameter>] [-
OfflineErlangInstallerPath <string>] [-OfflineRabbitMqInstallerPath <string>] [-
UseNonMirror <SwitchParameter>]
[<CommonParameters>]
Delinea RabbitMQ Helper Integration Guide Pagelof94
Get Help for Powershell cmdlets
Install-Connector [-Credential] <PSCredential> [[-AgreeErlangLicense]
<SwitchParameter>] [[-AgreeRabbitMqLicense] <SwitchParameter>] [-CreateUIAdmin
<SwitchParameter>] [-ForceDownload
<SwitchParameter>] [-UseNonMirror <SwitchParameter>] [<CommonParameters>]
DESCRIPTION
The Install-Connector cmdlet is designed to make the installation of a non-TLS and TLS
site connector.
It will install both Erlang and RabbitMQ provided that the appropriate parameters are
supplied.
The cmdlet requires that a basic user also be created. This user is strictly for
putting and pulling messages from RabbitMQ.
PARAMETERS
-AgreeRabbitMqLicense <SwitchParameter>
Gets or sets the agree rabbit mq license. If omitted, the user will not be
prompted to agree to the license.
-AgreeErlangLicense <SwitchParameter>
Gets or sets the agree Erlang license. If omitted, the user will not be prompted
to agree to the license.
-CreateUIAdmin <SwitchParameter>
Gets or sets the agreement to create RabbitMQ Management UI Admin.If omitted,
the user can create the new user manually later.
-OfflineErlangInstallerPath <string>
Gets or sets the offline Erlang installer path. If omitted, the installer will be
downloaded.
-OfflineRabbitMqInstallerPath <string>
Gets or sets the offline RabbitMq installer path to use. If omitted, the installer
will be downloaded.
-ForceDownload <SwitchParameter>
Gets or sets a value indicating whether force download (even they already exist)
the pre-requisites. This value has no effect when using an offline installer.
-Force <SwitchParameter>
Gets or sets a value indicating whether force download (even they already exist)
the pre-requisites. This value has no effect when using an offline installer.
This is an alias of the ForceDownload parameter.
UseNonMirror <SwitchParameter>
Delinea RabbitMQ Helper Integration Guide Pageliof94
Get Help for Powershell cmdlets
Gets or sets a value indicating whether to use the Non Delinea Mirrors during
download.
-Mirror <SwitchParameter>
Gets or sets a value indicating whether to use the Non Delinea Mirrors during
download.
This is an alias of the UseNonMirror parameter.
-Credential <PSCredential>
Gets or sets the name of the rabbit mq user.
-UseTls <SwitchParameter>
Gets or sets whether to use TLS or not.
-Hostname <string>
Gets or sets the hostname or FQDN of the server which will host the RabbitMq node.
-SubjectName <string>
Gets or sets the hostname or FQDN of the server which will host the RabbitMq node.
This is an alias of the Hostname parameter.
-FQDN <string>
Gets or sets the hostname or FQDN of the server which will host the RabbitMq node.
This is an alias of the Hostname parameter.
-CaCertPath <string>
Gets or sets the CA certificate path. This certificate is use to establish the
trust chain to the CA.
-PfxPath <string>
Gets or sets the PFX path. This could be a self-signed or a certificate from a
public CA.
If self-signed, the certificate should be installed on all client/engine machines.
It does NOT to be installed on the RabbitMq node.
-PfxCredential <PSCredential>
Gets or set the credential for the PFX. Username part is ignored.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
The most basic use case to install RabbitMq is to have a single node without using
encryption.
Delinea RabbitMQ Helper Integration Guide Pageliiof94
Get Help for Powershell cmdlets
This is generally useful during development or during POC stages.
To do so, you could use the following:
PS C:\>Install-Connector -agreeErlangLicense -agreeRabbitMqLicense
REMARKS
To see the examples, type: "get-help Install-Connector -examples".
For more information, type: "get-help Install-Connector -detailed".
For technical information, type: "get-help Install-Connector -full".
For online help, type: "get-help Install-Connector -online"
Install- ConnectorWithSSCred
NAME
Install-ConnectorWithSSCred
SYNOPSIS
Installs the site connector with credentials fetched from secret server.
SYNTAX
Install-ConnectorWithSSCred [-Credential] <PSCredential> [[-AgreeErlangLicense]
<SwitchParameter>]
[[-AgreeRabbitMqLicense] <SwitchParameter>] [-BaseUrl] <string> [-ConnectorName]
<string>
-OfflineErlangInstallerPath <string> -OfflineRabbitMqInstallerPath <string> [-
CreateUIAdmin
<SwitchParameter>] [<CommonParameters>]
Install-ConnectorWithSSCred [-BaseUrl] <string> [-SSCredential] <PSCredential> [-
ConnectorName] <string> [[-AgreeErlangLicense] <SwitchParameter>] [[-AgreeRabbitMqLicense]
<SwitchParameter>] -CaCertPath
<string> -Hostname <string> -PfxCredential <PSCredential> -PfxPath <string> -UseTls
<SwitchParameter> [-CreateUIAdmin <SwitchParameter>] [-OfflineErlangInstallerPath
<string>]
[-OfflineRabbitMqInstallerPath <string>] [-UseNonMirror <SwitchParameter>]
[<CommonParameters>]
Install-ConnectorWithSSCred [-BaseUrl] <string> [-SSCredential] <PSCredential> [-
ConnectorName] <string> [[-AgreeErlangLicense] <SwitchParameter>] [[-AgreeRabbitMqLicense]
<SwitchParameter>]
Delinea RabbitMQ Helper Integration Guide Pageliiiof94
Get Help for Powershell cmdlets
[-CreateUIAdmin <SwitchParameter>] [-ForceDownload <SwitchParameter>] [-UseNonMirror
<SwitchParameter>] [<CommonParameters>]
DESCRIPTION
The Install-Connector cmdlet is designed to make the installation of a non-TLS and TLS
site connector.
It will install both Erlang and RabbitMq provided that the appropriate parameters are
supplied.
The cmdlet requires that a basic user also be created. This user is strictly for
putting and pulling messages from RabbitMq.
PARAMETERS
-AgreeErlangLicense <SwitchParameter>
Gets or sets the agree Erlang license. If omitted, the user will not be prompted
to agree to the license.
-AgreeRabbitMqLicense <SwitchParameter>
Gets or sets the agree rabbit mq license. If omitted, the user will not be
prompted to agree to the license.
-CreateUIAdmin <SwitchParameter>
Gets or sets the agreement to create RabbitMQ Management UI Admin. If omitted, the
user can create the new user manually later.
-OfflineErlangInstallerPath <string>
Gets or sets the offline Erlang installer path. If omitted, the installer will be
downloaded.
-OfflineRabbitMqInstallerPath <string>
Delinea RabbitMQ Helper Integration Guide Pagelivof94
Get Help for Powershell cmdlets
Gets or sets the offline RabbitMq installer path to use. If omitted, the installer
will be downloaded.
-ForceDownload <SwitchParameter>
Gets or sets a value indicating whether force download (even they already exist)
the pre-requisites. This
value has no effect when using an offline installer.
-Force <SwitchParameter>
Gets or sets a value indicating whether force download (even they already exist)
the pre-requisites. This
value has no effect when using an offline installer.
This is an alias of the ForceDownload parameter.
UseNonMirror <SwitchParameter>
Gets or sets a value indicating whether to use the Non Delinea Mirrors during
download.
-Mirror <SwitchParameter>
Gets or sets a value indicating whether to use the Non Delinea Mirrors during
download.
This is an alias of the UseNonMirror parameter.
-Credential <PSCredential>
Gets or sets the name of the rabbit mq user.
-UseTls <SwitchParameter>
Gets or sets whether to use TLS or not.
-Hostname <string>
Gets or sets the hostname or FQDN of the server which will host the RabbitMq node.
Delinea RabbitMQ Helper Integration Guide Pagelvof94
Get Help for Powershell cmdlets
-SubjectName <string>
Gets or sets the hostname or FQDN of the server which will host the RabbitMq node.
This is an alias of the Hostname parameter.
-FQDN <string>
Gets or sets the hostname or FQDN of the server which will host the RabbitMq node.
This is an alias of the Hostname parameter.
-CaCertPath <string>
Gets or sets the CA certificate path. This certificate is use to establish the
trust chain to the CA.
-PfxPath <string>
Gets or sets the PFX path. This could be a self-signed or a certificate from a
public CA.
If self-signed, the certificate should be installed on all client/engine machines.
It does NOT to be installed
on the RabbitMq node.
-PfxCredential <PSCredential>
Gets or set the credential for the PFX. Username part is ignored.
-BaseUrl <string>
Gets or sets the Secret Server URL.
Delinea RabbitMQ Helper Integration Guide Pagelviof94
Get Help for Powershell cmdlets
-ConnectorName <string>
Gets or sets the Site Connector Name.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
The most basic use case to install RabbitMq is to have a single node without using
encryption.
This is generally useful during development or during POC stages.
To do so, you could use the following:
PS C:\>Install-ConnectorWithSSCred -agreeErlangLicense -agreeRabbitMqLicense
REMARKS
To see the examples, type: "Get-Help Install-ConnectorWithSSCred -Examples"
For more information, type: "Get-Help Install-ConnectorWithSSCred -Detailed"
For technical information, type: "Get-Help Install-ConnectorWithSSCred -Full"
For online help, type: "Get-Help Install-ConnectorWithSSCred -Online"
Install-Erlang
NAME
Install-Erlang
SYNOPSIS
Installs Erlang
Delinea RabbitMQ Helper Integration Guide Pagelviiof94
Get Help for Powershell cmdlets
SYNTAX
Install-Erlang [<CommonParameters>]
DESCRIPTION
The Install-Erlang cmdlet will attempt to load the installed from Path.Combine
(Path.GetTempPath(), "erlang.exe");
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Install-Erlang
REMARKS
To see the examples, type: "get-help Install-Erlang -examples".
For more information, type: "get-help Install-Erlang -detailed".
For technical information, type: "get-help Install-Erlang -full".
For online help, type: "get-help Install-Erlang -online"
Install-RabbitMQ
NAME
Install-RabbitMq
SYNOPSIS
Installs RabbitMq
SYNTAX
Install-RabbitMq [<CommonParameters>]
DESCRIPTION
The Install-RabbitMq cmdlet will attempt to load the installed from Path.Combine
(Path.GetTempPath(), "rabbitMq.exe");
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
Delinea RabbitMQ Helper Integration Guide Pagelviiiof94
Get Help for Powershell cmdlets
----------EXAMPLE 1----------
PS C:\>Install-RabbitMq
REMARKS
To see the examples, type: "get-help Install-RabbitMq -examples".
For more information, type: "get-help Install-RabbitMq -detailed".
For technical information, type: "get-help Install-RabbitMq -full".
For online help, type: "get-help Install-RabbitMq -online"
Join-RabbitMQCluster
NAME
Join-RabbitMqCluster
SYNOPSIS
Joins a RabbitMq cluster
SYNTAX
Join-RabbitMqCluster [-StrictHostname] <string> [-CookieSet <SwitchParameter>] [-
FirewallConfigured <SwitchParameter>] [<CommonParameters>]
DESCRIPTION
PARAMETERS
-StrictHostname <string>
Gets or sets name of the other node. Not the FQDN. Has to match exactly what the
target machine thinks its name is, including case.
-FirewallConfigured <SwitchParameter>
Gets or sets that the firewall configured.
-CookieSet <SwitchParameter>
Gets or sets that the cookie is configured. the license.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Join-RabbitMqCluster
REMARKS
To see the examples, type: "get-help Join-RabbitMqCluster -examples".
For more information, type: "get-help Join-RabbitMqCluster -detailed".
For technical information, type: "get-help Join-RabbitMqCluster -full".
Delinea RabbitMQ Helper Integration Guide Pagelixof94
Get Help for Powershell cmdlets
For online help, type: "get-help Join-RabbitMqCluster -online"
New-RabbitMQClusterPolicy
NAME
New-RabbitMqClusterPolicy
SYNOPSIS
Creates a policy on the RabbitMq node
SYNTAX
New-RabbitMqClusterPolicy -Name <string> -Pattern <string> [-AdminCredential
<PSCredential>] [-ApplyToExchanges <SwitchParameter>] [-ApplyToQueues
<SwitchParameter>] [-AutomaticSyncMode <SwitchParameter>] [-BaseUrl
<string>] [-IncludeInFederation
<SwitchParameter>] [-Priority <int>] [-QueueReplicaCount <int>]
[-SyncBatchSize <int>] [-VirtualHost <string>] [<CommonParameters>]
DESCRIPTION
PARAMETERS
-SyncBatchSize <int>
Since RabbitMQ 3.6.0, masters perform synchronization in batches. Batch can be configured
via the ha-sync-batch-size queue argument. Earlier versions will synchronise 1 message at
a time by default. By synchronising messages in batches, the
synchronisation process can be sped up considerably. To choose the right value for ha-
sync-batch-size you need to consider: average message size, network throughput between
RabbitMQ nodes, net_ticktime value For example, if you set ha-sync-batch-size
to 50000 messages, and each message in the queue is 1KB, then each
synchronisation message between nodes will be \~49MB.You need to make sure that your
network between queue mirrors can accomodate this kind of traffic. If the network takes
longer than
net_ticktime to send one batch of messages, then nodes in the cluster could
think they are in the presence of a network partition.
-QueueReplicaCount <int>
Number of queue replicas (master plus mirrors) in the cluster. A count value of 1 means
just the queue master, with no mirrors.If the node running the queue master becomes
unavailable, the behavior depends on queue durability. A count value of 2
Delinea RabbitMQ Helper Integration Guide Pagelxof94
Get Help for Powershell cmdlets
means 1 queue master and 1 queue mirror. If the node running the queue master becomes
unavailable, the queue mirror will be automatically promoted to master.In conclusion:
NumberOfQueueMirrors = NumberOfNodes - 1
-AutomaticSyncMode <SwitchParameter>
A queue will automatically synchronize when a new mirror joins. It is worth
reiterating that queue synchronization is a blocking operation. If queues are small, or
you have a fast network between RabbitMQ nodes and the
ha-sync-batch-size was optimized, this is a good choice.
-Name <string>
Gets or sets the name.
-Pattern <string>
Gets or sets the pattern.
-VirtualHost <string>
Gets or sets the virtual host.
-Priority <int>
Priority for the policy.In the event that more than one policy can match a given
exchange or queue, the policy with the greatest priority applies.
-ApplyToQueues <SwitchParameter>
Policy will apply to queues.
-ApplyToExchanges <SwitchParameter>
Policy will apply to exchanges.
-IncludeInFederation <SwitchParameter>
Policy will include the matching targets in federation.
-BaseUrl <string>
Gets or sets the base URL for the RabbitMQ REST API.
-AdminCredential <PSCredential>
Gets or sets the credential of the RabbitMQ administrator user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
Delinea RabbitMQ Helper Integration Guide Pagelxiof94
Get Help for Powershell cmdlets
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
---------- EXAMPLE 1 ----------
PS C:\>New-RabbitMqOneMirrorManualSyncClusterPolicy
REMARKS
To see the examples, type: "get-help New-RabbitMqClusterPolicy -examples".
For more information, type: "get-help New-RabbitMqClusterPolicy -detailed".
For technical information, type: "get-help New-RabbitMqClusterPolicy -full".
For online help, type: "get-help New-RabbitMqClusterPolicy -online"
New-RabbitMQConfigDirectory
NAME
New-RabbitMqConfigDirectory
SYNOPSIS
Creates a RabbitMq configuration directory
SYNTAX
New-RabbitMqConfigDirectory [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>New-RabbitMqConfigDirectory
REMARKS
To see the examples, type: "get-help New-RabbitMqConfigDirectory -examples".
For more information, type: "get-help New-RabbitMqConfigDirectory -detailed".
For technical information, type: "get-help New-RabbitMqConfigDirectory -full".
For online help, type: "get-help New-RabbitMqConfigDirectory -online"
Delinea RabbitMQ Helper Integration Guide Pagelxiiof94
Get Help for Powershell cmdlets
New-RabbitMQNonTlsConfigFiles
NAME
New-RabbitMqNonTlsConfigFiles
SYNOPSIS
Copies RabbitMq non-TLS example configuration file.
SYNTAX
New-RabbitMqNonTlsConfigFiles [<CommonParameters>]
DESCRIPTION
The Copy-RabbitMqExampleNonTlsConfigFile cmdlet copies RabbitMq non-TLS example
configuration file.
The configuration file will be located in the Delinea RabbitMq Site Connector folder.
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>New-RabbitMqNonTlsConfigFiles
REMARKS
To see the examples, type: "get-help New-RabbitMqNonTlsConfigFiles -examples".
For more information, type: "get-help New-RabbitMqNonTlsConfigFiles -detailed".
For technical information, type: "get-help New-RabbitMqNonTlsConfigFiles -full".
For online help, type: "get-help New-RabbitMqNonTlsConfigFiles -online"
New-RabbitMQTlsConfigFiles
NAME
New-RabbitMqTlsConfigFiles
SYNOPSIS
Copies RabbitMq TLS example configuration file.
SYNTAX
New-RabbitMqTlsConfigFiles [<CommonParameters>]
DESCRIPTION
Delinea RabbitMQ Helper Integration Guide Pagelxiiiof94
Get Help for Powershell cmdlets
The new-RabbitMqTlsConfigFiles cmdlet copies RabbitMq TLS example configuration file.
The configuration file will be located in the Delinea RabbitMq Site Connector folder.
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>New-RabbitMqTlsConfigFiles
REMARKS
To see the examples, type: "get-help New-RabbitMqTlsConfigFiles -examples".
For more information, type: "get-help New-RabbitMqTlsConfigFiles -detailed".
For technical information, type: "get-help New-RabbitMqTlsConfigFiles -full".
For online help, type: "get-help New-RabbitMqTlsConfigFiles -online"
Previous
Back to top
Next
New-RabbitMQUser
NAME
New-RabbitMqUser
SYNOPSIS
Adds a basic user to RabbitMq. This user has no permissions
SYNTAX
New-RabbitMqUser -Credential <PSCredential> [<CommonParameters>]
DESCRIPTION
PARAMETERS
-Credential <PSCredential>
Gets or sets the credential of the rabbit mq user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
Delinea RabbitMQ Helper Integration Guide Pagelxivof94
Get Help for Powershell cmdlets
----------EXAMPLE 1----------
PS C:\>New-RabbitMqUser
REMARKS
To see the examples, type: "get-help New-RabbitMqUser -examples".
For more information, type: "get-help New-RabbitMqUser -detailed".
For technical information, type: "get-help New-RabbitMqUser -full".
For online help, type: "get-help New-RabbitMqUser -online"
Open-RabbitMQManagement
NAME
Open-RabbitMqManagement
SYNOPSIS
Opens the RabbitMq management plugin (https://www.rabbitmq.com/management.html)
SYNTAX
Open-RabbitMqManagement [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Enable-RabbitMqManagementPlugin
REMARKS
To see the examples, type: "get-help Open-RabbitMqManagement -examples".
For more information, type: "get-help Open-RabbitMqManagement -detailed".
For technical information, type: "get-help Open-RabbitMqManagement -full".
For online help, type: "get-help Open-RabbitMqManagement -online"
Remove-RabbitMQClusterNode
NAME
Remove-RabbitMqClusterNode
SYNOPSIS
Delinea RabbitMQ Helper Integration Guide Pagelxvof94
Get Help for Powershell cmdlets
Removes a node from the current nodes cluster. Use when a node is not responsive
and/or cannot leave the cluster
SYNTAX
Remove-RabbitMqClusterNode [-StrictHostname] <string> [<CommonParameters>]
DESCRIPTION
PARAMETERS
-StrictHostname <string>
Gets or sets name of the other node. Not the FQDN. Has to match exactly what the
target machine thinks its name is, including case.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Remove-RabbitMqClusterNode UnresponsiveNode1
REMARKS
To see the examples, type: "get-help Remove-RabbitMqClusterNode -examples".
For more information, type: "get-help Remove-RabbitMqClusterNode -detailed".
For technical information, type: "get-help Remove-RabbitMqClusterNode -full".
For online help, type: "get-help Remove-RabbitMqClusterNode -online"
Remove-RabbitMQQueues
NAME
Remove-RabbitMqQueues
SYNOPSIS
Removes all non-autodelete and non-exclusive queues in the RabbitMq cluster.
SYNTAX
Remove-RabbitMqQueues [-AdminCredential <PSCredential>] [-BaseUrl <string>]
[<CommonParameters>]
DESCRIPTION
PARAMETERS
Delinea RabbitMQ Helper Integration Guide Pagelxviof94
Get Help for Powershell cmdlets
-BaseUrl <string>
Gets or sets the base URL for the RabbitMq REST API.
-AdminCredential <PSCredential>
Gets or sets the credential of the RabbitMq administrator user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Remove-RabbitMqQueues
REMARKS
To see the examples, type: "get-help Remove-RabbitMqQueues -examples".
For more information, type: "get-help Remove-RabbitMqQueues -detailed".
For technical information, type: "get-help Remove-RabbitMqQueues -full".
For online help, type: "get-help Remove-RabbitMqQueues -online"
Request-RabbitMQHealthCheck
NAME
Request-RabbitMqHealthCheck
SYNOPSIS
Runs basic healthchecks in the current node. Checks that the rabbit application is
running, channels and queues can be listed successfully, and that no alarms are in effect.
SYNTAX
Request-RabbitMqHealthCheck [-Credential] <PSCredential> [-AdminCredential
<PSCredential>] [-BaseUrl <string>]
[<CommonParameters>]
DESCRIPTION
Checks the node's health for any defects, errors, or issues that can cause
malfunction.
PARAMETERS
-Credential <PSCredential>
Gets or sets the name of the rabbitmq admin user.
-BaseUrl <string>
Gets or sets the base URL for the RabbitMq REST API.
Delinea RabbitMQ Helper Integration Guide Pagelxviiof94
Get Help for Powershell cmdlets
-AdminCredential <PSCredential>
Gets or sets the credential of the RabbitMq administrator user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Request-RabbitMqHealthCheck
REMARKS
To see the examples, type: "get-help Request-RabbitMqHealthCheck -examples".
For more information, type: "get-help Request-RabbitMqHealthCheck -detailed".
For technical information, type: "get-help Request-RabbitMqHealthCheck -full".
For online help, type: "get-help Request-RabbitMqHealthCheck -online"
Reset-RabbitMQNodeCommand
NAME
Reset-RabbitMqNodeCommand
SYNOPSIS
Returns a RabbitMQ node to its original state. Removes the node from any cluster it
belongs to, removes all data from the management database, such as configured users and
vhosts, and deletes all persistent messages.
SYNTAX
Reset-RabbitMqNodeCommand [-Force <SwitchParameter>] [<CommonParameters>]
DESCRIPTION
PARAMETERS
-Force <SwitchParameter>
Gets or sets a value indicating whether to force reset and avoid prompting.
-ForceReset <SwitchParameter>
Gets or sets a value indicating whether to force reset and avoid prompting.
This is an alias of the Force parameter.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
Delinea RabbitMQ Helper Integration Guide Pagelxviiiof94
Get Help for Powershell cmdlets
----------EXAMPLE 1----------
PS C:\>Reset-RabbitMqNodeCommand
REMARKS
To see the examples, type: "get-help Reset-RabbitMqNodeCommand -examples".
For more information, type: "get-help Reset-RabbitMqNodeCommand -detailed".
For technical information, type: "get-help Reset-RabbitMqNodeCommand -full".
For online help, type: "get-help Reset-RabbitMqNodeCommand -online"
Select-Exception
NAME
Select-Exception
SYNOPSIS
Selects the exception as well its inner exceptions. Optionally selects the stack trace
SYNTAX
Select-Exception [-Exception] <Exception> [-IncludeStackTrace <SwitchParameter>]
[<CommonParameters>]
DESCRIPTION
The Select-Exception cmdlet enumerates the specified exception is generates a list of
key-value pairs which could be selected further.
PARAMETERS
-Exception <Exception>
Gets or sets the exception.
-PfxPw <Exception>
Gets or sets the exception.
This is an alias of the Exception parameter.
-IncludeStackTrace <SwitchParameter>
Gets or sets the include stack trace.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>try { Assert-RabbitMqConnectivity -UserName test15 -Password test15 -Hostname
localhost } catch { Select-Exception $_.Exception}
Delinea RabbitMQ Helper Integration Guide Pagelxixof94
Get Help for Powershell cmdlets
REMARKS
To see the examples, type: "get-help Select-Exception -examples".
For more information, type: "get-help Select-Exception -detailed".
For technical information, type: "get-help Select-Exception -full".
For online help, type: "get-help Select-Exception -online"
Set-ErlangCookieFileCommand
NAME
Set-ErlangCookieFileCommand
SYNOPSIS
Sets the Erlang cookie file contents
SYNTAX
Set-ErlangCookieFileCommand -CookieContent <string> [<CommonParameters>]
DESCRIPTION
PARAMETERS
-CookieContent <string>
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Set-ErlangCookieFileCommand -CookieContent "monster"
REMARKS
To see the examples, type: "get-help Set-ErlangCookieFileCommand -examples".
For more information, type: "get-help Set-ErlangCookieFileCommand -detailed".
For technical information, type: "get-help Set-ErlangCookieFileCommand -full".
For online help, type: "get-help Set-ErlangCookieFileCommand -online"
Set-ErlangHomeEnvironmentalVariable
NAME
Set-ErlangHomeEnvironmentalVariable
SYNOPSIS
Sets the ERLANG_HOME environmental variable
Delinea RabbitMQ Helper Integration Guide Pagelxxof94
Get Help for Powershell cmdlets
SYNTAX
Set-ErlangHomeEnvironmentalVariable [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Set-ErlangHomeEnvironmentalVariable
REMARKS
To see the examples, type: "get-help Set-ErlangHomeEnvironmentalVariable -examples".
For more information, type: "get-help Set-ErlangHomeEnvironmentalVariable -detailed".
For technical information, type: "get-help Set-ErlangHomeEnvironmentalVariable -full".
For online help, type: "get-help Set-ErlangHomeEnvironmentalVariable -online"
Set-MinMasterToClusterPolicy
NAME
Set-MinMasterToClusterPolicy
SYNOPSIS
Adds min-master definition to existing policy.
SYNTAX
Set-MinMasterToClusterPolicy [-Credential] <PSCredential> -Name <string> [-AdminCredential
<PSCredential>]
[-BaseUrl <string>] [-VirtualHost <string>] [<CommonParameters>]
DESCRIPTION
The Set-MinMasterToClusterPolicy adds the queue-master-locator definition to the existing
cluster policy.
Then queue-master-locator is visible as min-master in cluster definition.
PARAMETERS
-Credential <PSCredential>
Gets or sets the name of the rabbitmq admin user.
Delinea RabbitMQ Helper Integration Guide Pagelxxiof94
Get Help for Powershell cmdlets
-Name <string>
Gets or sets the name.
-VirtualHost <string>
Gets or sets the virtual host.
-BaseUrl <string>
Gets or sets the base URL for the RabbitMq REST API.
-AdminCredential <PSCredential>
Gets or sets the credential of the RabbitMq administrator user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
REMARKS
To see the examples, type: "get-help Set-MinMasterToClusterPolicy -examples".
For more information, type: "get-help Set- MinMasterToClusterPolicy -detailed".
For technical information, type: "get-help Set- MinMasterToClusterPolicy -full".
For online help, type: "get-help Set- MinMasterToClusterPolicy
-online"**Set-RabbitMqBaseEnvironmentalVariable**
NAME
Set-RabbitMqBaseEnvironmentalVariable
SYNOPSIS
Sets the RABBITMQ_BASE environmental variable
SYNTAX
Set-RabbitMqBaseEnvironmentalVariable [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters\>
Delinea RabbitMQ Helper Integration Guide Pagelxxiiof94
Get Help for Powershell cmdlets
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
---------- EXAMPLE 1 ----------
PS C:\>Set-RabbitMqBaseEnvironmentalVariable
REMARKS
To see the examples, type: "get-help Set-RabbitMqBaseEnvironmentalVariable
-examples".
For more information, type: "get-help Set-RabbitMqBaseEnvironmentalVariable
-detailed".
For technical information, type: "get-help Set-RabbitMqBaseEnvironmentalVariable
-full".
For online help, type: "get-help MinMasterToClusterPolicy -online"
Set-RabbitMQBaseEnvironmentalVariable
NAME
Set-RabbitMqBaseEnvironmentalVariable
SYNOPSIS
Sets the RABBITMQ_BASE environmental variable
SYNTAX
Set-RabbitMqBaseEnvironmentalVariable [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Set-RabbitMqBaseEnvironmentalVariable
Delinea RabbitMQ Helper Integration Guide Pagelxxiiiof94
Get Help for Powershell cmdlets
REMARKS
To see the examples, type: "get-help Set-RabbitMqBaseEnvironmentalVariable -examples".
For more information, type: "get-help Set-RabbitMqBaseEnvironmentalVariable -
detailed".
For technical information, type: "get-help Set-RabbitMqBaseEnvironmentalVariable -
full".
For online help, type: "get-help Set-RabbitMqBaseEnvironmentalVariable -online"
Set-RabbitMQFederationUpstream
Note: For Release 10.0 and going forward, this command is obsolete.
NAME
Set-RabbitMqFederationUpstream
SYNOPSIS
Creates a federation upstream on the RabbitMq node. This version does NOT support TLS
connections
SYNTAX
Set-RabbitMqFederationUpstream -Credential <PSCredential> -Hostname <string> -Name
<string> [-AdminCredential <PSCredential>] [-BaseUrl <string>] [-Expires <int>] [-
FirewallConfigured <SwitchParameter>] [-Port <int>] [-PreFetchCount <int>]
[-ReconnectDelay <int>] [-VirtualHost <string>] [<CommonParameters>]
DESCRIPTION
PARAMETERS
-Name <string>
Gets or sets the name.
-Hostname <string>
Gets or sets the hostname.
-SubjectName <string>
Gets or sets the hostname.
This is an alias of the Hostname parameter.
-FQDN <string>
Gets or sets the hostname.
This is an alias of the Hostname parameter.
-Port <int>
Port to connect to the upstream on.
Delinea RabbitMQ Helper Integration Guide Pagelxxivof94
Get Help for Powershell cmdlets
-Credential <PSCredential>
Gets or sets the credential of the rabbit mq user to connect with on the upstream.
-VirtualHost <string>
Gets or sets the virtual host.
-Expires <int>
The upstream will be defined to buffer messages when disconnected for up to one
the specified number of milliseconds
-PreFetchCount <int>
The pre-fetch count.
-ReconnectDelay <int>
The reconnect delay in seconds.
-FirewallConfigured <SwitchParameter>
Gets or sets that the firewall configured.
-BaseUrl <string>
Gets or sets the base URL for the RabbitMq REST API.
-AdminCredential <PSCredential>
Gets or sets the credential of the RabbitMq administrator user.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Set-RabbitMqFederationUpstream
REMARKS
To see the examples, type: "get-help Set-RabbitMqFederationUpstream -examples".
For more information, type: "get-help Set-RabbitMqFederationUpstream -detailed".
For technical information, type: "get-help Set-RabbitMqFederationUpstream -full".
For online help, type: "get-help Set-RabbitMqFederationUpstream -online"
Set-RabbitMqUserAdmin
NAME
Set-RabbitMqUserAdmin
SYNOPSIS
Sets a basic RabbitMQ user as Admin.
Delinea RabbitMQ Helper Integration Guide Pagelxxvof94
Get Help for Powershell cmdlets
SYNTAX
Set-RabbitMqUserAdmin -UserName <string> [<CommonParameters>]
DESCRIPTION
Gives Administrative rights to an existing RabbitMQ User.
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\> Set-RabbitMqUserAdmin –UserName local
REMARKS
To see the examples, type: "get-help Set-RabbitMqUserAdmin -examples".
For more information, type: "get-help Set-RabbitMqUserAdmin -detailed".
For technical information, type: "get-help Set-RabbitMqUserAdmin -full".
For online help, type: "get-help Set-RabbitMqUserAdmin -online"
Delinea RabbitMQ Helper Integration Guide Pagelxxviof94
Get Help for Powershell cmdlets
Start-RabbitMQ
NAME
Start-RabbitMq
SYNOPSIS
Starts RabbitMq
SYNTAX
Start-RabbitMq [<CommonParameters>]
DESCRIPTION
The Start-RabbitMq cmdlet starts RabbitMq.
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Start-RabbitMq
REMARKS
To see the examples, type: "get-help Start-RabbitMq -examples".
For more information, type: "get-help Start-RabbitMq -detailed".
For technical information, type: "get-help Start-RabbitMq -full".
For online help, type: "get-help Start-RabbitMq -online"
Stop-RabbitMQ
NAME
Stop-RabbitMq
SYNOPSIS
Stops RabbitMq
SYNTAX
Stop-RabbitMq [-StopErlangNode <SwitchParameter>] [<CommonParameters>]
DESCRIPTION
The Stop-RabbitMq cmdlet stops RabbitMq.
Delinea RabbitMQ Helper Integration Guide Pagelxxviiof94
Get Help for Powershell cmdlets
PARAMETERS
-StopErlangNode <SwitchParameter>
Gets or sets whether the Erlang node should be stopped as well.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Stop-RabbitMq
REMARKS
To see the examples, type: "get-help Stop-RabbitMq -examples".
For more information, type: "get-help Stop-RabbitMq -detailed".
For technical information, type: "get-help Stop-RabbitMq -full".
For online help, type: "get-help Stop-RabbitMq -online"
Test-RabbitMqPort
NAME
Test-RabbitMqPort
SYNOPSIS
Checks RabbitMQ Port connectivity
SYNTAX
Test-RabbitMqPort [-Hostname <string>] [-Port <int>] [<CommonParameters>]
DESCRIPTION
Checks connection between the Port and the Hostname
Default Hostname and Port are 'localhost' and '5672'.
Delinea RabbitMQ Helper Integration Guide Pagelxxviiiof94
Get Help for Powershell cmdlets
PARAMETERS
-Hostname <string>
Gets or sets the hostname.
-SubjectName <string>
Gets or sets the hostname.
This is an alias of the Hostname parameter.
-FQDN <string>
Gets or sets the hostname.
This is an alias of the Hostname parameter.
-Port <int>
Port to connect to RabbitMQ.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Test-RabbitMqPort -verbose
REMARKS
To see the examples, type: "get-help Test-RabbitMqPort -examples".
Delinea RabbitMQ Helper Integration Guide Pagelxxixof94
Get Help for Powershell cmdlets
For more information, type: "get-help Test-RabbitMqPort -detailed".
For technical information, type: "get-help Test-RabbitMqPort -full".
For online help, type: "get-help Test-RabbitMqPort -online"
Uninstall-Connector
NAME
Uninstall-Connector
SYNOPSIS
Uninstalls Erlang and RabbitMq
SYNTAX
Uninstall-Connector [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Uninstall-Connector
REMARKS
To see the examples, type: "get-help Uninstall-Connector -examples".
For more information, type: "get-help Uninstall-Connector -detailed".
For technical information, type: "get-help Uninstall-Connector -full".
For online help, type: "get-help Uninstall-Connector -online"
Uninstall-Erlang
NAME
Uninstall-Erlang
SYNOPSIS
Uninstalls prior installation of Erlang
Delinea RabbitMQ Helper Integration Guide Pagelxxxof94
Get Help for Powershell cmdlets
SYNTAX
Uninstall-Erlang [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Uninstall-Erlang
REMARKS
To see the examples, type: "get-help Uninstall-Erlang -examples".
For more information, type: "get-help Uninstall-Erlang -detailed".
For technical information, type: "get-help Uninstall-Erlang -full".
For online help, type: "get-help Uninstall-Erlang -online"
Uninstall-RabbitMQ
NAME
Uninstall-RabbitMq
SYNOPSIS
Uninstalls prior installation of RabbitMq
SYNTAX
Uninstall-RabbitMq [<CommonParameters>]
DESCRIPTION
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Uninstall-RabbitMq
Delinea RabbitMQ Helper Integration Guide Pagelxxxiof94
Get Help for Powershell cmdlets
REMARKS
To see the examples, type: "get-help Uninstall-RabbitMq -examples".
For more information, type: "get-help Uninstall-RabbitMq -detailed".
For technical information, type: "get-help Uninstall-RabbitMq -full".
For online help, type: "get-help Uninstall-RabbitMq -online"
Update Connector
NAME
Update-RabbitMq
SYNOPSIS
Updates Erlang and RabbitMQ
SYNTAX
Update-Connector [<CommonParameters>]
DESCRIPTION
The Update-Connector cmdlet will download the .exe for newer version of erlang and
rabbitmq ; And installs them
without data loss.
PARAMETERS
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Update-Connector
REMARKS
To see the examples, type: "get-help Update-Connector -examples".
For more information, type: "get-help Update-Connector -detailed".
For technical information, type: "get-help Update-Connector -full".
For online help, type: "get-help Update-Connector -online"
Important: Please remember to create a backup of all your data, including queues and messages, before
updating RabbitMQ. This is crucial to ensure that you have a recent backup that is compatible with the new
version and to prevent any loss of messages or queues during the upgrade. Click here to get more
information about backing up your messages. If your queues were set as "durable" and messages were
marked as "persistent", then they should have been stored in RabbitMQ before being confirmed.
Therefore, your messages should still be available and ready to use after the upgrade.
Delinea RabbitMQ Helper Integration Guide Pagelxxxiiof94
Get Help for Powershell cmdlets
Important: If your queues were set as "durable" (meaning they survive server restarts) and messages were
marked as "persistent," they should have been stored in RabbitMQ before being confirmed.
Update Erlang
NAME
Update-RabbitMq
SYNOPSIS
Updates Erlang
SYNTAX
Update-Erlang -DownloadUrl <string> [<CommonParameters>]
DESCRIPTION
The Update-Erlang cmdlet will download the .exe for newer version of erlang and
install it.
PARAMETERS
-DownloadUrl <string>
Gets or sets the URL for Erlang download.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Update-Erlang -DownloadUrl {url string}
REMARKS
To see the examples, type: "get-help Update-Erlang -examples".
For more information, type: "get-help Update-Erlang -detailed".
For technical information, type: "get-help Update-Erlang -full".
For online help, type: "get-help Update-Erlang -online"
Important: Please remember to create a backup of all your data, including queues and messages, before
updating RabbitMQ. This is crucial to ensure that you have a recent backup that is compatible with the new
version, and to prevent any loss of messages or queues during the upgrade. Click here to get more
information about backing up your messages. If your queues were set as "durable" and messages were
marked as "persistent", then they should have been stored in RabbitMQ before being confirmed.
Therefore, your messages should still be available and ready to use after the upgrade.
Important: If your queues were set as "durable" (meaning they survive server restarts) and messages were
marked as "persistent", they should have been stored in RabbitMQ before being confirmed.
Delinea RabbitMQ Helper Integration Guide Pagelxxxiiiof94
Get Help for Powershell cmdlets
Update RabbitMQ
NAME
Update-RabbitMq
SYNOPSIS
Updates RabbitMq
SYNTAX
Update-RabbitMq -DownloadUrl <string> [<CommonParameters>]
DESCRIPTION
The Update-RabbitMq cmdlet will download the .exe for newer version of rabbitmq and
install it.
PARAMETERS
-DownloadUrl <string>
Gets or sets the URL for RabbitMQ download.
Required?true
Position?named
Default value
Accept pipeline input?true (ByValue, ByPropertyName)
Accept wildcard characters?false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
----------EXAMPLE 1----------
PS C:\>Update-RabbitMq -DownloadUrl {url string}
REMARKS
To see the examples, type: "get-help Update-RabbitMq -examples".
For more information, type: "get-help Update-RabbitMq -detailed".
For technical information, type: "get-help Update-RabbitMq -full".
For online help, type: "get-help Update-RabbitMq -online"
Important: Please remember to create a backup of all your data, including queues and messages, before
updating RabbitMQ. This is crucial to ensure that you have a recent backup that is compatible with the new
version, and to prevent any loss of messages or queues during the upgrade. Click here to get more
information about backing up your messages. If your queues were set as "durable" and messages were
marked as "persistent", then they should have been stored in RabbitMQ before being confirmed.
Therefore, your messages should still be available and ready to use after the upgrade.
Important: If your queues were set as "durable" (meaning they survive server restarts) and messages were
marked as "persistent", they should have been stored in RabbitMQ before being confirmed.
Delinea RabbitMQ Helper Integration Guide Pagelxxxivof94
Get Help for Powershell cmdlets
Troubleshooting
The following topics can assist with troubleshooting.
For RabbitMQ deployment recommendations, see this documentation.
Cannot Delete epmd.exe after Uninstalling RabbitMQ and Erlang
This error happens when you uninstall RabbitMQ (and optionally Erlang) but cannot delete one or more programs
or folders associated with RabbitMQ or Erlang.
One common example would be "epmd.exe". This occurs because these files are still being held open by an active
process and can present a problem if you uninstalled in order to perform a clean reinstall. To fix this:
1. Open the command prompt as Administrator and run the tasklist command.
2. Find the epmd.exe process (or whichever process cannot be deleted) and note the process ID by running the
taskkill /pid {PROCESSID} /F command.
3. Delete the file or folder.
Can't Remove Erlang Cookie During Installation
Example of an error:
Failed to copy system cookie: Access to the path 'C:\Users\user1\\.erlang.cookie' is denied..
Manual deletion might be necessary;Access to the path 'C:\Users\user1\\.erlang.cookie' is
denied.;. Would you like to Retry?
For the fix, you can manually delete the cookie from the location the Helper has no access to and retry.
Management Plugin Does Not Load
The management plugin is the web page where the user logs in to manage RabbitMQ. This is usually located at
http://localhost:15672
When installing RabbitMQ using the helper:
n
The management plugin should be enabled automatically
n
The specified user should be automatically created and
n
The user should have appropriate permissions granted
However, if any error occurs during the installation while using the Helper, the management plugin may not be
enabled. See the following 2 ways to fix:
1. Open the Helper and run the
Enable-RabbitMqManagement -Verbose command.
2. Open the RabbitMQ Command Prompt and run the
rabbitmq-plugins enable rabbitmq_management command.
Delinea RabbitMQ Helper Integration Guide Pagelxxxvof94
Troubleshooting
Getting Exceptions but Not Seeing Details
When running a Helper cmdlet, you may run into an exception but do not see any details or inner exceptions.
You can either wrap the cmdlet call or select the exception to get a list of key-value pairs of exception messages:
try { Stop-RabbitMq } catch { Select-Exception $_.Exception}
Or you can select topmost or combined message:
try { Stop-RabbitMq } catch { (Select-Exception $_.Exception)[0].Value}
Need the PowerShell Command Help Content?
#markdown links
Get-Command -Module Delinea.RabbitMq.Helper.PSCommands | Sort | % { Write-Host "Get-Help $_ -
Full | Out-File $_.txt" };
#detailed help file generation script Get-Command -Module Delinea.RabbitMq.Helper.PSCommands
| Sort | % { Write-Host "Get-Help $_ -Detailed | Out-File $_.txt" };
#full help file generation script Get-Command -Module Delinea.RabbitMq.Helper.PSCommands |
Sort | % { Write-Host "Get-Help $_ -Full | Out-File $_.txt" };
RabbitMQ "broken" After Hostname Change
This error occurs when you rename the RabbitMQ Hostname. This results in creating a new database directory with
the current hostname. The result is the SecretServer username no longer exists in the database. Hence, it breaks
every function that requires the RabbitMQ Site Connector.
To resolve this issue:
1. Manually recreate the user with the credentials in the Site Connector > "View Credentials".
2. Then, apply the required permissions to match the guest user.
Best Practice: Do not change your RabbitMQ Hostname.
TypeError: Cannot read properties of undefined (reading 'length')
If the following error display on RabbitMQ Management, manually clear the browser cache on which the
Management is used.
Delinea RabbitMQ Helper Integration Guide Pagelxxxviof94
Troubleshooting
Vulnerability scans return AMQP Cleartext Authentication on port 5672 on
RabbitMQ server(s)
This is not a problem with Secret Server but rather with the RabbitMQ Helper. However, it is fully supported and can
be easily resolved by Secret Server.
Steps to resolve the issue:
1. Enable RabbitMQ TLS
n
Helper online
n
Helper offline
n
RabbitMQ
2. Switch the Secret Server site connector to Use SSL = Yes.
3. Go to Admin > Distributed Engine > Site Connectors > select the affected RabbitMQ site connector(s) > Use
SSL = Yes.
4. To disable the TCP listener in RabbitMQ configuration in C:\RabbitMQ\rabbitmq.conf, edit the following line:
listeners.tcp = none.
5. Click here for more information.
You have the option to fully disable non-TLS listeners. This would limit node access to only TLS-enabled clients
who use the designated port.
# disables non-TLS listeners, only TLS-enabled clients will be able to connect
listeners.tcp = none
listeners.ssl.default = 5671
ssl_options.cacertfile = /path/to/ca_certificate.pem
ssl_options.certfile = /path/to/server_certificate.pem
Delinea RabbitMQ Helper Integration Guide Pagelxxxviiof94
Troubleshooting
ssl_options.keyfile = /path/to/server_key.pem
ssl_options.verify = verify_peer
ssl_options.fail_if_no_peer_cert = true
RabbitMQ Helper Release Notes
Versions
Release
Date Changes in the Release
11.0.0.0 9/4/2024
n
Upgraded RabbitMQ Helper to utilize UI-guided installation.
n
Provided the ability to control log size and rotation.
10.6.0.0 7/03/2024
n
RabbitMQ Helper now supports the Erlang v26.2.5 and RabbitMQ v3.13.2.
n
TLS support for version 1.3 has been added. Support for TLS version 1.1 has
been removed as it was deprecated.
n
Fixed vulnerabilities for Regular Expression Injection.
10.5.0.0 6/07/2024
n
Starting from this version, 'Get-ErlangInstaller', and 'Get-RabbitMqInstaller'
cmdlets will be used only for the installers downloading.
n
Optimized the offline installation process.
n
Admin creation became optional in the Install Connector.
n
The feature flags prompt was removed from the installation. All flags are
enabled by default from RabbitMQ v3.12 and above.
10.4.2.0 02/16/2024
n
Process extension in 'Install-Connector' and 'Install-ConnectorWithSSCred'
installation commands, now incorporating the creation of a RabbitMQ
Administration User upon completion of the installation process.
n
Fixed Update commands for Offline upgradation.
n
Updated Helper to Erlang v26.2.1.
n
Updated Helper to RabbitMQ v3.12.12.
10.4.1.0 12/01/2023
n
Upgraded RabbitMQ to v3.12.8 and Erlang v26.1.2.
n
Fixed 'New-RabbitMqClusterPolicy' command to default to 'ha-mode: all' and
let user customize the policy on creation.
n
Fixed Installation commands for 'Installer Not Found' Error.
n
Fixed Get Installer commands to support Offline Installation.
Delinea RabbitMQ Helper Integration Guide Pagelxxxviiiof94
RabbitMQ Helper Release Notes
Versions
Release
Date Changes in the Release
10.4.0.0 9/22/2023
n
Upgraded the new-rabbitmquser command to enable administrative access.
n
Upgraded the assert-RabbitMqConnectivity command by adding credential
parameter to allow passing of credential objects to the command.
n
Significantly improved download timings for installation commands.
n
Added support for offline upgrade with Update commands for Erlang and
RabbitMQ.
10.3.0.0 8/25/2023
n
Added command Update-Erlang to manually upgrade to newer version of
Erlang.
n
Added command Update-Connector to manually upgrade to newer versions of
Erlang and RabbitMq without data loss.
n
UpdatedRabbitMQ Helper to install the latest stable versions of Erlang and
RabbitMQ.
10.2.0.0 6/12/2023 Added a command called Update-RabbitMQ. This allows for manual upgrades of
RabbitMQ using a URL provided by the user.
10.1.0.0 5/31/2023
n
Added command 'Convert-CaCertChainToPem' for conversion of chain of
certificates to PEM.
n
Added command 'Test-RabbitMqPort' to check whether RabbitMQ Port is
open or not.
n
Added command ‘Install-ConnectorWithSSCred’ to Install RabbitMQ with
Basic User by fetching credentials Secret Server.
n
Now ‘Install-Connector’ command will not create an Admin User.
n
Added ‘Set-RabbitMqUserAdmin’ command to set Basic User as Admin.
10.0.0.1 5/4/2023
n
Made OpenSSL an optional prerequisite (for example, it is not needed for a
successful Helper Installation).
n
ErLang and RabbitMQ installation now use Delinea Marketplace links for
download.
n
The default admin user of RabbitMQ (named as ‘guest’) is removed. The User
will set the admin by providing the credentials during the installation.
n
Made links in prerequisites popups clickable during the RabbitMQ Helper
Installation.
Delinea RabbitMQ Helper Integration Guide Pagelxxxixof94
RabbitMQ Helper Release Notes
Versions
Release
Date Changes in the Release
10.0.0.0 8/2/2023
n
Upgraded to the most recent versions of .NET Core.
n
Upgraded from PowerShell 5 to PowerShell 7.
n
Integrated OpenSSL commands with RabbitMQ Helper Installer to convert
CNG and/or ECC key certificates to PEM file format which will help in the
conversion through the RabbitMQ Helper itself.
n
In this release onwards, RabbitMQ Helper will not set the min-master policy by
default. * Added command to set min-master definition to the existing cluster
policy.
n
Added command to enable feature flags for Direct Exchanges.
n
'Set-RabbitMqBalancedClusterPolicy' had the wrong naming convention. It
was renamed to 'New-RabbitMqClusterPolicy'.
n
Removed Federation Support from RabbitMQ Helper.
9.6.0.0 12/20/2022
n
RabbitMQ 3.9.5 version updated to 3.11.2.
n
ErLang 24.0 version updated to 25.1.2.
9.5.0.2 3/8/2022 This release fixed RabbitMQ displaying incorrect document URL's.
9.5.0.1 11/7/2022 The port issue for joining a RabbitMQ cluster has been resolved, and the new port
number being used for clustering is 25672.
9.5.0.0 3/14/2022
n
Rebranded company name to Delinea.
n
Removed vulnerabilities from rabbitmq-helper for RestSharpSigned and
Bouncy Castle packages.
n
User was not getting created while installing Erlang version 24.0 and
RabbitMQ version 3.9.5 by using rabbitmq-helper.
n
Unable to uninstall RabbitMQ and ErLang from current system.
RabbitMQ Helper FAQ
Here are some answers to frequently asked questions about RabbitMQ Helper.
What is RabbitMQ Helper?
RabbitMQ Helper is a message brochure orchestration application that simplifies the RabbitMQ processes. For
details, see "About RabbitMQ and RabbitMQ Helper" on pagevii.
Delinea RabbitMQ Helper Integration Guide Pagexcof94
RabbitMQ Helper FAQ
How do Icheck if RabbitMQ is running using RabbitMQ Helper?
Run the Assert-RabbitMqIsRunning command.
For details, see "Assert-RabbitMQIsRunning" on pagexxxv.
What is the purpose of a particular command?
This section explains some of the common RabbitMQ Helper commands.
Assert-RabbitMqConnectivity
The Assert-RabbitMqConnectivity command helps to check the RabbitMQ connectivity on the system.
Install-RabbitMq
The Install-RabbitMq command is used to install RabbitMQ.
Grant-RabbitMqUserPermission
The Grant-RabbitMqUserPermission command is used to grant permissions to RabbitMQ users to access
Queues and Policies of the node.
Set-RabbitMqUserAdmin
The Set-RabbitMqUserAdmin command sets a Normal RabbitMQ user as an admin in RabbitMQ Management.
Test-RabbitMqPort
The Test-RabbitMqPort command is used to check connection between the Port and the Hostname.
Set-ErlangHomeEnvironmentalVariable
The Set-ErlangHomeEnvironmentalVariable command is used to set the Erlang_Home as system environment
variable.
How can I install Erlang using RabbitMQ Helper?
Go to "Install-Erlang" on pagelvii.
How do I join a RabbitMQ cluster using RabbitMQ Helper?
Go to Joining a Cluster Using RabbitMQ Helper
How can I remove RabbitMQ queues using RabbitMQ Helper?
Run the Remove-RabbitMqQueues command. It will remove all non-autodelete and non-exclusive queues in the
RabbitMq cluster.
Delinea RabbitMQ Helper Integration Guide Pagexciof94
RabbitMQ Helper FAQ
How do I perform a health check on RabbitMQ with RabbitMQ Helper?
Use the Request-RabbitMqHealthCheck command to run basic health checks in the current node. It checks that
the Rabbit application is running, channels and queues can be listed successfully, and that no alarms are in effect.
How can I update Erlang or RabbitMQ with RabbitMQ Helper?
By using the Enable-RabbitMqManagement command.
How do I enable RabbitMQ Management features with RabbitMQ Helper?
By using the Enable-RabbitMqManagement command.
Who can log in to the RabbitMQ Management UI?
User tags control access to the Management UI. For RabbitMQ Helper, Admin has access to RabbitMQ
Management UI. Newly created users do not have any tags set on them by default. To view the list of other tags,
see the RabbitMQ official documentation https://www.rabbitmq.com/management.html#permissions.
How can I uninstall Erlang, RabbitMQ, or both with RabbitMQ Helper?
You can uninstall by using the Uninstall-Erlang, Uninstall-RabbitMq, and Uninstall-Connector commands.
For more details, see:
Can I view RabbitMQ logs using RabbitMQ Helper?
Yes, you can view RabbitMQ logs using the Get-RabbitMqLog command.
How can I update an existing connector using RabbitMQ Helper?
You can update the existing installation of Erlang and RabbitMQ by using the Update-Connector command. The
command itself will download the required installers and execute the processes themselves.
Important: Please create a backup of all your data, including queues and messages, before updating
RabbitMQ. This is crucial to ensure that you have a recent backup compatible with the new version and to
prevent any loss of messages or queues during the upgrade. For more information about backing up your
messages, see RabbitMQ official documentation. If your queues were marked as "durable" and messages
were marked as "persistent," they should have been stored in RabbitMQ before being confirmed.
Therefore, your messages should still be available and ready to use after the upgrade.
Will updating an existing connector using the RabbitMQ Helper impact the
existing data?
Updating the existing installation of Erlang and RabbitMQ can impact the data. Therefore, creating a backup of all
your data, including queues and messages, is recommended before updating.
Delinea RabbitMQ Helper Integration Guide Pagexciiof94
RabbitMQ Helper FAQ
Will my Queues and Messages get affected on Update?
If your queues were set as "durable" (meaning they survive server restarts) and messages were marked as
"persistent," they should have been stored in RabbitMQ before being confirmed. If so, the messages will still be
there and ready for usage after the upgrade.
Does the Install-Connector command create a default admin account ('guest')
during the process?
The RabbitMQ helper does not create an administrative account as it is not required for normal operation. If desired,
you can create user accounts to manage and monitor the RMQ server(s).
What are the Direct Exchanges?
Direct exchanges are a fundamental building block for routing messages in RabbitMQ. They provide a mechanism
for targeted message delivery based on a specific routing key.
The main elements of the routing mechanism are the following:
n
Queues: In RabbitMQ, messages are stored in queues and consumed by applications
n
Exchanges: Exchanges act as message routers. Producers publish messages to exchanges, and the exchange
determines which queues receive the message
n
Routing Key: Direct exchanges rely on a routing key associated with each message
The routing mechanism works as following:
n
Producer Publishes Message: An application (producer) publishes a message to a specific exchange. The
message includes a routing key
n
Exchange Matches Routing Key: The exchange looks at the message's routing key
n
Queues with Matching Bindings: The exchange checks its bindings. A binding specifies a queue and a routing
key
n
Message Delivery: If a queue is bound to the exchange with a routing key that exactly matches the message's
routing key, the message is delivered to that queue
What is a feature flag?
In the context of RabbitMQ, a feature flag is a mechanism that controls the availability of specific functionalities
within the RabbitMQ server. These flags act like switches, allowing you to turn on or off certain features
independent of the core RabbitMQ version. This provides flexibility during upgrades, enables testing new features
in a controlled environment, and helps manage functionalities that might still require fixing.
What is Enable Feature Flags for Direct Exchanges’?
Note: This feature is obsolete for v10.5.0.0 and further versions.
Delinea RabbitMQ Helper Integration Guide Pagexciiiof94
RabbitMQ Helper FAQ
It is an optional prompt that is available for the user during installation. By enabling "empty_basic_get_metric" and
"drop_unroutable_metric," Feature Flags are enabled in RabbitMQ. Both flags are disabled by default in RabbitMQ
versions prior to 3.12. This is because RabbitMQ cannot definitively determine if it is a new cluster or an upgrade
during startup. Enabling these flags on a fresh cluster deployment might be desirable to gather these metrics from
the beginning.
Delinea RabbitMQ Helper Integration Guide Pagexcivof94
RabbitMQ Helper FAQ