RabbitMQサーバーの展開

1.はじめに
RabbitMQ自体はErlangに基づいて記述されています。Erlang言語は本質的に分散されています(Erlangクラスターの各ノードのerlang.cookieを同期することによって実装されます)。したがって、RabbitMQは当然クラスターをサポートします。RabbitMQは、Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMPなどのさまざまなクライアントをサポートし、AJAXをサポートするオープンソースのAMQP実装です。分散システムでメッセージを保存および転送するために使用され、使いやすさ、スケーラビリティ、および高可用性の点で優れたパフォーマンスを発揮します。
2.インストールと構成
1.epel
wget -O / etc / yum.repos.d / epel.repoを構成しますhttp://mirrors.aliyun.com/repo/epel-7.repo2。erlang yum install -y erlangsocatをインストールし
ます3.ダウンロードRabbitMQのwgetのhttps://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server-3.6.10-1.el7.noarch.rpm 4.インストールRPM -ivhのRabbitMQ、サーバ- 3.6.10-1.el7.noarch.rpm5 。サービスを開始しますsystemctlstartrabbitmq-server systemctl enablerabbitmq-server 6.Web管理インターフェイスを開きます









rabbitmq-pluginsはrabbitmq_managementを有効にします
7.検証
アドレス:http//172.16.120.101 15672 /
ユーザー:ゲスト
パスワード:ゲスト
RabbitMQサーバーの展開

3、クラスター展開
1.環境の説明

オペレーティング・システム IPアドレス CPU名
CentOS-7.2 172.16.120.101 mq-disc-01
CentOS-7.2 172.16.120.102 mq-disc-02
CentOS-7.2 172.16.120.103 mq-ram-01

注:クラスターには、メモリノード/ディスクノードの2種類のノードがあります
。2。ホストを構成します
vim / etc / hosts

172.16.120.101 mq-disc-01
172.16.120.102 mq-disc-02
172.16.120.103 mq-ram-01

3.インストール
プロセスについては、上記を参照してください。4.Cookie
ファイルを同期します
。cd/ var / lib / rabbitmq /
scp .erlang.cookie 172.16.120.102:/var/lib/rabbitmq
scp .erlang.cookie 172.16.120.103:/ var / lib / rabbitmq
注:ファイルのアクセス許可は400で、所有者とグループはrabbitmq
5です。mq -disc-01をメインノードとして、他の2台のマシンで
rabbitmqctl
stop_apprabbitmqctl join_clusterrabbit @ mq-disc-
01rabbitmqctlstart_appを実行します
。メモリノード
rabbitmqctlchange_cluster_node_type ram7
。クラスターステータスの表示
rabbitmqctlcluster_status8
。すべてのノードを自動的に同期するようにポリシーを設定します
rabbitmqctlset_policy ha-all "^" '{"ha-mode": "all"、 "ha-sync-mode": "自動 "} '
9。ポリシーを表示する
rabbitmqctllist_policies
4.一般的なコマンド
#現在のすべてのユーザーを表示する
rabbitmqctl list_users#
ユーザーを削除する
rabbitmqctl delete_user guest#
ユーザーの
追加rabbitmqctl add_user admin passwd#
ユーザータグの
設定rabbitmqctl set_user_tags管理者管理者#
デフォルトのvhostの完全な操作権限を
ユーザーに付与rabbitmqctl set_permissions -p / username“。”“。 ”“。*”
ユーザー権限の
表示rabbitmqctl list_user_permissions list_user_tags username
キューを
生成rabbitmqadmin宣言キュー名=テスト耐久性= true
メッセージを
生成rabbitmqadminpublishrouting_key = testpayload = "これはテストです"
キューを
表示rabbitmqadminリストキュー#コンシューマー
メッセージ
rabbitmqadmin get queue = test requeue = true
キューを
削除rabbitmqadmin -qキュー名の削除=テスト

おすすめ

転載: blog.51cto.com/7965676/2597285