Przeskocz do opisu głównego

Konfiguracja Apache ActiveMQ

Funkcjonalność asynchronicznej synchronizacji danych użytkowników w BPM SecurityProvider (Ganimedes) wymaga zainstalowania i skonfigurowania serwera Apache ActiveMQ. Serwer ten jest wykorzystywany do realizacji asynchronicznej synchronizacji danych użytkowników. W tym dokumencie znajdziesz instrukcje dotyczące pobierania, instalacji i konfiguracji Apache ActiveMQ oraz jego adaptera zasobów (Resource Adapter) dla IBM WebSphere. Funkcjonalność ta jest opcjonalna i nie jest wymagana do poprawnego działania BPM SecurityProvider (Ganimedes). W przypadku, gdy nie jest potrzebna, można pominąć ten dokument (zobacz parametr konfiguracyjny enableMQConsumer w opisie pliku ldap-options.xml).

Informacja

Funkcjonalność ta jest dostępna od wersji 8.6.3.21030.3.0.0.x.


Apache ActiveMQ​

Obecnie w BPM SecurityProvider (Ganimedes) wykorzystywana jest następująca wersja Apache ActiveMQ: 5.16.2. W lokalizacji download znajdziesz dostępne wersje produktu.

Pobieranie Apache ActiveMQ​

Komenda pobrania pakietu instalacyjnego pod Linux:

wget -b -t0 --no-check-certificate https://archive.apache.org/dist/activemq/5.16.2/apache-activemq-5.16.2-bin.tar.gz

Komenda pobrania pakietu instalacyjnego pod Windows (użyj polecenia curl, które jest wbudowane w Windows 10/11):

curl -O https://archive.apache.org/dist/activemq/5.16.2/apache-activemq-5.16.2-bin.zip

Wyjaśnienie:

  • curl - polecenie do transferu danych.
  • -O (duże "o") - opcja, która nakazuje curl zapisać pobrany plik z taką samą nazwą, jaką ma na serwerze (czyli apache-activemq-5.16.2-bin.zip).

Instalacja Apache ActiveMQ​

Zainstaluj zgodnie z instrukcją:

Krok 1: Pobranie i rozpakowanie​

Pobrany plik (np. apache-activemq-5.16.2-bin.tar.gz) zawiera katalog z gotowym do uruchomienia produktem. Rozpakuj do katalogu docelowego np. o nazwie /opt/IBM/BAW:

mkdir -p /opt/IBM/BAW
cd /opt/IBM/BAW
tar -xzvf ~/apache-activemq-5.16.2-bin.tar.gz
cd apache-activemq-5.16.2/
export ACTIVEMQ_HOME=`pwd`
echo ${ACTIVEMQ_HOME}

Krok 2: Lokalizacja instalacji​

