はじめに
前回はAzureのMOSPサブスクリプションを別のテナントに移動しました。
今回はMOSPサブスクリプションのリソースをEAサブスクリプションに移動する方法を紹介したいと思います。
前回記事と重複する部分は記載を省略しています。
リソース移動の制約・制限事項
個々のリソース移動の制約はリンク先を確認いただきたいと思いますが、大前提として以下があります。
- リソースを移動するにはサブスクリプションが同一のAzure ADテナントに所属する必要があります
- 異なるテナント間のリソースの移動はできません*1
- サブスクリプション間で移動を行う場合、依存関係があるリソースは同じリソースグループに所属している必要があります。
- 例えば、仮想マシンは接続している仮想ディスクや仮想NICと依存関係にありますが、これらはひとつのリソースグループに所属している必要があります
- 移動の間はリソースを操作できません
- 操作できませんが、仮想マシンやSQL Databaseなどのリソースは停止しません
移動概要
アセスメント
前回記事のテナント変更同様にリソース移動にも制約があります。どのようなリソースが含まれているか、移動できるのかできないのか確認します。こちらもアセスメントには時間がかかると思います。
Azure RBACの情報取得
こちらもテナント変更同様にロールの割り当てはリセットされます。そのため、復元できるよう情報取得します。
サブスクリプションのクォータ確認
サブスクリプションにはクォータが設定されています。リソース移動により移動先のサブスクリプションの上限を超過する可能性がありますので、要チェックです。
リージョンの仮想マシンvCPU数を超過するケースがよくあります。CSPが提供するサブスクリプションにリソースを移動する場合、上限引き上げにはリードタイムが必要になりますので、注意が必要です。
リソース削除、設定変更
移動がサポートされていないリソースを削除したり、移動に影響があるリソースの設定変更や解除を実施します。
リソースの移動
リソースの移動はAzure Portalから操作できます。
移動したいリソースを含むリソースグループで[別のサブスクリプションに移動する]をクリックします。
移動元のソースのサブスクリプションとリソースグループ、移動先のターゲットのサブスクリプションとリソースグループを選択します。
移動するリソースの検証が行われ、[検証状態:成功]になれば、移動することが可能です。
検証に失敗するケースとしては、依存関係のあるリソースがリソースグループに含まれていない、または移動がサポートされていない、という事が多いと思います。
よくはまるポイントとしては、vNetピアリングを削除していないケースです。
下記リンクではピアリングを無効化することと記載がありますが、実際にはピアリングを結ぶvNetの双方でピアリングを削除する必要があります。
Azure RBACの復元
取得した情報をもとにロール割り当てやカスタムロールなどを移動先のサブスクリプションで復元します。
リソース作成、再設定
移動がサポートされていないリソースを移動先のサブスクリプションで作成したり、テナントが変更による接続情報や認証情報を修正したりします。
(リソース毎に実施しなければならない作業を実施します)
移動してみて分かったこと
- 仮想マシンへのRDP接続やSQL Databaseの読み取り・書き込みはできる(ダウンタイムは発生しない)*2
- 仮想マシンのIPアドレスの変更は不要(IPアドレスは引き継げる)
- 移動の取り消しや切り戻しの手順は用意されていないため、切り戻しを実施する場合は逆向きのリソースの移動を実施する必要がある
さいごに
今回は異なるサブスクリプション間のリソースを移動する方法について概要を紹介しました。
紹介した手順の詳細は下記リンクから引用しています。
大澤 悠(日本ビジネスシステムズ株式会社)
AzureへのリフトアンドシフトやSQL Server、Oracle、PostgreSQL等のデータベース案件を担当。現在はマネジメントが中心。愛車のKAWASAKI NINJA 1000SXでロングツーリングするのが趣味。
担当記事一覧