rabbitmq集群操作與啟停

2022-02-21 04:49:37 字數 2686 閱讀 8314

二、啟動停止

三、重建集群

四 新增集群配置

以下操作都以三節點集群為例,機器名標記為機器a、機器b、機器c,如果為雙節點忽略機器c,如果為各多節點則與機器c操作相同

#編輯配置路徑 /etc/rabbitmq/rabbitmq-env.conf

node_ip_address=172.16.136.133

#配置檔案1所在路徑 /etc/rabbitmq/rabbitmq.config (如果是集群,每台機器都需要修改這個繫結本機實體ip)

#其中rabbit@master是建立集群時所配置的引數,@後面的引數為主機名,示例中為master

[ },,,

,,,,

,,]}]},,]}

].

#配置檔案2 所在路徑 /etc/hosts (如果是集群,每台機器都需要修改這個繫結本機實體ip,而且hosts檔案的對映不得重複,如果重複linux系統為以最下面一條記錄為準)

172.16

.136

.133 master

172.16

.136

.134 venus

172.16

.136

.135 venus2

#機器a

service rabbitmq stop

epmd -kill

#機器b

service rabbitmq stop

epmd -kill

#機器c

service rabbitmq stop

epmd -kill

#機器a

service rabbitmq start

#機器b

service rabbitmqstart

#機器c

service rabbitmqstart

#位於 /var/lib/rabbitmq/mensia

mv /var/lib/rabbitmq/mensia /var/lib/rabbitmq/mensia.bak

比如a、b、c三颱機器,將b和c加入到a中去,需要執行以下命令

#機器b

#機器c

#機器b

rabbitmqctl join_cluster rabbit@master

#機器c

rabbitmqctl join_cluster rabbit@master

#機器b

#機器c

在任意一台機器上執行rabbitmqctl cluster_status命令即可檢查,輸出包含集群中的節點與執行中的節點,兼以主機名標誌

例子中建立了兩個使用者

新增使用者add_user,設定角色set_user_tags,新增rabbitmq虛擬主機add_vhost,設定訪問許可權set_permissions,以下是詳細用法

# 建立第乙個使用者

/usr/sbin/rabbitmqctl add_user 使用者名稱 密碼

/usr/sbin/rabbitmqctl set_user_tags 使用者名稱 administrator

/usr/sbin/rabbitmqctl set_permissions -p / 使用者名稱 ".*"

".*"

".*"

# 建立第二個使用者

/usr/sbin/rabbitmqctl add_user 使用者名稱2 密碼

/usr/sbin/rabbitmqctl set_user_tags 使用者名稱2 management

/usr/sbin/rabbitmqctl add_vhost sip_ext

/usr/sbin/rabbitmqctl set_permissions -p sip_ext 使用者名稱2

'.*'

'.*'

'.*'

備註:rabbitmq 虛擬主機,rabbitmq 通過虛擬主機(vhost)來分發訊息。擁有自己獨立的許可權控制,不同的vhost之間是隔離的,單獨的。

許可權控制的基本單位:vhost。

使用者只能訪問與之繫結的vhost。

vhost是amqp中唯一無法通過協議來建立的基元。只能通過rabbitmqctl工具來建立。

如果覆蓋了使用者需要使用以下命令修改mq使用者密碼

/usr/sbin/rabbitmqctl change_password 使用者名稱 密碼

Kafka集群啟停指令碼

先登入root賬號再進行以下操作。首先需要先配置ssh免密登入,可參考linux ssh免密登入進行配置 1.建立並編輯指令碼 建立並賦予執行許可權 vim batch kafka.sh bin bash iparray node1 node2 node3 這裡我放的是網域名稱,也可以放ip位址 k...

rabbitmq集群節點操作

節點恢復過程中把資料刪掉很重要,恢復一單結點,再清資料 節點增加 1.rabbitmq server detached erlang.cooike的許可權,400 屬主rabbitmq 3.rabbitmqctl join cluster ram rabbit rabbitmq1 5.rabbitm...

RabbitMQ集群原理與部署

在專案中想要 rabbitmq 變得更加健壯,就要使得其變成高可用,所以我們要搭建乙個 rabbitmq 集群,這樣你可以從任何一台 rabbitmq 故障中得以倖免,並且應用程式能夠持續執行而不會發生阻塞。而 rabbitmq 本身是基於 erlang 編寫的,erlang 天生支援分布式 通過同...