RabbitMQ je open source software pro zprostředkovatele zpráv, který implementuje Advanced Message Queuing Protocol (AMQP). RabbitMQ funguje tak, že přijímá zprávy od vydavatelů (aplikace, které je publikují) a směruje je ke spotřebitelům (aplikace, které je zpracovávají).
Související obsah
- Jak nainstalovat Erlang na Rocky Linux/Alma Linux/CentOS 8
- Jak nainstalovat a povolit úložiště EPEL na Rocky Linux/Centos 8
- Jak nainstalovat RabbitMQ do Fedory 35
- Jak nainstalovat Erlang na Fedoru 35
Předpoklady
Chcete-li pokračovat, ujistěte se, že máte následující
- Aktualizovaný server Rocky Linux/Centos 8
- Přístup k internetu
- Přístup root nebo uživatel s přístupem Sudo
Obsah
- Aktualizace systému
- Přidání úložiště PackageCloud Yum
- Instalace Erlang
- Instalace RabbitMQ
- Spuštění a povolení služby rabbitmq-server
- Volitelné:Aktivace ovládacího panelu RabbitMQ
- Základní příkazy správy uživatelů RabbitMQ
1. Aktualizace systému
Než budete pokračovat, ujistěte se, že serverové balíčky jsou aktuální. K tomu použijte tento příkaz:
sudo dnf -y update
2. Přidání úložiště PackageCloud Yum
Balíček RabbitMQ je distribuován prostřednictvím úložišť Yum na PackageCloud. Nainstalujte úložiště PackageCloud Yum pomocí tohoto příkazu:
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
Toto je výstup na mém serveru:
$ 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. Instalace Erlang
RabbitMQ vyžaduje ke spuštění Erlang/OTP. Projekt rabbitmq/erlang-rpm poskytuje 64bitový balíček Erlang RPM s nulovou závislostí, který poskytuje tak akorát ke spuštění RabbitMQ . Získejte nejnovější verze zde 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
Poté nainstalujte stažený soubor
sudo dnf install ./erlang-24.1.4-1.el8.x86_64.rpm
Toto je výstup na mém serveru
$ 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. Instalace Rabbitmq
Jakmile nakonfigurujete úložiště RabbitMQ, nainstalujte RabbitMQ Server pomocí příkazů níže.
sudo dnf install -y rabbitmq-server
Podrobnosti o balíčku lze zjistit pomocí rpm
příkaz s volbou -qi
.
$ rpm -qi rabbitmq-serverName :rabbitmq-serverVersion :3.9.9Release :1.el8Architecture:noarchInstall Date:Thu 11 Nov 2021 07:00:01 PM UTCGroup :Development:Development/Libraries and 1900:01 PM Podpis ASL 2.0 a BSDS:RSA/SHA512, Čt 11. listopadu 2021 14:33:37 PM UTC, ID klíče 6b73a36e6026dfca Zdroj RPM:králičímq-server-3.9.9-1.el8.src.11 2. listopadu 2021.el8.src.rpm Bu :35 PM UTCBuild Host:d4cd7bb3-d581-4bc0-6514-d4dc9ef3ea72Relocations:(nelze přemístit)URL:https://www.rabbitmq.com/Summary:The Rabbit5. Spuštění a povolení služby rabbitmq-server
Spusťte službu
sudo systemctl start rabbitmq-server
Poté zkontrolujte stav a potvrďte jeho spuštění
$ 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.
Nyní jej můžete povolit při spouštění
sudo systemctl enable rabbitmq-server
Můžete získat stav vnitřních částí králíkamq:
$ sudo rabbitmqctl status
6. Volitelné:Povolení ovládacího panelu RabbitMQ
Použijte
rabbitmq-plugins enable
příkaz pro aktivaci řídicího panelu:$ 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.
Webová služba naslouchá na portu 15672
$ ss -tunlp | grep 15672 tcp LISTEN 0 128 0.0.0.0:15672 0.0.0.0:*
Pokud máte aktivní službu Firewalld, povolte porty
5672
a15672
sudo firewall-cmd --add-port={5672,15672}/tcp --permanent sudo firewall-cmd --reload
Přístup k němu získáte otevřením adresy URL
http://[server IP]:15672
jako http://127.0.0.1:15672Ve výchozím nastavení host uživatel existuje a může se připojit pouze z
localhost
. S tímto uživatelem se můžete místně přihlásit pomocí hesla „host“Abyste se mohli přihlásit do sítě, vytvořte si administrátora jako níže:
$ sudo rabbitmqctl add_user admin Sec3tPřidání uživatele "admin" ...Hotovo. Nezapomeňte udělit uživatelská oprávnění některým virtuálním hostitelům! Viz 'rabbitmqctl help set_permissions', kde se dozvíte více.$ sudo rabbitmqctl set_user_tags admin administratorNastavení značek pro uživatele "admin" na [administrator] ...Přihlaste se pomocí tohoto administrátorského uživatelského jména a přiděleného hesla. Měli byste vidět rozhraní podobné níže:
Chcete-li použít
rabbitmqadmin
nástroj příkazového řádku, zkopírujte jej do své $PATH.instalace sudo dnf -y mlocatesudo updatedbsudo cp `locate rabbitmqadmin` /usr/local/bin/rabbitmqadminsudo chmod +x /usr/local/bin/rabbitmqadminMusíte mít
python
nainstalován a nakonfigurován pro spuštění králičímqadmin. Pomocí tohoto příkazu se ujistěte, že je nainstalován python:sudo dnf install -y python3
7. Základní příkazy správy uživatelů RabbitMQ
Smazat uživatele:
uživatel sudo rabbitmqctl delete_userZměnit uživatelské heslo:
sudo rabbitmqctl change_password user strongpasswordVytvořit nový virtuální hostitel:
sudo rabbitmqctl add_vhost /my_vhostSeznam dostupných virtuálních hostitelů:
sudo rabbitmqctl list_vhostsSmazání virtuálního hostitele:
sudo rabbitmqctl delete_vhost /myvhostUdělte uživatelská oprávnění pro vhost:
sudo rabbitmqctl set_permissions -p /myvhost user ".*" ".*" ".*"Seznam oprávnění vhost:
sudo rabbitmqctl list_permissions -p /myvhostSeznam uživatelských oprávnění:
uživatel rabbitmqctl list_user_permissionsSmazat uživatelská oprávnění:
rabbitmqctl clear_permissions -p /myvhost userZávěr
Podařilo se nám nainstalovat Rabbitmq v této příručce
Jak nainstalovat Erlang na Rocky Linux/Alma Linux/CentOS 8 Jak nainstalovat a povolit úložiště EPEL na Rocky Linux/Centos 8Cent OS