1. 程式人生 > >RabbitMQ通過shovel外掛遷移資料

RabbitMQ通過shovel外掛遷移資料

前言

生產環境中會遇到RabbitMQ資料遷移的場景,例如:切換雲服務廠商、不同Region之間資料遷移、新搭建RabbitMQ例項,資料需要同步至新的RabbitMQ例項。

 

前提條件:

源RabbitMQ例項打開了shovel外掛。

目的RabbitMQ例項打開了shovel外掛。

源例項與目的例項能夠網路互通。

 

當前以華為雲不同Region下RabbitMQ例項資料遷移為例子。已在華為雲北京Region、上海Region各建立一個叢集例項。現在需要將上海Region的資料遷移至北京Region。

 

操作步驟

1、上海Region、北京Region例項都開啟Shovel外掛。上海Region的例項有3個佇列,且每個佇列中有10000條資料:

 

2、上海Region、北京Region例項都繫結好公網ip。

3、在北京Region新申請一臺單機例項,繫結好公網ip,開啟Shovel外掛,用作資料中轉。

4、登入單機例項的管理控制檯,Admin -> Shovel Management。

 

5、配置Shovel

 

6、配置完成後如下圖:

 

7、通過Shovel Status可以看Shovel的狀態

 

8、此時上海Region的RabbitMQ例項中的佇列資料已經為0,而北京Region的RabbitMQ例項中的佇列資料為10000條,可以看到資料已經完整遷移過來了。

▲上海

▲上海

 

9、此時再向上海Region的佇列生產資料,資料也會被實時同步至北京。

▲同步中:上海

▲同步中:北京

▲同步完成後:上海

▲同步完成後:北京