Usługa RabbitMQ

W ramach aplikacji Comarch Auto Update, oprócz głównej usługi Comarch Auto Update Service działa dodatkowo usługa kolejkowania wiadomości RabbitMQ, która jest odpowiedzialna za wymianę informacji między agentem nadrzędnym a podrzędnymi. Usługa jest instalowana wraz z Comarch Auto Update i nie wymaga dodatkowej konfiguracji.

W przypadku pojawienia się problemów z działaniem usługi najczęstszym tego objawem jest brak dostępu do przycisków Akcji zdalnych na agencie nadrzędnym oraz brak połączenia z agentami podrzędnymi (status Offline na liście agentów podrzędnych).

Uwaga
Należy pamiętać o zweryfikowaniu poprawności komunikacji na porcie 5672. Przez ten port odbywa się wymiana informacji między agentem nadrzędnym a podrzędnymi.

Aby zweryfikować poprawność działania usługi w pierwszej kolejności należy sprawdzić czy jest widoczna w panelu usług Windows i ma stan Działa oraz typ uruchomienia Automatyczny.

RabbitMQ w panelu usług Windows
RabbitMQ w panelu usług Windows

W dalszej kolejności należy zweryfikować również dostęp do jej panelu administracyjnego pod adresem http://localhost:15672/. Po zalogowaniu na konto administratora (login: admin, hasło: admin) widoczne będą informacje o błędach oraz ostrzeżeniach.

Panel administracyjny usługi RabbitMQ
Panel administracyjny usługi RabbitMQ

Jeśli usługa nie chce się uruchomić lub w panelu administracyjnym widoczne są błędy należy w pierwszej kolejności wykonać skrypty naprawcze zawarte w przykładzie poniżej.

Przykład
W przypadku wystąpienia problemów z rabbitem, można je rozwiązać w następujący sposób:

  1. uruchomić “cmd.exe” z uprawnieniami administratora, a następnie wykonać następujące instrukcje
  2. cd C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.5\sbin
  3. rabbitmq-service.bat remove
  4. rabbitmq-service.bat install
  5. rabbitmq-service.bat start
  6. rabbitmq-plugins enable rabbitmq_management
  7. rabbitmqctl stop (należy chwile zaczekać na wykonanie tej komendy, czasem jest wymagany ręczne zatrzymanie usługi RabbitMQ)
  8. rabbitmq-server -detached
  9. rabbitmqctl start_app (należy chwile zaczekać na wykonanie tej komendy, czasem jest wymagany ręczne uruchomienie usługi RabbitMQ)
  10. rabbitmqctl add_user admin admin
  11. rabbitmqctl set_user_tags admin administrator
  12. rabbitmqctl set_permissions -p / admin “.*” “.*” “.*”

W czasie wykonywania powyższych komend może wystąpić problem z autentykacją i plikiem erlang cookie. Aby go rozwiązać należy przekopiować: C:\Windows\System32\config\systemprofile\.erlang.cookie do C:\Users\UserName\.erlang.cookie

Uwaga
Logi usługi RabbitMQ znajdują się w katalogu C:\ProgramData\RabbitMQ\log.

Rabbit SSL

W celu zapewnienia bezpiecznej komunikacji SSL dla agentów podrzędnych zalecane jest uruchomienie komunikacji Rabbit SSL.

Przycisk [Używaj połączenia SSL dla RabbitMQ] dostępny jest gdy środowisko zostało przepięte na komunikację SSL. Po jego wybraniu RabbitMQ zostanie przepięty na komunikację po SSL i będzie korzystał z portu 5671.

Uwaga
Port 5671 należy dodać do reguł przychodzących dla agenta nadrzędnego oraz do reguł wychodzących dla agentów podrzędnych.

Dostęp i konto dla RabbitMQ 

Wdrożono model oparty na unikalnych, automatycznie generowanych poświadczeniach dla każdej niezależnej instalacji. Dostęp do wewnętrznej magistrali komunikatów (RabbitMQ) został odseparowany od kont użytkowników i bazuje na dedykowanych, losowo tworzonych kluczach.
System umożliwia tworzenie odrębnych kont dla kolejnych użytkowników oraz składników systemu. W środowiskach rozproszonych przełączenie agentów podrzędnych na nowe, indywidualne konta odbywa się automatycznie, po czym wcześniejsze poświadczenia administracyjne są bezpiecznie wycofywane.

Z poziomu Konfiguracji Comarch Auto Update możliwe jest utworzenie konta Klienckiego RabbitMQ.

Konto Klienckie RabbitMQ

 

Okno dodawania Konta

Po poprawnym wprowadzeniu poświadczeń Windows, można przejść do procesu dodawania konta dla brokera RabbitMQ.

Uwaga
Hasło musi mieć min. 20 znaków lub min.12 znaków z wielką literą, małą literą, cyfrą i znakiem specjalnym.
Tworzenie konta Klienckiego dla RabbitMQ

Po wybraniu przycisku [Tak] następuje tworzenie konta.

Proces tworzenia konta

Czy ten artykuł był pomocny?