RabbitMQは、Advanced Message Queuing Protocol(AMQP)を実装するオープンソースのメッセージブローカーソフトウェアです。 RabbitMQは、パブリッシャー(メッセージを公開するアプリケーション)からメッセージを受信し、それらをコンシューマー(メッセージを処理するアプリケーション)にルーティングすることで機能します。
関連コンテンツ
- Rocky Linux / Alma Linux /CentOS8にErlangをインストールする方法
- Rocky Linux /Centos8にEPELリポジトリをインストールして有効にする方法
- Fedora35にRabbitMQをインストールする方法
- Fedora35にErlangをインストールする方法
前提条件
フォローするには、次のものがあることを確認してください
- 更新されたRockyLinux/Centos8サーバー
- インターネットへのアクセス
- rootアクセスまたはSudoアクセスを持つユーザー
目次
- システムの更新
- PackageCloudYumリポジトリの追加
- Erlangのインストール
- RabbitMQのインストール
- rabbitmq-serverサービスの開始と有効化
- オプション:RabbitMQダッシュボードの有効化
- 基本的なRabbitMQユーザー管理コマンド
1。システムの更新
続行する前に、サーバーパッケージが最新であることを確認してください。これを実現するには、次のコマンドを使用します。
sudo dnf -y update
2。 PackageCloudYumリポジトリの追加
RabbitMQパッケージは、PackageCloud上のYumリポジトリを介して配布されます。次のコマンドを使用してPackageCloudYumリポジトリをインストールします:
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
これは私のサーバーの出力です:
$ curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
Detected operating system as rocky/8.
Checking for curl...
Detected curl...
Downloading repository file: https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/config_file.repo?os=rocky&dist=8&source=script
done.
Installing yum-utils...
rabbitmq_rabbitmq-server-source 1.4 kB/s | 819 B 00:00
rabbitmq_rabbitmq-server-source 23 kB/s | 3.9 kB 00:00
Importing GPG key 0x4D206F89:
Userid : "https://packagecloud.io/rabbitmq/rabbitmq-server (https://packagecloud.io/docs#gpg_signing) <[email protected]>"
Fingerprint: 8C69 5B02 19AF DEB0 4A05 8ED8 F4E7 8920 4D20 6F89
From : https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
rabbitmq_rabbitmq-server-source 398 B/s | 296 B 00:00
Package yum-utils-4.0.18-4.el8.noarch is already installed.
Dependencies resolved.
Nothing to do.
Complete!
Generating yum cache for rabbitmq_rabbitmq-server...
Importing GPG key 0x4D206F89:
Userid : "https://packagecloud.io/rabbitmq/rabbitmq-server (https://packagecloud.io/docs#gpg_signing) <[email protected]>"
Fingerprint: 8C69 5B02 19AF DEB0 4A05 8ED8 F4E7 8920 4D20 6F89
From : https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
Generating yum cache for rabbitmq_rabbitmq-server-source...
The repository is setup! You can now install packages.
3。 Erlangのインストール
RabbitMQを実行するにはErlang/OTPが必要です。 rabbitmq / erlang-rpmプロジェクトは、依存関係がゼロの64ビットErlang RPMパッケージを提供し、RabbitMQを実行するのに十分を提供します。 。こちらのリリースから最新情報を入手してくださいhttps://github.com/rabbitmq/erlang-rpm/releases。
curl -LO -C - https://github.com/rabbitmq/erlang-rpm/releases/download/v24.1.4/erlang-24.1.4-1.el8.x86_64.rpm
次に、ダウンロードしたファイルをインストールします
sudo dnf install ./erlang-24.1.4-1.el8.x86_64.rpm
これは私のサーバーの出力です
$ sudo dnf install ./erlang-24.1.4-1.el8.x86_64.rpm
rabbitmq_rabbitmq-server 1.3 kB/s | 833 B 00:00
rabbitmq_rabbitmq-server-source 1.6 kB/s | 819 B 00:00
Dependencies resolved.
=====================================================================================================
Package Architecture Version Repository Size
=====================================================================================================
Installing:
erlang x86_64 24.1.4-1.el8 @commandline 20 M
Transaction Summary
=====================================================================================================
Install 1 Package
Total size: 20 M
Installed size: 36 M
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : erlang-24.1.4-1.el8.x86_64 1/1
Running scriptlet: erlang-24.1.4-1.el8.x86_64 1/1
Verifying : erlang-24.1.4-1.el8.x86_64 1/1
Installed:
erlang-24.1.4-1.el8.x86_64
Complete!
4。 Rabbitmqのインストール
RabbitMQリポジトリを構成したら、以下のコマンドを使用してRabbitMQサーバーをインストールします。
sudo dnf install -y rabbitmq-server
パッケージの詳細は、rpm
を使用して照会できます オプション -qi
を指定したコマンド 。
$ rpm -qi rabbitmq-server Name : rabbitmq-server Version : 3.9.9 Release : 1.el8 Architecture: noarch Install Date: Thu 11 Nov 2021 07:00:01 PM UTC Group : Development/Libraries Size : 19373970 License : MPLv2.0 and MIT and ASL 2.0 and BSD Signature : RSA/SHA512, Thu 11 Nov 2021 02:33:37 PM UTC, Key ID 6b73a36e6026dfca Source RPM : rabbitmq-server-3.9.9-1.el8.src.rpm Build Date : Thu 11 Nov 2021 02:33:35 PM UTC Build Host : d4cd7bb3-d581-4bc0-6514-d4dc9ef3ea72 Relocations : (not relocatable) URL : https://www.rabbitmq.com/ Summary : The RabbitMQ server Description : RabbitMQ is an open source multi-protocol messaging broker.
5。 rabbitmq-serverサービスの開始と有効化
サービスを開始する
sudo systemctl start rabbitmq-server
次に、ステータスをチェックして実行中であることを確認します
$ sudo systemctl status rabbitmq-server
● rabbitmq-server.service - RabbitMQ broker
Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; disabled; vendor preset: disabled)
Active: active (running) since Thu 2021-11-11 19:01:51 UTC; 28s ago
Main PID: 76165 (beam.smp)
Tasks: 24 (limit: 23167)
Memory: 95.7M
CGroup: /system.slice/rabbitmq-server.service
├─76165 /usr/lib64/erlang/erts-12.1.4/bin/beam.smp -W w -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -sbwt none -sbwt>
├─76180 erl_child_setup 32768
├─76203 /usr/lib64/erlang/erts-12.1.4/bin/epmd -daemon
├─76224 inet_gethost 4
└─76225 inet_gethost 4
Nov 11 19:01:49 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: Doc guides: https://rabbitmq.com/documentation.html
Nov 11 19:01:49 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: Support: https://rabbitmq.com/contact.html
Nov 11 19:01:49 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: Tutorials: https://rabbitmq.com/getstarted.html
Nov 11 19:01:49 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: Monitoring: https://rabbitmq.com/monitoring.html
Nov 11 19:01:49 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: Logs: /var/log/rabbitmq/[email protected]
Nov 11 19:01:49 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: /var/log/rabbitmq/[email protected]_upgrade.log
Nov 11 19:01:49 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: <stdout>
Nov 11 19:01:49 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: Config file(s): (none)
Nov 11 19:01:51 ip-10-2-40-72.us-west-2.compute.internal rabbitmq-server[76165]: Starting broker... completed with 0 plugins.
Nov 11 19:01:51 ip-10-2-40-72.us-west-2.compute.internal systemd[1]: Started RabbitMQ broker.
これで、起動時に有効にできます
sudo systemctl enable rabbitmq-server
あなたはrabbitmq内部のステータスを得ることができます:
$ sudo rabbitmqctl status
6。オプション:RabbitMQダッシュボードの有効化
rabbitmq-plugins enable
を使用します 管理ダッシュボードを有効にするコマンド:
$ sudo rabbitmq-plugins enable rabbitmq_management
Enabling plugins on node [email protected]:
rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
Applying plugin configuration to [email protected]
The following plugins have been enabled:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
started 3 plugins.
Webサービスはポート15672でアップリッスンしています
$ ss -tunlp | grep 15672
tcp LISTEN 0 128 0.0.0.0:15672 0.0.0.0:*
アクティブなFirewalldサービスがある場合は、ポートを許可します5672
および15672
sudo firewall-cmd --add-port={5672,15672}/tcp --permanent
sudo firewall-cmd --reload
URL http://[server IP]:15672
を開いてアクセスします http://127.0.0.1:15672
デフォルトでは、ゲスト ユーザーが存在し、localhost
からのみ接続できます 。このユーザーは、パスワード「guest」を使用してローカルでログインできます。
ネットワークにログインできるようにするには、次のような管理者ユーザーを作成します。
$ sudo rabbitmqctl add_user admin Sec3t Adding user "admin" ... Done. Don't forget to grant the user permissions to some virtual hosts! See 'rabbitmqctl help set_permissions' to learn more. $ sudo rabbitmqctl set_user_tags admin administrator Setting tags for user "admin" to [administrator] ...
この管理者のユーザー名と割り当てられたパスワードでログインします。以下のようなインターフェースが表示されます:

