Galleryを用いたVMの複製」を再編集したものです。GallaryとTerraformを用いてVMの複製を実施いたします。テナント)内で共有するためのサービスです。VMを複製するだけであればイメージを作成するだけで十分ですが、イメージからVMを作成する際に、他のサブスクリプションに作成することができません。Gallaryで共有することで、組織内ならばサブスクリプションをまたいでVMを作成することが可能となります。Gallaryを作成5.イメージ定義を作成6.イメージバージョンを作成7.イメージバージョンからVMを複製1.マスターイメージ(コピー元)となるVMを作成AzureポータルのGUIに従いVMを作成します。GallaryによるVMの複製がメインですので細かい作業は省略いたします。VMを作成しています)。続いてSysprepを実行し、VMを一般化(Generalize)します。下記の公式ドキュメントにも注意書きがあるように、一般化したVMは再起動できなくなります。元のVMの機能を維持したい場合は、必ずVMのコピーを作成し、そのコピーを一般化するようにしてください。AzureVMの作成、起動が完了したらRDPで接続し、以下のコマンドを管理者権限で実行します。OptionsはShutdownを選択します。(画像参照)この状態でOKを押下するとSysprepが実行されます。実行が完了するとVMがシャットダウンされて接続が切れるので、RDPを終了します。Sysprepの実行なお、上記のSysprepの起動からオプションの設定、実行までは以下のコマンドで代用できます。/oobe3.イメージを作成AzureポータルのVMにアクセスし、「キャプチャ」をクリックしイメージを作成します。一般化したVMは再起動できず、今回はもう用事もないので、「イメージの作成後、この仮想マシンを自動的に削除します」を有効にしておきます。Gallaryを作成します。ここでは特別に指定する必要のあるパラメータは存在しないのでGUIに従い作成します。Gallaryの「新しいイメージ定義を追加します」をクリックし、イメージ定義を作成します。今回は「基本」ブレードの項目のみ入力し、「バージョン」「発行のオプション」は空で作成します。・「オペレーティングシステム」は1.で作成したVMと同じOSを指定します。・「VMの生成」は作成するVMのサイズに応じて選択します。詳細は以下のドキュメントをご参照ください。Azure・「オペレーティングシステムの状態」ですが、2.でVMを一般化しましたので、一般化を指定します。・「発行元」「プラン」「SKU」はそれぞれ「testpublisher」「testoffer」「testsku」を入力しています。こちらの3つのパラメータに入力する値については以下のドキュメントをご参照ください。definitions-イメージ定義を作成6.イメージバージョンを作成イメージ定義の「バージョンの追加」をクリックし、イメージバージョンを作成します。・「バージョン」に1.0.0と入力します。作成したイメージを指定します。・「レプリケーション」にVMを作成するリージョンを指定します。※イメージバージョンからVMを作成する際に、VMのリージョンとして選択可能なものは「レプリケーション」で指定したリージョンのみなので注意しましょう。イメージバージョンの作成ですが、「レプリケーション」で指定したリージョンにイメージを配置するのに時間がかかりますので、気長に待ちます。今回は「東日本」と「西日本」を指定しましたが20分ほどかかりました。作成したイメージバージョンの「VMの作成」からVMを作成することが可能になりました。イメージからの作成では異なるサブスクリプションにはVMを作成できないのですが、イメージバージョンからならば他のサブスクリプションを選択可能となっています。GallaryからVMを作成するコードを以下に記載します。基本はカスタムイメージからVMを作成するコードを用い、イメージのリソースIDを指定するパラメータにイメージバージョンのリソースIDを入力するだけで作成可能です。Gallaryを用いたVMの複製を実施いたしました。今後も業務で得た構築のノウハウをブログで紹介していけたらな、と思っています。Division所属。Azureを用いたインフラ構築を行っています。構築のノウハウやTerraformを用いた効率化の方法などを紹介していけたらいいな。スマホお気に入り一覧マイページ。