Apache ActiveMQは、Javaで記述されたオープンソースのメッセージブローカーです。いくつかの言語間クライアントとプロトコルをサポートしています。
Apache ActiveMQメッセージブローカーは、多数のメッセージ(取り込み)または多数のコンシューマー(ディスパッチ)を処理するための、高速で信頼性が高く、スケーラブルで、完全に統合されたオープンソースメッセージングプラットフォームです。ストレージ形式としてメモリを使用します。必要に応じて、データをディスクに永続的に保存するように構成できます。 ActiveMQがすべての履歴情報をメモリにロードするため、初期起動時間が遅くなる可能性があります。ただし、最初の起動期間(キューに保存した履歴の量やその他の構成設定によっては最大で数分かかる場合があります)の後、システムリソースなどの他の要因を考慮するまで、パフォーマンスは大幅に向上し始めます。
ActiveMQは、社内のメッセージングソリューションから商用製品に移行した経験に基づいており、絶えず開発および改善され、非常に高品質で安定した安定性を提供する製品の1つと見なすことができます。
>ActiveMQは、単純な組み込みブローカーと、完全にデプロイされた高可用性エンタープライズソリューションの両方を提供します。その最も重要な機能と長所は、高可用性とフェイルオーバー(1つのブローカーでのセットアップはメッセージ損失の最大99.999%に耐えることができます)、クライアントを接続する多くの方法(Webコンソール、コマンドラインツール、ライブラリ、JMSクライアントを含む)のサポートです。ライブラリなど)、物理的な境界を越えたクラスタリング、トピックごとの複数の内部キューによる負荷分散、必要に応じた永続的または非永続的なメッセージなどの柔軟な構成、ファイルまたはデータベースによるデータの永続化、JAAS認証に基づくセキュリティの実装LDAP実装もサポートするモデル。
ActiveMQは、Java開発者、インフラストラクチャアーキテクト、およびシステムインテグレーターにとって本当に好ましいメッセージングソリューションです。小規模な展開(この場合、おそらく組み込みブローカーを使用する)または大規模なエンタープライズソリューション(クラスタリングとフェイルオーバーが必要)の両方で使用できます。
ニーズに応じて、ActiveMQは、既存のノードがダウンしたときに新しいノードを動的に追加するなど、すべてのブローカー間で完全な負荷分散を行う実際の高可用性シナリオに簡単にスケールアウトできます。自動再同期と潜在的なデータ損失(常に可能)を備えたステートフルフェイルオーバー。ActiveMQ自体によって完全にサポートされています。高可用性のためにクラスターに構成する必要があるもう2つのノードです。
Apache ActiveMQはクロスプラットフォームであり、Java仮想マシン(JVM)で実行されます。 Linux、Windows、またはOSXのいずれかでActiveMQを使用できます。
このガイドでは、Ubuntu 20.04LTSでのApacheActiveMQの基本的なインストールとセットアップ、および基本的な構成と検証テストについて説明します。
始めましょう!
前提条件
ガイドと連携するには、次のものが必要です。
- ActiveMQを実行するためのUbuntuLinuxボックス。これは、物理サーバーまたは仮想マシンである可能性があります。重要なのは、JVMを実行でき、少なくとも2GBのRAMと20GBのディスク容量があることです。 ActiveMQベンチマーク、データベースサーバー、ロギングツールなどの他のサービスの実行など、ニーズに応じてそれ以上を割り当てる必要があります。
- 実行中のUbuntuボックスへのrootアクセス。
システムの更新
パッケージをインストールする前に、システムが最新であることを確認することが重要です。次のコマンドを実行して、システムを更新します。
sudo apt update && sudo apt upgrade -y
次のコマンドを使用して、このチュートリアルに必要な追加のツールをインストールすることもできます。
sudo apt install wget curl ia32-libs -y
Javaのインストール
Apache ActiveMQはJavaで記述されているため、マシンにJavaランタイム環境(JRE)をインストールする必要があります。次のコマンドを使用してインストールできます。
sudo apt install openjdk-11-jre -y
インストールが完了したら、-versionフラグを指定してjavaコマンドを実行し、正しく機能しているかどうかを確認します。
java -version
出力は次のようになります。
ApacheActiveMQのインストール
実行中のシステムとJRE環境ができたので、ApacheActiveMQのダウンロードとインストールに進むことができます。
まず、ActiveMQの公式Webサイトから最新リリースをダウンロードする必要があります。
この記事を書いている時点での最新バージョンであるapache-activemq-5.16.3-bin.tar.gzというラベルの付いたtarballが必要です。
wgetコマンドを実行してダウンロードします。
wget http://archive.apache.org/dist/activemq/5.16.3/apache-activemq-5.16.3-bin.tar.gz
アーカイブをダウンロードしているので、次のコマンドを使用してファイルを抽出します。これにより、コンテンツが「apache-activemq-」というディレクトリに抽出されます。これにより、ActiveMQがシステムにインストールされます。
sudo tar -xvzf apache-activemq-5.16.3-bin.tar.gz
次に、/ opt / activemqという名前の新しいディレクトリを作成し、以下のコマンドを実行して、すべてのファイルをapache-activemqからそのディレクトリに移動します
sudo mkdir /opt/activemq && sudo mv apache-activemq-5.16.3/* /opt/activemq
その後、ActiveMQを実行するための専用のユーザーアカウントとグループアカウントを作成します。この目的のために専用ユーザーを作成することをお勧めしますが、必要と思われるシステムに変更を加えることができます。
次のコマンドを使用して、必要なグループアカウントとユーザーアカウントを作成します。
sudo addgroup --quiet --system activemq sudo adduser --quiet --system --ingroup activemq --no-create-home --disabled-password activemq
rootユーザーではなく、/ opt /ディレクトリへの書き込み権限がない場合は、sudo chown -R
sudo chown -R activemq:activemq /opt/activemq
次に、次のコマンドを実行して、ApacheActiveMQSystemdサービスユニットファイルを作成する必要があります。これにより、毎回手動でディレクトリに移動しなくても、サービスを簡単に開始、停止、再起動できるためです。
sudo nano /etc/systemd/system/activemq.service
Nanoは、ターミナルセッションでエディタウィンドウを開き、ファイルの内容を空にして編集できます。次の構成をnanoで入力します。 JAVA_HOMEプロパティを設定するときに、activemqをユーザー名に置き換えます。
[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
完了したら、CTRL + X、Y、Enterを押してファイルを保存します。
次に、システムデーモンをリロードし、次のコマンドを実行してサービスを開始します。
sudo systemctl daemon-reload && sudo systemctl start activemq
sudo systemctl enable activemq
このコマンドを使用してサービスが正常に実行されているかどうかを確認するには、サービスのステータスを確認します。
sudo systemctl status activemq
正常に動作している場合、出力は次のようになります。
Apache ActiveMQWebUIへのアクセス
サービスが稼働しているので、Webブラウザを使用して便利にアクセスできます。お気に入りのブラウザを開き、http:// server_ip:8161/adminにアクセスします。
ここで、server_ipはサーバーの実際のIPアドレスです。デフォルトでは、ActiveMQはポート8161にWeb UIをインストールし、/adminは管理コンソールにアクセスするためのものです。
以下に示すように、ユーザー名とパスワードの入力を求めるパスワードプロンプトが表示されます。
両方のフィールドにデフォルトのユーザー名とパスワード(「admin」)を入力し、サインインをクリックします。 。ログインすると、以下に示すように、ApacheActiveMQ管理コンソールが表示されます。
それでおしまい!これで、デーモン、Web UI、およびSystemdサービスを使用してUbuntu20.04サーバーにApacheActiveMQが正常にインストールされました。
結論
さて、このチュートリアルは以上です。 Ubuntu20.04サーバーにApacheActiveMQが正常にインストールされました。
これで、Apache ActiveMQを利用して、大量のメッセージ配信用の軽量のエンタープライズメッセージングシステムを作成できます。