rabbitmqadmin
を使用するには コマンドラインツールを使用して、$PATHにコピーします。
sudo dnf install -y mlocate sudo updatedb sudo cp `locate rabbitmqadmin` /usr/local/bin/rabbitmqadmin sudo chmod +x /usr/local/bin/rabbitmqadmin
python
が必要です インストールされ、rabbitmqadminを実行するように構成されています。次のコマンドを使用して、Pythonがインストールされていることを確認します。
sudo dnf install -y python3
7。基本的なRabbitMQユーザー管理コマンド
ユーザーの削除:
sudo rabbitmqctl delete_user user
ユーザーパスワードの変更:
sudo rabbitmqctl change_password user strongpassword
新しい仮想ホストを作成します:
sudo rabbitmqctl add_vhost /my_vhost
利用可能な仮想ホストのリスト:
sudo rabbitmqctl list_vhosts
仮想ホストを削除します:
sudo rabbitmqctl delete_vhost /myvhost
vhostのユーザー権限を付与する:
sudo rabbitmqctl set_permissions -p /myvhost user ".*" ".*" ".*"
仮想ホストの権限を一覧表示する:
sudo rabbitmqctl list_permissions -p /myvhost
ユーザー権限を一覧表示するには:
rabbitmqctl list_user_permissions user
ユーザー権限を削除する:
rabbitmqctl clear_permissions -p /myvhost user
結論
このガイドでRabbitmqをインストールすることができました