0
votes
C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>
rabbitmq-plugins.bat enable rabbitmq-management


The directory name is invalid.
The filename, directory name, or volume label syntax is incorrect.
** (MatchError) no match of right hand side value: {:error, {:node_name, 
:hostname_not_allowed}}
    (rabbitmqctl) lib/rabbitmq/cli/core/helpers.ex:32: 
RabbitMQ.CLI.Core.Helpers.normalise_node/2
(rabbitmqctl) lib/rabbitmqctl.ex:232: RabbitMQCtl.merge_defaults_node/1
(rabbitmqctl) lib/rabbitmqctl.ex:225: RabbitMQCtl.merge_all_defaults/1
(rabbitmqctl) lib/rabbitmqctl.ex:103: RabbitMQCtl.exec_command/2
(rabbitmqctl) lib/rabbitmqctl.ex:45: RabbitMQCtl.main/1
(elixir) lib/kernel/cli.ex:105: anonymous fn/3 in Kernel.CLI.exec_fun/2

I get this error when trying to enable management. I have tried reinstalling rabbitmq and erlang. I have tried setting environment variables. nothing seems to work. its running on windows server 2016, otp_win64_21.3, and rabbitmq-server-3.7.14

Update:

I have tried renaming the server all uppercase, all lowercase, and without a dash... none of those helped. The servers are currently named "SQL01-Dev" and "sql01-live"

Update 2:

I have ran the command using the node name and it has no effect. I did notice a case difference in the hostname between the environment variable and the hostname command. Here is my command line output:

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>rabbitmq- 
plugins.bat -n rabbit@SQL01-dev enable rabbitmq_management
The directory name is invalid.
The filename, directory name, or volume label syntax is incorrect.
** (MatchError) no match of right hand side value: {:error, {:node_name, 
:hostname_not_allowed}}
(rabbitmqctl) lib/rabbitmq/cli/core/helpers.ex:32: RabbitMQ.CLI.Core.Helpers.normalise_node/2
(rabbitmqctl) lib/rabbitmqctl.ex:232: RabbitMQCtl.merge_defaults_node/1
(rabbitmqctl) lib/rabbitmqctl.ex:225: RabbitMQCtl.merge_all_defaults/1
(rabbitmqctl) lib/rabbitmqctl.ex:103: RabbitMQCtl.exec_command/2
(rabbitmqctl) lib/rabbitmqctl.ex:45: RabbitMQCtl.main/1
(elixir) lib/kernel/cli.ex:105: anonymous fn/3 in Kernel.CLI.exec_fun/2

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>Hostname
SQL01-dev

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>echo %COMPUTERNAME%
SQL01-DEV

Update 3

I Have Removed the @Echo Off line. Here is the output:

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM @echo off

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  The 
contents of this file are subject to the Mozilla Public License

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  Version 
1.1 (the "License"); you may not use this file except in

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  compliance 
with the License. You may obtain a copy of the License

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  at 
http://www.mozilla.org/MPL/

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  Software 
distributed under the License is distributed on an "AS IS"

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  basis, 
WITHOUT WARRANTY OF ANY KIND, either express or implied. See

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  the 
License for the specific language governing rights and

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  
limitations under the License.

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  The 
Original Code is RabbitMQ.

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  The 
Initial Developer of the Original Code is GoPivotal, Inc.

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM  Copyright 
(c) 2007-2015 Pivotal Software, Inc.  All rights reserved.

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>setlocal

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>rem Preserve values that might contain exclamation marks before

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>rem enabling delayed expansion

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>set TDP0=C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin\

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>set STAR=enable RabbitMQ-Management

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>setlocal enabledelayedexpansion

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM Get default settings with user overrides for (RABBITMQ_)<var_name>

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>REM Non-empty defaults should be set in rabbitmq-env

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>call 
"!TDP0!\rabbitmq-env.bat" rabbitmq-plugins
The directory name is invalid.
The filename, directory name, or volume label syntax is incorrect.
** (MatchError) no match of right hand side value: {:error, {:node_name, 
:hostname_not_allowed}}
    (rabbitmqctl) lib/rabbitmq/cli/core/helpers.ex:32: 
RabbitMQ.CLI.Core.Helpers.normalise_node/2
(rabbitmqctl) lib/rabbitmqctl.ex:232: RabbitMQCtl.merge_defaults_node/1
(rabbitmqctl) lib/rabbitmqctl.ex:225: RabbitMQCtl.merge_all_defaults/1
(rabbitmqctl) lib/rabbitmqctl.ex:103: RabbitMQCtl.exec_command/2
(rabbitmqctl) lib/rabbitmqctl.ex:45: RabbitMQCtl.main/1
(elixir) lib/kernel/cli.ex:105: anonymous fn/3 in Kernel.CLI.exec_fun/2

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin>

Update 4:

I can start and configure the server If I Login under a local account. however, when rabbitmq_management is enabled There is still nothing listening on port 15672. Also my dev machine is Not using a local login but it works just fine for everything. I have compared the output of the Set commands for both systems and the only difference I can see is my dev machine has a few extra variable for things like java. nothing that I would think RabbitMQ needs. I'm still not seeing a major difference between the working environments and the non-working ones. I haven't tested if i can actually connect to the MQ server if it runs from a local account but we'll need to be able to manage the server using domain logins anyway...

1
hostname_not_allowed - what is the output of the hostname command?Luke Bakken
@LukeBakken SQL01-dev. this server is also our main sql server. does it not allow dashes?Dominic H
Dashes should be fine, but there is something going on with how the node name is determined. Try running rabbitmq-plugins.bat -n rabbit@SQL01-dev enable rabbitmq_management. Also, check to see if the COMPUTERNAME` environment variable differs than what is output from hostnameLuke Bakken
@LukeBakken I Did notice a difference. See my update.Dominic H
I see some other suspicious errors in your output like The directory name is invalid. and The filename, directory name, or volume label syntax is incorrect. Can you open the "RabbitMQ Command Prompt (sbin dir)" start menu item, run the set command, and provide the output in a gist? I'm one of RabbitMQ's maintainers and regularly test on Windows, and have never seen this issue.Luke Bakken

1 Answers

0
votes

Open the "RabbitMQ Command Prompt (sbin dir)" terminal with administrative right, run:" Before getting invalid path error

Please check your window defender firewall app or features setting as Below:
1. Write down "window defender firewall" on window search
2. Click "Allow an app or feature though Windows Defender Firewall"
3. Click "Change Settings"
4. Check setting for epdm and erl and it should be (Domain= true; private:true and public = true)
5. Click "OK"

Please run below command:

set HOMEDRIVE=C: 
rabbitmq-service.bat stop
rabbitmq-service.bat uninstall
rabbitmq-service.bat install
rabbitmq-service.bat start
rabbitmq-plugins.bat enable rabbitmq_management