CentOS / RHEL8にApacheActiveMQをインストールする方法


ActiveMQは、Javaで記述されたエンタープライズ機能を備えたメッセージ指向ミドルウェア(MOM)の一般的なオープンソースのマルチプロトコル実装であり、2つのアプリケーション間またはアプリケーション内の2つのコンポーネント間でメッセージを送信するために使用されます。

Java、C、C ++、C#、Ruby、Perl、Python、PHP、およびOpenWire、STOMP、MQTT、AMQP、REST、WebSocketsなどのトランスポートプロトコルからの幅広いクロスランゲージクライアントをサポートします。

その使用例には、トランザクションメッセージング、クラスタリングおよび汎用非同期メッセージングモデル、データのWebストリーミング、HTTPを使用したメッセージングへのRESTfulAPIなどが含まれます。

この記事では、CentOS8およびRHEL8Linuxディストリビューションに最新バージョンのApacheActiveMQをインストールする方法について説明します。

CentOSおよびRHEL8へのApacheActiveMQのインストール

ActiveMQをインストールするには、システムのサーバーにJavaがインストールされている必要があります。 Javaがインストールされていない場合は、「CentOSおよびRHEL8にJavaをインストールする方法」ガイドを使用してシステムにインストールできます。

Javaをインストールしたら、さらに進んでActiveMQの最新バージョンをダウンロードするか、次のwgetコマンドを使用して図のようにソースパッケージを取得できます。

# cd /opt
# wget https://www.apache.org/dist/activemq/5.15.10/apache-activemq-5.15.10-bin.tar.gz

次に、tarコマンドを使用してアーカイブファイルを抽出し、図のようにcdコマンドを使用して抽出したディレクトリに移動します。

# tar zxvf apache-activemq-5.15.10-bin.tar.gz
# cd apache-activemq-5.15.10

これで、ActiveMQパッケージが/opt/apache-activemq-5.15.9ディレクトリにインストールされ、lsコマンドを使用してその内容を表示できます。

# ls -l 

上記の出力から、注意する必要のあるいくつかの重要なディレクトリがあり、それらには次のものが含まれます。

  • bin – stores the binary file plus other related files.
  • conf – contains the configuration files: the main configuration file activemq.xml, written in XML format.
  • data – stores the PID file as well as log files.
  • docs – contains documentation files.
  • lib – stores library files.
  • webapps – contains the web interface and admin console files.

SystemdでのサービスとしてのActiveMQの実行

ActiveMQをサービスとして実行するには、activemqというユーザーの下にActiveMQサービスユニットファイルを作成する必要があるため、図のようにuseraddコマンドを使用してユーザーを作成することから始めます。

# useradd activemq

次に、ActiveMQインストールディレクトリに適切なアクセス許可を設定すると、そのすべてのコンテンツが新しく作成されたユーザーとグループに属します。また、新しい権限が次のように設定されていることを確認してください。

# chown -R activemq:activemq /opt/apache-activemq-5.15.10
# ls -l /opt/apache-activemq-5.15.10/

次に、/ etc/systemd/system /ディレクトリの下に activemq.service というActiveMQのサービスユニットファイルを作成します。

# vi /etc/systemd/system/activemq.service

activemq.service ファイルに次の構成を追加します。

[Unit]
Description=Apache ActiveMQ Message Broker
After=network-online.target

[Service]
Type=forking

User=activemq
Group=activemq

WorkingDirectory=/opt/apache-activemq-5.15.10/bin
ExecStart=/opt/apache-activemq-5.15.10/bin/activemq start
ExecStop=/opt/apache-activemq-5.15.10/bin/activemq stop
Restart=on-abort


[Install]
WantedBy=multi-user.target

ファイルを保存して閉じます。次に、次のコマンドを使用して、systemd manager構成をリロードし、新しく作成されたサービスを読み取ります。

# systemctl daemon-reload

次に、systemctlコマンドを使用して開始できます。示されているように、ApacheActiveMQサービスを有効にしてステータスを確認します。

# systemctl start activemq.service
# systemctl enable activemq.service
# systemctl status activemq.service

デフォルトでは、ActiveMQデーモンはポート61616でリッスンし、次のようにssユーティリティを使用してポートを確認できます。

# ss -ltpn 

ActiveMQ Webコンソールにアクセスする前に、firewalldサービスを実行している場合(デフォルトで実行されているはずです)、次に示すように、firewall-cmdツールを使用して、Webコンソールがファイアウォールでリッスンするポート8161を開く必要があります。

# firewall-cmd --zone=public --permanent --add-port=8161/tcp
# firewall-cmd --reload

ActiveMQインストールのテスト

ActiveMQ Webコンソールは、Webブラウザーを介してActiveMQを管理および監視するために使用されます。アクセスするには、Webブラウザーを開き、次のURLをポイントします。

http://localhost:8161
OR
http://SERVER_IP:8161

次のWebインターフェイスにアクセスします。

ActiveMQの実際の管理を開始するには、「ManagerActiveMQbroker」リンクをクリックして管理Webコンソールにログインします。または、次のURLを使用すると、管理Webコンソールのログインインターフェイスに直接アクセスできます。

http://localhost:8161/admin 
OR
http://SERVER_IP:8161/admin

次に、デフォルトのユーザー名adminとパスワードadminを使用してログインします。

次のスクリーンショットは、ActiveMQを管理および監視するためのさまざまな機能を備えたWebコンソールダッシュボードを示しています。

この記事では、CentOS8およびRHEL8Linuxディストリビューションに最新バージョンのApacheActiveMQをインストールする方法について説明しました。特にApacheActiveMQの使用方法について詳しく知りたい場合は、ActiveMQ5の公式ドキュメントをお読みください。以下のコメントフォームからフィードバックを送信することを忘れないでください。