オープンソース RabbitMQ クラスターから Alibaba Cloud ApsaraMQ for RabbitMQ インスタンスにメタデータを移行するには、メタデータをエクスポートしてからインポートします。インポートが成功すると、ApsaraMQ for RabbitMQ は、宛先の ApsaraMQ for RabbitMQ インスタンスに対応する vhost、キュー、エクスチェンジ、およびバインディングを作成します。オープンソース RabbitMQ は、すべての vhost または特定の vhost のメタデータのエクスポートをサポートしています。
前提条件
背景情報
RabbitMQ クラスターのメタデータには、ユーザー、vhost、キュー、エクスチェンジ、ルーティングキー、権限、パラメーターなどの情報が含まれます。このメタデータはクラスターの内部データベースに保存され、すべてのノード間で自動的に複製されます。したがって、クラスター内のすべてのノードは同じメタデータを持ちます。
制限事項
制限は、インスタンスの ID 検証および権限モデルによって異なります。移行を成功させるには、オープンソースの ID 検証および権限管理モデルを使用するインスタンスを選択してください。
オープンソースの ID 検証および権限管理
オープンソース RabbitMQ と ApsaraMQ for RabbitMQ の間の非互換性により、
rabbit_version、parameters、global_parameters、またはpoliciesメタデータはインポート中に自動的に無視され、ApsaraMQ for RabbitMQ インスタンスにインポートすることはできません。guest ユーザーはインポートできません。guest ユーザーをインポートしようとすると、ユーザーとその権限は作成されません。
パスワードのないユーザーはインポートできますが、インスタンスに接続したりアクセスしたりすることはできません。
ApsaraMQ for RabbitMQ はユーザータグに基づく権限管理をサポートしていないため、
usersデータ内のtagsプロパティはインポートされません。
Resource Access Management (RAM)
オープンソース RabbitMQ の権限管理は Resource Access Management (RAM) とは異なるため、
rabbit_version、users、permissions、parameters、global_parameters、およびpoliciesメタデータはインポートプロセス中に自動的に無視され、ApsaraMQ for RabbitMQ インスタンスにインポートすることはできません。
オープンソース RabbitMQ メタデータのエクスポート
オープンソース RabbitMQ クラスタから、すべての vhost または特定の vhost のメタデータをエクスポートできます。
オープンソース RabbitMQ コンソールからエクスポートする
ブラウザでオープンソース RabbitMQ コンソールを開きます。
オープンソース RabbitMQ コンソールの URL は次のとおりです:
http://<your_rabbitmq_ip_address>:15672/ログインページで、[ユーザー名] テキストボックスにユーザー名を入力し、[パスワード] テキストボックスにパスワードを入力して、[ログイン] をクリックします。
[概要] タブで、[定義のエクスポート] をクリックします。[仮想ホスト] リストから [すべて] または特定の vhost 名を選択し、[ブローカー定義のダウンロード] をクリックします。
次の表に、[仮想ホスト] リストのオプションを示します。
すべて: すべての vhost のメタデータをエクスポートします。
Vhost 名: 特定の vhost のメタデータをエクスポートします。

ダウンロードしたメタデータファイルをコンピューターに保存します。
オープンソース RabbitMQ HTTP API を使用してエクスポートする
ターミナルを開きます。
次のコマンドを実行して、RabbitMQ クラスターのメタデータファイルをエクスポートします。
すべての vhost のメタデータをエクスポートするには:
wget --user <your_rabbitmq_username> --password <your_rabbitmq_password> http://<your_rabbitmq_ip_address>:15672/api/definitions -O <path/to/save/metadata_file>特定の vhost のメタデータをエクスポートするには:
wget --user <your_rabbitmq_username> --password <your_rabbitmq_password> http://<your_rabbitmq_ip_address>:15672/api/definitions -O <path/to/save/metadata_file> --vhost <vhost_name>
ApsaraMQ for RabbitMQ へのメタデータのインポート
ApsaraMQ for RabbitMQ コンソールにログインします。左側のナビゲーションウィンドウで、クラウドへの移行 をクリックします。
クラウドへの移行 ページで、上部のナビゲーションバーでリージョンを選択し、左上隅にある タスクの作成 をクリックします。
タスクの作成 パネルで、パラメーターを設定し、[OK] をクリックします。
パラメータ
説明
例
インスタンス
メタデータの移行先となる宛先インスタンスの名前。
amqp-cn-7mz2cjgk****
インポートモード
ALL: オープンソース RabbitMQ クラスターから ApsaraMQ for RabbitMQ インスタンスにすべての vhost のメタデータをインポートします。
Vhost: オープンソース RabbitMQ クラスターから ApsaraMQ for RabbitMQ インスタンスの vhost に特定の vhost のメタデータをインポートします。
vhost
vhost
メタデータの移行先となる ApsaraMQ for RabbitMQ インスタンス内の vhost。このパラメーターは、インポートモード を Vhost に設定した場合に表示されます。
test-vhost****
メタデータ
移行するメタデータファイル。ファイルの選択 をクリックし、ローカルのメタデータファイルを選択して、[開く] をクリックします。
説明メタデータファイルは 20 MB を超えることはできません。
rabbit_mq-amqp-load-test011122063****
メタデータ移行タスクを作成した後、メタデータの詳細とタスク失敗の原因を表示できます。
正常にインポートされたメタデータの詳細を表示する
クラウドへの移行 ページでタスクを見つけ、ターゲットインスタンス 列でそのインスタンス名をクリックします。
左側のナビゲーションウィンドウで、vHost リスト をクリックします。宛先の vhost を見つけ、操作 列の 詳細 をクリックします。
詳細については、「vhost 接続の詳細を表示する」をご参照ください。
失敗したタスクの詳細を表示する
クラウドへの移行 ページでタスクを見つけ、操作 列の 詳細 をクリックします。
または、クラウドへの移行 ページで宛先インスタンスを見つけ、同期されたメタデータの数をクリックします。
移行詳細 ページで、[Vhost]、[Exchange]、[Queue]、または [Binding] タブをクリックして、失敗の原因を表示します。