web-dev-qa-db-ja.com

Hyper-Vを自動的に作成する方法VM、PowerShellを使用してアプリをインストールする

WPFアプリケーションのテストインフラストラクチャを設計しています。新しいMSIがフォルダーに表示されたときにVM)を作成し、新しく作成したVMにMSIをインストールするシステムが必要です。Hyper-VとPowerShellを使用しています。フォルダーの監視とキックオフは私ができるすべてのことですが、それは私が立ち往生しているHyper-Vの側面です。ベースとして使用したいVMがありますが、どこに行けばいいのかわかりません。ここから行きます。

VMをエクスポートしてから、PSスクリプトでVMをインポート/コピーする方がよいでしょうか。 VMを直接コピー」する方が良いですか?チェックポイントを使用する必要がありますか?より良いアプローチはありますか?

PSを使用してVM /アプリの自動構成を行うことについて説明しているリソースへのリンクがあれば、それは素晴らしいことです。私は開発者なので、このような場所に行くのかわかりません。

ありがとう、エリック

2
Erick T

ベースとして使用したいVM)がありますが、ここからどこに行くべきかわかりません。

「正解」は、 SCCVMの仮想マシンテンプレート を使用することですが、質問のトーンから判断すると、SCCVMがないと思います。

代わりにできることは、かなり時間がかかりますが、マスターイメージVMを構築し、 sysprep それを作成して、結果のVHDを後続の仮想マシンに使用することです。

マスターイメージ(sysprepの前と後の両方)を既にバックアップしていると仮定すると、次のような簡単なことができます。

Copy-Item C:\Hyper-V\MasterImage\MasterImage_CDrive.vhdx C:\Hyper-V\$SpawnVM\$SpawnVM.vhdx
New-VM $SpawnVM -Path "C:\Hyper-V"
Add-VMDisk -VM $SpawnVM -ControllerId 0 -Lun 0 -Path "C:\Hyper-V\$SpawnVM\$SpawnVM.vhdx"


そのPowerShellスニペットは、マスターイメージからVHDをコピーし、新しいVMを作成して、それを添付する必要があります。やりたいことはまだまだたくさんあるので、ここで説明します。 Windows PowerShellのHyper-Vコマンドレット これはWindows 8.1/Windows Server 2012 R2で完全に機能します。後で特定の質問がある場合は、遠慮なく元に戻してください。


チェックポイントを使用する必要がありますか?

多分。チェックポイントからVMをエクスポートすることにより、既存のチェックポイントから新しい仮想マシンを作成できます(Ibelieveこれは差分をマージしますディスクと親ディスクなので、時間を節約できません)。チェックポイントは実際には 一時的な時点の復元 :のために予約する必要があります。

チェックポイントは、システムやアプリケーションの更新などの変更後に仮想マシンを以前の状態に復元する必要がある場合に、一時的なバックアップを提供することを目的としています。ただし、オペレーティングシステム、アプリケーション、またはファイルの永続的なバックアップにチェックポイントを使用しないでください。



私は開発者なので、このような場所に行くのかわかりません。

これを間違った方法で行わないでください。ただし、このプロセスで深刻なことをしている場合は、システム管理チームに相談するか、オンプレミスまたは関連する経験を持つ請負業者を雇うことを検討してください。これらのトピックのそれぞれについて小さな本を書くことができます。 PowerShellをハックして、VMの開発やテストを自動化することは問題ないかもしれませんが、これは、本格的な本番環境に向かうための良い道のようには思えません。フレンドリーな注意事項... DevOpsがすべてDevでなく、Opsがないことを確認してください。

うまくいけば、これで始められます。実稼働環境で定期的かつボリュームを使用してこれを行う場合は、 System Center 2012 R2仮想マシンマネージャー および System Center 2012 R2 Orchestrator を真剣に検討する必要があります。

1
user62491