Azure仮想マシンのテンプレート化と展開方法(Windows)

Azureでは様々なOSを簡単にデプロイすることが可能です。

しかし、デプロイ直後は英語OSなので日本人には利用し辛く、各種設定もデフォルトのままとなります。大量に仮想マシンを展開する際、1台1台日本語化後に各種設定をし・・・というのは面倒ですよね。

そこで各種カスタマイズ済みのOSをマスターイメージとしてテンプレート化し、簡単に展開する方法を紹介します。

スポンサーリンク

仮想マシンの作成

仮想マシンの作成方法については以下の記事を参考にして下さい。

Azure Iaasの基本となる仮想マシンの作成する手順を紹介します。

今回はWindows Server 2016で仮想マシンテンプレートを作成したいと思います。

Windows Server 2016のマスターイメージ作成

仮想マシンの作成が完了したらサーバーにRDP接続します。

各種設定をしてテンプレート化します。

Windows Server 2016 日本語化(言語パックインストール)

スタートメニューをクリックし、設定ボタンをクリックします。

011-001

Time & languageをクリックします。

011-002

左のRegion & languageをクリックし、右のAdd a languageをクリックします。

011-003

検索ボックスに「j」と入力すると日本語が表示されるので、日本語をクリックします。

011-004

自動的に一つ前の画面に戻るので、日本語をクリックします。

011-005

Set as defaultボタンをクリックします。

011-006

日本語が上に移動します。これで日本語がデフォルトの言語になりますが、言語パックをWindows Updateからダウンロードする必要があります。
Optionボタンをクリックします。

011-007

追加直後は「Serching Windows Update for language features」と表示されるのでしばらく待ちます。

011-008

「Download language pack」にDownloadボタンが表示されたらクリックします。
Basic typingは自動的にダウンロードが開始されると思います。

011-009

ダウンロードが始まると以下の画面になります。割と時間かかります。(10分弱)

011-010

完了すると「Language pack installed」と表示されます。

011-011

一度サインアウトしてもう一度サインインすると日本語に切り替わっていると思います。

Windows Server 2016 日本語化追加設定

言語パックをインストールして日本語に切り替わりましたが、言語の切り替えはユーザーごとになります。

言語パックを入れてSet as defaultにしているのに、別のユーザーでサインインしたら日本語になってない!と多くの方が経験していると思います。

以下の設定をすることで、別のユーザーがサインインしても日本語になるように設定します。(ついでにシステムロケールの変更もします。)

設定画面を開き、「音声認識、地域、日付」をクリックします。

011-012

左で「言語」をクリックし、「Windowsやアプリでは~~~」の部分で日本を選択します。

011-014

次にスタートメニューを右クリックしてコントロールパネルをクリックします。

011-015

表示方法で「小さいアイコン」にし、「地域」をクリックします。

011-016

「管理」タブの「システムロケールの変更」をクリックします。

011-017

現在のシステムロケールで「日本語(日本)」を選択してOKをクリックします。

011-019

再起動を求められるので再起動します。

011-020

再起動後、同じ画面を開き、現在の言語が「日本語(日本)」になっているのを確認し、「設定のコピー」をクリックします。

011-021

ようこそ画面、新しいユーザーアカウントの表示が英語になっていますね。

011-022

下にある「現在の設定のコピー先」のチェックを2つともつけると、日本語に変わるのでOKをクリックします。

011-023

再起動を求められるので再起動をします。

011-024

これで別のユーザーで入っても日本語表示となります。

その他マスターイメージ設定

環境や要件に応じてマスターイメージの設定をします。
私がよくやるのは以下の項目です。

  • IE ESCの無効化
  • Windows Firewall無効化
  • UAC無効化

Windows Updateの設定やタイムゾーンの設定を組み込んでもSysprepを実行すると元に戻ります。(応答ファイルを作ればこの限りではないですが、今回は割愛)

必要な設定が完了したらいよいよSysprepを実行します。

Sysprep実行

エクスプローラでC:\Windows\System32\Sysprepフォルダを開き、Sysprep.exeを実行します。

システム準備ツールで以下の設定をして、OKをクリックします。

●システムクリーンアップアクション:システムのOOBE(Out-of-Box Experience)に入る
●一般化する:チェックオン
●シャットダウンオプション:シャットダウン

011-036

以下のポップアップが表示され、Sysprepが完了すると仮想マシンが自動的にシャットダウンされます。

011-037

Azure Portal上で以下のような表示になればOKです。

011-038

仮想マシンのテンプレート化

Azure PortalでSysprepを実行して停止したコンピュータを選択します。

コントロールボタンの「キャプチャ」をクリックします。

011-038

任意のテンプレート名を入力します。
イメージ作成後はこの仮想マシンは不要となるので自動的に削除のチェックボックスもオンにし、作成ボタンをクリックします。

011-040

しばらく待つと通知に以下の画面が表示されます。
イメージが作成されました、と表示されていればテンプレート化は完了です。

011-041

リソースグループを見てみると、種類が「イメージ」となっているリソースが作成されています。

011-042

上記画像のチェックが入っているリソースは、何故か自動で削除してくれません。
少し面倒ですが、必要に応じて手動で削除してください。

テンプレートからデプロイ

作成したテンプレートからOSをデプロイしてみます。

作成したイメージリソースを選択すると、コントロールボタンにVMの作成が表示されるのでクリックします。

011-053

仮想マシン作成のウィザードが表示されます。

011-054

基本的に新規で仮想マシンを作成する手順と変わりません。
但し、以下の制約があります。

  • 別のサブスクリプションに展開できない
  • 別のリージョンには展開できない

あとは制約というほどではないですが、仮想マシンのサイズにおすすめが表示されません。地味に面倒です。

ウィザードを進めて仮想マシンを作成すればマスターイメージの内容が反映されたOSが展開されるはずです。

よく使うOSでは1つマスターイメージを作成しておけばかなり便利です。

以上、仮想マシンのテンプレート化と展開方法でした。