Apache ActiveMQは、Javaで記述された広く使用されているメッセージングサーバーです。メッセージングサービスが一般的に行うように、プロデューサークライアントによってキューにプッシュされ、コンシューマークライアントによって「読み取られる」または消費されるのを待つメッセージの形式で、信頼性の高いデータ交換のための異種システム間のブリッジを作成します。
当然、ActiveMQのクライアントであるシステムは、プロデューサーとコンシューマーの両方である可能性があり、複数のシステムがキューまたはトピックにサブスクライブできるため、これらのクライアントシステム間の柔軟な通信が可能になります。多くの異なるプラットフォームとプロトコルを使用してActiveMQに接続できるため、ActiveMQの有用性がさらに高まります。
このチュートリアルでは、tarballからRed Hat Enterprise Linux8にApacheActiveMQをインストールし、systemd
を追加します。 使いやすいようにユニットファイルを作成し、新しいサービスの管理ページにアクセスしてキューを作成します。
このチュートリアルでは、次のことを学びます。
- tarballからActiveMQをインストールする方法
- コマンドラインから環境を設定する方法
- ActiveMQのsystemdユニットファイルを追加する方法
- 管理ページにアクセスする方法
RHEL8のApacheActiveMQウェルカムページ
使用されるソフトウェア要件と規則
カテゴリ | 使用する要件、規則、またはソフトウェアバージョン |
---|---|
Red Hat Enterprise Linux 8 | |
Apache ActiveMQ 5.15.8 | |
rootまたはsudo を介したLinuxシステムへの特権アクセス コマンド。 | |
# –指定されたLinuxコマンドは、rootユーザーとして直接、またはsudo を使用して、root権限で実行する必要があります。 コマンド$ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります |
ActivemqをRedhat8にインストールする方法ステップバイステップの説明
Apache ActiveMQには、動作するJava 8のインストールが必要であり、それ以上のものは必要ありません。メッセージはディスクに保持されるため、適切なスペースが必要であることに注意してください。このチュートリアルでは、サーバーに実際の負荷をかけません。作成するキューは空になるため、スペースを消費しません。
- 必要なパッケージを見つけるには、リリースのホームページを確認してください。そこにURLがあり、
wget
に渡すことができます。 。/opt
の下にアプリケーションをインストールします ディレクトリなので、次のように入力します:# cd /opt
そして、ウェブサイトから取得したURLを使用してパッケージをダウンロードします:
# wget "http://www.apache.org/dyn/closer.cgi&filename=/activemq/5.15.8/apache-activemq-5.15.8-bin.tar.gz&action=download" -O apache-activemq-5.15.8-bin.tar.gz
このサイトは、最も近いミラー上のパッケージにリダイレクトするのに十分賢いですが、
wget
URLを処理するには二重引用符が必要であり、出力ファイルの名前は-O
で指定できます。 、ファイル名としてのURLを避けます。 - アーカイブをインプレースで抽出します:
# tar -xvf apache-activemq-5.15.8-bin.tar.gz
- よりユーザーフレンドリーな名前のシンボリックリンクを追加します:
# ln -s /opt/apache-activemq-5.15.8 /opt/activemq
- セキュリティ上の理由から、サービスを
root
として実行することはありません。 (必要がない場合は、rootとして実行する必要はありません)。ユーザーactivemq
を作成します 、サービスはその名前で実行されます:# useradd activemq
- この新しいユーザーを、抽出されたパッケージのコンテンツの所有者として再帰的に設定します。
# chown -R activemq:activemq apache-activemq-5.15.8*
- ユニットファイル
/etc/systemd/system/activemq.service
を作成します 、サービスの定義を保持します:[Unit] Description=Apache ActiveMQ After=network.target [Service] Type=forking User=activemq Group=activemq ExecStart=/opt/activemq/bin/activemq start ExecStop=/opt/activemq/bin/activemq stop [Install] WantedBy=multi-user.target
-
systemd
をリロードする必要があります 新しいサービスに気付くには:# systemctl daemon-reload
- これからは、開始、停止、ステータスの取得を管理できます:
# systemctl start|stop|status activemq
- このサービスを定期的に使用する場合は、
systemd
を注文できます。 起動するたびにサービスを開始するには:# systemctl enable activemq
- すべてが正常に機能していることを確認するために、サービスを開始した後、ログファイル(
/opt/activemq/data/activemq.log
)を確認できます。 私たちの場合には。このファイルには、ブラウザで到達可能であることを示すエントリがあります。2019-01-15 15:59:14,359 | INFO | ActiveMQ WebConsole available at http://0.0.0.0:8161/ | org.apache.activemq.web.WebConsoleStarter | main
- ポート
8161
ActiveMQのデフォルトのポートです。マシンがファイアウォールを実行している場合、WebConsoleにアクセスするには、このポートを開く必要があります。# firewall-cmd --zone=public --add-port=8161/tcp --permanent success # firewall-cmd --reload success
- これで、ブラウザでマシンのホスト名またはIPアドレス(ポート8161)を指定し、URLに
/admin
を追加することで、ActiveMQWebConsoleにアクセスできます。 、ウェルカムページといくつかのリンク以上のものを表示します。 ApacheActiveMQコンソールページ。このページには認証が必要です。デフォルトの構成を変更しなかったため、デフォルトのユーザー名とパスワードが何であるかを推測できます。ヒント:admin/adminを試してみましょう。
- ActiveMQサーバーが稼働しており、WebConsoleから管理できます。たとえば、[キュー]リンクをクリックすると、キューを作成できます(下の画像では空です)。 ActiveMQキューは、キューの例とともにリストされます。
ActiveMQサーバーへのクライアントの接続を開始し、必要に応じてキューに入れてコンシューマーに転送するメッセージをサーバーに提供できます。