<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CI/CD &#8211; SQLpowered.com</title>
	<atom:link href="https://sqlpowered.com/category/cicd/feed/" rel="self" type="application/rss+xml" />
	<link>https://sqlpowered.com</link>
	<description>SQL Server + BI</description>
	<lastBuildDate>Thu, 18 Mar 2021 23:10:39 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://sqlpowered.com/wp-content/uploads/2020/07/FavIcon-e1594067873682-99x100.png</url>
	<title>CI/CD &#8211; SQLpowered.com</title>
	<link>https://sqlpowered.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Installing RabbitMQ on Windows</title>
		<link>https://sqlpowered.com/installing-rabbitmq-on-windows/</link>
					<comments>https://sqlpowered.com/installing-rabbitmq-on-windows/#respond</comments>
		
		<dc:creator><![CDATA[Jan Dvořák]]></dc:creator>
		<pubDate>Thu, 06 Aug 2020 08:09:39 +0000</pubDate>
				<category><![CDATA[CI/CD]]></category>
		<guid isPermaLink="false">https://sqlpowered.com/?p=4524</guid>

					<description><![CDATA[RabbitMQ is a trending message queue solution used by many software products today. From the release manager or CI/CD master point of view, it&#8217;s just another component that needs to be installed when delivering the product to the customer. Ideally, this should be automated but it depends on the customer...]]></description>
										<content:encoded><![CDATA[<p>RabbitMQ is a trending message queue solution used by many software products today. From the release manager or CI/CD master point of view, it&#8217;s just another component that needs to be installed when delivering the product to the customer. Ideally, this should be automated but it depends on the customer environment how the particular configuration will be. Doing it several times I have prepared this step-by-step guide on how to install RabbitMQ successfully on Windows. Sure there is a lot of such guides available but I have included a few points which can save hours of troubleshooting to newbies.</p>
<h3>1. Download installation packages</h3>
<p>Original Windows installation guide <a href="https://www.rabbitmq.com/install-windows.html" rel="nofollow noreferrer noopener">https://www.rabbitmq.com/install-windows.html</a>.</p>
<p>RabbitMQ requires Erlang to run. Consider it in your planning because it&#8217;s another product and dependency you should install in a customer&#8217;s environment and especially large companies with good security can be resistant against it.</p>
<ul>
<li data-sourcepos="6:4-6:74">Download Erlang (64 bit) installation file: <a href="https://www.erlang.org/downloads" rel="nofollow noreferrer noopener">https://www.erlang.org/downloads</a></li>
</ul>
<p style="padding-left: 40px;">There are several compilations for Windows. Choose the right one as in the picture. The other won&#8217;t work because it&#8217;s not precompiled.<br />
<img decoding="async" class="alignnone wp-image-4990" src="https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang.png" alt="" width="468" height="81" srcset="https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang.png 878w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang-300x52.png 300w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang-150x26.png 150w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang-768x133.png 768w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang-360x62.png 360w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang-160x28.png 160w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang-320x55.png 320w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang-520x90.png 520w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang-720x125.png 720w" sizes="(max-width: 468px) 100vw, 468px" /></p>
<p style="padding-left: 40px;">The distribution right on the top of the download page has a different folder structure than the folders described below.</p>
<ul>
<li>Download RabbitMQ installation package for Windows: <a href="https://www.rabbitmq.com/install-windows.html#downloads" rel="nofollow noreferrer noopener">https://www.rabbitmq.com/install-windows.html#downloads</a></li>
<li data-sourcepos="10:4-10:97">Download Handle.exe installation file: <a href="http://technet.microsoft.com/en-us/sysinternals/bb896655" rel="nofollow noreferrer noopener">http://technet.microsoft.com/en-us/sysinternals/bb896655</a> Handle.exe is required by RabbitMQ to work properly with Windows file descriptors, see more later in references.</li>
</ul>
<h3>2. Install Erlang</h3>
<ul>
<li>Install Erlang from the downloaded package. Do it under the admin account and use the default folders setting.</li>
</ul>
<h3>3. Install RabbitMQ</h3>
<ul>
<li data-sourcepos="14:4-14:22">Install RabbitMQ from the downloaded package. Do it under the admin account and use the default folders setting.</li>
</ul>
<h3>4. Install Handle</h3>
<ul>
<li data-sourcepos="14:4-14:22">Extract Handle package to C:\Program Files\Handle and add this path to PATH in <a href="https://www.youtube.com/watch?v=bEroNNzqlF4" rel="noopener noreferrer">Environments settings</a>.</li>
<li data-sourcepos="14:4-14:22">If this step isn&#8217;t completed properly or Handle installation is skipped, RabbitMQ will work but it will log every 5 minutes in log message &#8220;<em>2020-06-06 14:27:21.699 [error] &lt;0.753.0&gt; Could not find handle.exe, please install from sysinternals&#8221; </em> and in the admin interface the proper number of used/free file descriptors will be 0.</li>
</ul>
<h3>5. Setup PATHs</h3>
<ul>
<li>Create <strong>RABBITMQ_BASE</strong> variable in Environment variables and point it to folder C:\Server\RabbitMQ where RabbitMQ configuration, logs, and data will be stored.</li>
<li>Create <strong>RABBITMQ_SERVER</strong> variable and point it to the folder where RabbitMQ was installed. By default, it should be C:\Program Files\RabbitMQ Server\rabbitmq_server-{version}.</li>
<li>Create <strong>ERLANG_HOME</strong> variable and point it to the Erlang installation folder. By default, it should be C:\Program Files\erl{version}.</li>
</ul>
<h3>6. Configure and run RabbitMQ</h3>
<h5><strong>Setting advanced.config</strong></h5>
<ul>
<li>If you would like to specify the custom port number or different admin account and password you must create file <em>advanced.config</em> in the <strong>RABBITMQ_BASE</strong> path and insert the following lines:</li>
</ul>
<pre class="lang:batch decode:true">[
   {rabbit, [
     {tcp_listeners, [5672]},
     {default_user, &lt;&lt;"admin"&gt;&gt;},
     {default_pass, &lt;&lt;"admin"&gt;&gt;}
     ]
   }
].</pre>
<ul>
<li>When choosing the port number make sure it isn&#8217;t used by another application or service. Otherwise, RabbitMQ will not start and log the message that the lister can&#8217;t be registered.</li>
<li>Make sure this port is allowed in the Windows firewall when accessing RabbitMQ from a remote PC.</li>
<li>When <em>advanced.config</em> file isn&#8217;t properly formatted RabbitMQ services won&#8217;t start crashing unclear exception to Windows application logs. The dot and the end of the configuration is also part of a properly formatted configuration file.</li>
<li>User name and password specified in <em>advance.config</em> file will be used for first sign up to web administration later.</li>
</ul>
<h5>Installing RabbitMQ as Windows service</h5>
<ul>
<li>Open elevated Commnad line and switch to \sbin folder in RabbitMQ installation path. (By default C:\Program Files\RabbitMQ Server\rabbitmq_server-{version}\sbin).</li>
<li>Add a plugin for web administration running the command <code>.\rabbitmq-plugins.bat enable rabbitmq_management</code>.
<ul>
<li>If it will report that <strong>ERLANG_HOME</strong> isn&#8217;t defined then try so sign out or restart the PC.</li>
<li>If Firewall notification will pop up allow it for private networks.</li>
</ul>
</li>
<li>Run <code>.\rabbitmq-service.bat install</code> to install RabbitMQ as Windows Service.</li>
<li>Start the service with the command <code>.\rabbitmq-service.bat start</code>. Sure you can start it manually via Services manager.</li>
<li>When the service was started successfully you should see the following folders structure in RabbitMQ folder:<br />
<img decoding="async" class="alignnone  wp-image-4994" src="https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang_2.png" alt="" width="283" height="115" srcset="https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang_2.png 576w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang_2-300x122.png 300w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang_2-150x61.png 150w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang_2-360x146.png 360w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang_2-160x65.png 160w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang_2-320x130.png 320w, https://sqlpowered.com/wp-content/uploads/2020/08/RabbitMQ_Erlang_2-520x211.png 520w" sizes="(max-width: 283px) 100vw, 283px" /></p>
<ul>
<li>If the service will crash on start and you will see erl_crash file in the folder having in header message that <em>Kernel pid terminated (application_controller) ({application_start_failure,rabbitmq_prelaunch,{{shutdown,{failed_to_start_child,prelaunch,failed_to_read_advanced_configuration_file}},{rabbit_prelaunch</em>, it&#8217;s most probably inproperly formatted <em>advanced.config</em>.You can verify it that you will delete the file and service will start again.</li>
</ul>
</li>
</ul>
<h5>Connecting and troubleshooting</h5>
<ul>
<li>Try to connect to RAbbitMQ web administration at the URL <a href="http://localhost:15672" rel="nofollow noreferrer noopener">http://localhost:15672</a>. You should see a screen like this one:<br />
<img fetchpriority="high" decoding="async" class="alignnone wp-image-4542" src="https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration.png" alt="" width="364" height="185" srcset="https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration.png 877w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-300x152.png 300w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-150x76.png 150w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-768x390.png 768w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-360x183.png 360w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-160x81.png 160w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-320x162.png 320w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-483x245.png 483w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-670x340.png 670w, https://sqlpowered.com/wp-content/uploads/2020/08/Installing-RabbitMQ-on-Windows-Web-Administration-520x264.png 520w" sizes="(max-width: 364px) 100vw, 364px" /></p>
<ul>
<li>Use user name and password configured in <em>advanced.config</em> to log in.</li>
<li>If the web administration won&#8217;t load then check logs in <strong>RABBITMQ_BASE\log</strong> and fix configuration as needed.</li>
<li>If you can&#8217;t log with then user name and password from advanced.config file it&#8217;s possible that RabbitMQ service was launched before advanced.config file was created. In that case, RabbitMQ has created the default user <em>guest</em> with password <em>guest</em>. Try to log with this credential.</li>
<li>If you would like to reset the <em>guest</em> and user the one from <em>advanced.config</em> then stop the service, delete the content of folders <strong>RABBITMQ_BASE\db</strong> and <strong>RABBITMQ_BASE\log</strong> and start the service. This will push RabbitMQ to create a new database and configuration and your <em>advanced.config</em> will be used.</li>
</ul>
</li>
</ul>
<p>Finally, you should review <strong>RABBITMQ_BASE\log</strong> if something isn&#8217;t going wrong in the background.</p>
<p>Note: Please remember that every change in configuration requires RabbitMQ service to be restarted.</p>
<p><strong>Further reading:</strong></p>
<ul>
<li><a href="https://stackoverflow.com/questions/52954872/rabbitmq-on-vm-cloned-from-an-os-image-fails-to-start-possibly-due-to-node-name" rel="nofollow noreferrer noopener">https://stackoverflow.com/questions/52954872/rabbitmq-on-vm-cloned-from-an-os-image-fails-to-start-possibly-due-to-node-name</a></li>
<li><a href="https://onlinehelp.coveo.com/en/ces/7.0/administrator/changing_the_rabbitmq_administrator_password.htm" rel="nofollow noreferrer noopener">https://onlinehelp.coveo.com/en/ces/7.0/administrator/changing_the_rabbitmq_administrator_password.htm</a></li>
<li><a href="https://cmatskas.com/getting-started-with-rabbitmq-on-windows/" rel="noopener noreferrer">https://cmatskas.com/getting-started-with-rabbitmq-on-windows</a></li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://sqlpowered.com/installing-rabbitmq-on-windows/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