Produkt Apache ActiveMQ, poprzez rozpakowanie pliku apache-activemq-5.16.2-bin.tar.gz, zainstalowaliśmy w katalogu ${ACTIVEMQ_HOME} (np. `/opt/IBM/BAW/apache-activemq-5.16.2).

Krok 3: Uruchomienie​

Uruchomienie produktu nie wymaga dodatkowej konfiguracji. Konfiguracja znajduje się w pliku $ACTIVEMQ_HOME/conf/activemq.xml i zmiana jego zawartości jest opcjonalna. Produkt uruchamiamy poleceniem:

export JAVA_HOME=/opt/IBM/BPM/v8.5.7/java
$ACTIVEMQ_HOME/bin/activemq start

Krok 4: Sprawdzenie działania​

Logi zdarzeń uruchomionego produktu można podejrzeć poleceniem:

tail -f $ACTIVEMQ_HOME/data/activemq.log

Krok 5: Zatrzymanie​

Produkt zatrzymujemy poleceniem:

export JAVA_HOME=/opt/IBM/BPM/v8.5.7/java
$ACTIVEMQ_HOME/bin/activemq stop

Krok 6: Dostęp do zainstalowanych usług Active MQ​

W domyślnej konfiguracji dostępne są następujące usługi:

  1. Obsługa kolejek (różne protokoły):
    1. tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600
    2. stomp://0.0.0.0:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600
    3. mqtt://0.0.0.0:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600
    4. ws://0.0.0.0:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600
  2. Panel administracyjny brokera: http://127.0.0.1:8161/, domyślny dostęp admin/admin.

Zmiana domyślnych ustawień​

1. Zmiana dostępu do panelu administracyjnego​

Zmiana dostępu do panelu administracyjnego: zmień plik $ACTIVEMQ_HOME/conf/jetty.xml:

<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<!-- the default port number for the web console -->
<property name="host" value="0.0.0.0"/>
<property name="port" value="8161"/>
</bean>

2. Zmiana domyślnych haseł użytkowników​

Zmiana domyślnych haseł użytkowników admin i user: zmień plik $ACTIVEMQ_HOME/conf/jetty-realm.properties:

# Defines users that can access the web (console, demo, etc.)
# username: password [,rolename ...]
admin: change_me01, admin
user: change_me01, user

Apache ActiveMQ Resource Adapter​

Pakiet źródła danych potrzebny do instalacji klienta na serwerze aplikacji IBM WebSphere. Więcej na ten temat można przeczytać pod adresem ActiveMQ Resource Adapter.

Pobieranie Resource Adapter​

Katalog z relase'ami produktu znajduje się na stronie repozytorium Maven. Obecnie używana jest wersja 5.16.2 zatem komenda pobrania:

wget -b -t0 --no-check-certificate https://repo1.maven.org/maven2/org/apache/activemq/activemq-rar/5.16.2/activemq-rar-5.16.2.rar

Instalacja Resource Adapter​

Kroki instalacji:

Krok 1: Logowanie do konsoli IBM WebSphere​

Logujemy się do konsoli IBM WebSphere dostępnej pod adresem https://<nazwa_serwera_dmgr>:<port>/ibm/console np. https://localhost:9043/ibm/console.

Krok 2: Konfiguracja adaptera zasobów​

Przechodzimy: Resources > Resource adapters > Resource adapters i wciskamy przycisk Install RAR znajdujący się w nagłówku tabeli prezentującej zdefiniowane już adaptery.

IBM WebSphere Resource adapters

Postępujemy zgodnie ze zdefiniowanymi krokami kreatora. W pierwszej kolejności wybieramy/ustawiamy wartość pola Scope (zakresu) na Node1. Kolejno wskazujemy na pobrany przez nas plik z definicją adaptera activemq-rar-x.x.x.rar. Wciskamy przycisk Next.

IBM WebSphere Resource adapters - ustawianie danych kroku pierwszego

Krok 3: Uzupełnienie danych adaptera​

W kolejnym kroku pojawia się formularz z uzupełnionymi wartościami domyślnymi. Zostawiamy tak jak jest, Wciskamy przycisk OK.

IBM WebSphere Resource adapters - ustawianie danych kroku drugiego

Krok 4: Zmiana adresu serwera ActiveMQ​

Ponownie przechodzimy do: Resources > Resource adapters > Resource adapters, wybieramy zakres Node1, na liście zdefiniowanych adapterów pojawi się zdefiniowany przez nas ActiveMQ JMS Resource Adapter.

IBM WebSphere Resource adapters

Domyślnie, adapter ma zdefiniowane połączenie z serwerem Apache ActiveMQ pod adresem: tcp://localhost:61616. Aby to zmienić musimy ustawić parametr ServerUrl pośród Custom properties. Poniższe ilustracje prezentują poszczególne kroki ustawiania odpowiedniej wartości:

  1. Wybierz zakładkę Custom properties:

IBM WebSphere Resource adapters - Custom properies

  1. Ustaw wartość parametru: ServerUrl

IBM WebSphere Resource adapters - ustawianie parametru ServerUrl

Konfiguracja J2C connection factories​

Aby móc korzystać z połączenia zdefiniowanego adaptera trzeba zdefiniować J2C connection factories. Poszczególne kroki konfiguracji:

Krok 1: Konfiguracja definicji połączeń​

Przechodzimy: Resources > Resource adapters > J2C connection factories. Musimy wybrać zakres (scope, obszar), w którym zdefiniujemy połączenie. W naszym przypadku będzie to Node1. Wciskamy przycisk New... znajdujący się w nagłówku tabeli prezentującej zdefiniowane już połączenia.

IBM WebSphere Resource adapters

Pojawia się formularz, na którym definiujemy wartości niezbędnych pól:

  1. Provider - wybieramy nazwę ActiveMQ JMS Resource Adapter wcześniej zdefiniowanego adaptera.
  2. Name - nazwa definiowanego połączenia np. jms_ConnectionFactory
  3. JNDI name - nazwa JNDI połączenia np. jms/ConnectionFactory
  4. Connection factory interface - z listy wybieramy wartość javax.jms.ConnectionFactory
  5. Pozostałe pola są opcjonalne, uzupełniamy jeżeli wymaga tego od nas definicja połączenia.
  6. Wciskamy przycisk OK

IBM WebSphere Resource adapters - tworzenie nowego połączenia

Krok 2: Przegląd definicji połączeń​

Po zapisaniu zmian utworzona definicja pojawi się na ma liście zakresu (obszaru) Node1:

IBM WebSphere Resource J2C connection factories

Krok 3: Restart środowiska​

Zrestartuj środowisko.