Azure(ARM)にてカスタムVMイメージを作成~展開する方法

皆さんこんにちは。今回はAzure VMのv2, ARMにてカスタムのVMイメージを作成~展開する方法です。 v1の時には楽ちんだったのですが、現状(2016/05/06)だとポータルからの操作で完結しないのでちょっと手間に感じる方もいるかもしれないですね。今後も継続的に方法は変化すると思いますが、現時点の私のやり方を記録しておきます。 仮想マシン作成~構成 まずは、普通に仮想マシンを作成し、カスタマイズを行います。この部分の手順は省略します。 仮想マシンの準備 仮想マシンをカスタマイズしたら、テンプレート化するための準備を行います。具体的にはsysprepを実行します。PowerShellにて以下のコマンドを実行でOKです。 & “$Env:SystemRoot\system32\sysprep\sysprep.exe” /generalize /oobe /shutdown 結果、仮想マシンは仮想マシン内からのコマンドでシャットダウンされることになります。 仮想マシンイメージのキャプチャ 次に仮想マシンイメージのキャプチャですが、Resource Explorerからの実施が簡単だと思います。 - https://resources.azure.com/ Resource Explorer上で対象のVMにまで移動して… まず、deallocateを実行します。ポータル上で仮想マシンの状態の変化を確認しながら操作を行うのがおすすめです。 きちんと処理が完了したら次はgeneralizeを実行します。 これも完了したことを確認してから、次にcaptureを実行します。 この時には、パラメーターをきちんと入力してからの実行が必要です。 これを・・・、必要に応じて編集してからcaptureボタンを押します。(以下はあくまでも例です。) これによって、同一ストレージアカウント内のblogに、イメージがキャプチャされます。 「system」内に作成されます。 イメージからのデプロイ イメージからのデプロイに関しては、ポータルからは行えない…と思います。現時点では。(やり方知ってる人いたら教えて下さい。) 先に、NICとパブリックIPがある状況で、PowerShellを使って簡単にデプロイできるPowerShellスクリプトを作成したので共有しておきます。 スクリプトはGithubで公開しています。 - https://github.com/ebibibi/AzureManageCodes/blob/master/VMImage/CreateNewVMfromTemplate.ps1

May 6, 2016 · 1 min · 胡田昌彦

Azure Resource Managerを使ってAzureに全自動でWindows Serverを展開する

Azure Resource ManagerをいまからやっておけばAzure Stack対応もバッチリ!…ということでAzure Resource Mangerのお勉強を始めています。さらにはInfrastructure as Codeの実現に向けてDesire State Configurationのお勉強も。外側はARMで、VMの中はDCSで…という感じですね。 まず手始めに何から手をつけると良いかな…と探した所、以下のブログが非常にいい感じだったのでここから手をつけてみました。 - [18 Steps for End-to-End IaaS Provisioning in the Cloud with Azure Resource Manager (ARM), PowerShell and Desired State Configuration (DSC) - KeithMayer.com - Site Home - TechNet Blogs](http://blogs.technet.com/b/keithmayer/archive/2015/07/07/18-steps-for-end-to-end-iaas-provisioning-in-the-cloud-with-azure-resource-manager-arm-powershell-and-desired-state-configuration-dsc.aspx) コードで紹介されているので、基本的にそれをコピペすれば動くのですが、せっかくなので全部写経しつつコメント出力を追加したり、いちいち色んな物を選択したり、手動でクレデンシャルを入力したりするのが面倒なのでそこも自動化したり…と、改造しながら楽しんでみました。まだ、DSCでIISを構成するところまで行ってないのですが以下の動作を行わせる所までは全部理解して書いて正常動作を確認するところまでできました。 - クレデンシャル生成 - Azureアカウント追加 - ARMプロバイダ登録 - サブスクリプション選択 - リソースグループ作成 - ストレージアカウント作成 - 仮想ネットワーク作成 - VIPリソース作成 - ロードバランサ作成 - ネットワークセキュリティグループ作成 - NIC作成 - 可用性セット作成 - VM作成 https://gist.github.com/ebibibi/9a0a6830b54f0d3a7400 ...

July 18, 2015 · 1 min · 胡田昌彦