RabbitMQは、Advanced Message Queuing Protocol(AMQP)を実装するオープンソースのメッセージブローカーソフトウェアです。 RabbitMQは、パブリッシャー(メッセージを公開するアプリケーション)からメッセージを受信し、それらをコンシューマー(メッセージを処理するアプリケーション)にルーティングすることで機能します。
関連コンテンツ
- Fedora35にErlangをインストールする方法
- Rocky Linux / Alma Linux /CentOS8にErlangをインストールする方法
- Rocky Linux /Centos8にEPELリポジトリをインストールして有効にする方法
前提条件
フォローするには、次のものがあることを確認してください
- 更新されたFedora35サーバー
- インターネットへのアクセス
- 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 fedora/34.
Checking for curl...
Detected curl...
Downloading repository file: https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/config_file.repo?os=fedora&dist=34&source=script
done.
Installing pygpgme to verify GPG signatures...
rabbitmq_erlang 3.2 kB/s | 951 B 00:00
rabbitmq_erlang-source 4.5 kB/s | 951 B 00:00
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 393 B/s | 296 B 00:00
No match for argument: pygpgme
Error: Unable to find a match: pygpgme
WARNING:
The pygpgme package could not be installed. This means GPG verification is not possible for any RPM installed on your system.
To fix this, add a repository with pygpgme. Usualy, the EPEL repository for your system will have this.
More information: https://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F
Installing yum-utils...
rabbitmq_rabbitmq-server-source 4.6 kB/s | 951 B 00:00
Package dnf-utils-4.0.24-1.fc34.noarch is already installed.
Dependencies resolved.
Nothing to do.
Complete!
WARNING:
The yum-utils package could not be installed. This means you may not be able to install source RPMs or use other yum features.
Generating yum cache for rabbitmq_rabbitmq-server...
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.8.23 Release : 1.fc34 Architecture: x86_64 Install Date: Fri 12 Nov 2021 07:14:47 PM UTC Group : Unspecified Size : 16503697 License : MPLv1.1 Signature : RSA/SHA256, Wed 20 Oct 2021 03:42:27 PM UTC, Key ID 1161ae6945719a39 Source RPM : rabbitmq-server-3.8.23-1.fc34.src.rpm Build Date : Wed 20 Oct 2021 03:16:35 PM UTC Build Host : buildvm-x86-11.iad2.fedoraproject.org Packager : Fedora Project Vendor : Fedora Project URL : https://www.rabbitmq.com/ Bug URL : https://bugz.fedoraproject.org/rabbitmq-server Summary : The RabbitMQ server Description : RabbitMQ is an implementation of AMQP, the emerging standard for high performance enterprise messaging. The RabbitMQ server is a robust and scalable implementation of an AMQP 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 Fri 2021-11-12 19:15:12 UTC; 2s ago
Main PID: 67336 (beam.smp)
Status: "Initialized"
Tasks: 23 (limit: 4603)
Memory: 93.1M
CPU: 7.581s
CGroup: /system.slice/rabbitmq-server.service
├─67336 /usr/lib64/erlang/erts-11.2.2.7/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 -sbw>
├─67345 erl_child_setup 1024
├─67387 inet_gethost 4
└─67388 inet_gethost 4
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]: TLS Library: OpenSSL - OpenSSL 1.1.1l FIPS 24 Aug 2021
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]: Doc guides: https://rabbitmq.com/documentation.html
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]: Support: https://rabbitmq.com/contact.html
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]: Tutorials: https://rabbitmq.com/getstarted.html
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]: Monitoring: https://rabbitmq.com/monitoring.html
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]: Logs: /var/log/rabbitmq/[email protected]
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]: /var/log/rabbitmq/[email protected]_upgrade.log
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]: Config file(s): /etc/rabbitmq/rabbitmq.conf
Nov 12 19:15:12 cloudsrv.citizix.com rabbitmq-server[67336]: Starting broker... completed with 0 plugins.
Nov 12 19:15:12 cloudsrv.citizix.com 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
$ ss -tunlp | grep 15672
tcp LISTEN 0 1024 0.0.0.0:15672 0.0.0.0:*
URL http://[server IP]:15672
を開いてアクセスします http://127.0.0.1:15672
デフォルトでは、ゲスト ユーザーが存在し、localhost
からのみ接続できます 。このユーザーは、パスワード「guest」を使用してローカルでログインできます。
ネットワークにログインできるようにするには、次のような管理者ユーザーを作成します。
$ sudo rabbitmqctl add_user admin Secr3t 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をインストールすることができました