全部產品
Search
文件中心

ApsaraMQ for RabbitMQ:遷移中繼資料上雲

更新時間:Aug 22, 2025

遷移中繼資料上雲是指將開源RabbitMQ叢集的中繼資料匯出,並將其匯入到阿里雲雲訊息佇列 RabbitMQ 版執行個體。雲訊息佇列 RabbitMQ 版會根據成功匯入的中繼資料在目標雲訊息佇列 RabbitMQ 版執行個體中建立對應的Vhost、Queue、Exchange、Binding,實現RabbitMQ叢集中繼資料遷移上雲。開源RabbitMQ支援匯出全部Vhost或某個指定的Vhost中繼資料。

前提條件

  • 開啟RabbitMQ管理外掛程式

  • 建立作為中繼資料遷移目標的雲訊息佇列 RabbitMQ 版執行個體和Vhost。更多資訊,請參見建立執行個體建立Vhost

    說明

    建議選擇Serverless系列獨享執行個體,該執行個體支援開源身分識別驗證和許可權,可以實現開源RabbitMQ無縫遷移上雲。

背景資訊

RabbitMQ叢集中繼資料是指RabbitMQ叢集的資訊,包括User、Vhost、Queue、Exchange、RoutingKey、Permission、Parameter等資訊。中繼資料存放區於RabbitMQ叢集的內部資料庫,在叢集的各個節點之間自動複製。叢集內各節點的中繼資料內容都相同。

使用限制

根據執行個體身分識別驗證和許可權模式的不同,有不同的限制條件,建議選擇開源身分識別驗證和許可權管理方式的執行個體進行遷移上雲。

  • 開源身分識別驗證和許可權管理方式

    • 由於開源RabbitMQ和雲訊息佇列 RabbitMQ 版存在一定的差異,rabbit_versionparametersglobal_parameterspolicies中繼資料不支援匯入雲訊息佇列 RabbitMQ 版執行個體,在匯入時會被自動忽略。

    • 禁止匯入guest使用者。如果進行匯入,則該使用者及其許可權將不會被建立。

    • 允許匯入無密碼的使用者,但是該使用者不支援串連訪問。

    • 由於雲訊息佇列 RabbitMQ 版不支援User Tags 的許可權管理,因此users資料中的tags屬性不會匯入。

  • 阿里雲存取控制(RAM)

    由於開源RabbitMQ的許可權管理和阿里雲存取控制(RAM)存在一定的差異,rabbit_versionuserspermissionsparametersglobal_parameterspolicies中繼資料不支援匯入雲訊息佇列 RabbitMQ 版執行個體,在匯入時會被自動忽略。

匯出開源RabbitMQ中繼資料

在匯出開源RabbitMQ叢集中繼資料時,開源RabbitMQ支援匯出全部Vhost或某個指定的Vhost中繼資料。

開源RabbitMQ控制台匯出

  1. 在瀏覽器中開啟開源RabbitMQ控制台。

    開源RabbitMQ控制台地址:http://您的RabbitMQ IP地址:15672/

  2. 在登入頁面的Username文字框輸入您的使用者名稱,在Password文字框輸入您的密碼,然後單擊Login

  3. Overview頁簽下方,單擊Export definitions,從Virtual host列表選擇All或者指定的Vhost名稱,然後單擊Download broker definitions

    Virtual host列表參數說明如下:

    • All:表示匯出全部Vhost中繼資料。

    • Vhost名稱:表示匯出指定Vhost中繼資料。

    image

  4. 將下載的中繼資料檔案儲存至本地。

開源RabbitMQ HTTP API匯出

  1. 開啟終端。

  2. 執行以下命令匯出RabbitMQ叢集中繼資料檔案。

    • 匯出全部Vhost中繼資料

      wget --user <您的RabbitMQ帳號> --password <您的RabbitMQ密碼> http://<您的RabbitMQ IP地址>:15672/api/definitions -O <您的中繼資料檔案儲存路徑>
    • 匯出指定Vhost中繼資料

      wget --user <您的RabbitMQ帳號> --password <您的RabbitMQ密碼> http://<您的RabbitMQ IP地址>:15672/api/definitions -O <您的中繼資料檔案儲存路徑> --vhost <Vhost名稱>

將中繼資料匯入雲訊息佇列 RabbitMQ 版

  1. 登入雲訊息佇列 RabbitMQ 版控制台,在左側導覽列,單擊迁移上云

  2. 迁移上云頁面頂部功能表列選擇地區,然後在頁面左上方單擊创建任务

  3. 创建任务面板,設定相關參數,單擊確定

    參數

    描述

    樣本值

    实例

    中繼資料要遷移到的目標執行個體名稱。

    amqp-cn-7mz2cjgk****

    导入模式

    • ALL:將開源RabbitMQ全部Vhost中繼資料匯入雲訊息佇列 RabbitMQ 版執行個體。

    • Vhost:將開源RabbitMQ指定Vhost中繼資料匯入雲訊息佇列 RabbitMQ 版執行個體的Vhost中。

    Vhost

    Vhost

    遷移中繼資料至 雲訊息佇列 RabbitMQ 版執行個體指定的Vhost。 导入模式選擇Vhost時,顯示該參數。

    test-vhost****

    元数据

    需要遷移的中繼資料檔案。單擊选择文件,選擇本地的中繼資料檔案後,單擊開啟

    說明

    中繼資料檔案的大小不超過20 MB。

    rabbit_mq-amqp-load-test011122063****

    通過建立任務遷移的中繼資料,支援查看中繼資料的詳細資料和任務執行失敗時的失敗原因。

    • 查看匯入成功的中繼資料資訊

      1. 迁移上云頁面,目標任務所在行目标实例列,單擊執行個體名稱。

      2. 在左側導覽列,單擊Vhost 列表,目標Vhost所在行操作列,單擊详情,查看Vhost詳細資料。

        更多資訊,請參見查看Vhost串連詳情

    • 查看執行失敗的任務詳情

      1. 迁移上云頁面,目標任務所在行操作列,單擊详情

        您也可以在迁移上云頁面,目標執行個體所在行同步中繼資料數量列,單擊同步數量。

      2. 迁移详情頁面,單擊Vhost、Exchange、Queue、Binding對應的頁簽,查看失敗原因。