🔰 Windows10ProfessionalでHyper-Vをさわってみる
Hyper-Vを利用するとWindows10上に仮想マシンを作成できるようになるらしい。 巷でよく耳にする仮想化技術ってやつですね。
よくわからないのでとりあえずさわってみる。
🔰 MS Docsのドキュメント
今回、知りたいことそのものズバリなドキュメントがMSDocsにあったのでこちらを参照してやっていく。
MSDocs - Hyper-V on Windows10 Virtualization Documentation
🔰 Hyper-Vってなんぞや
MS DocsのHyper-Vの概要が載っているページがあるので読む。 なとなくへーという感じ。
MSDocs - Windows 10 の Hyper-V の概要
🔰 今回お試しする環境
- Windows 10 Professional
- thinkpad x1 carbon 4th generation
- CPU:Intel core-i7 6500U
- Memory:8192 MB
🔰 Windows10でHyper-Vを利用するためのシステム要件
MS Docsにシステム要件の記載があるので確認していく。
🔰 ソフトウェア要件
今回、対象環境はWindows10 Professionalなのでソフトウェア要件はOK
🔰 ハードウェア要件
- 第 2 レベルのアドレス変換 (SLAT) の 64 ビット プロセッサ
- VM モニター モード拡張機能 (Intel CPU の VT-c) の CPU サポート
- 最小 4 GB のメモリ。
とあるが、メモリがOKな事はわかるけれど他は良く分からない……と思っていたら、システム要件のページにsysteminfoコマンドで調べられると書いてあった。
Hyper-Vの所が全部はいになってれば大丈夫っぽい。
🔰 BIOS設定
下記の設定が有効になっている必要がある。
- 仮想化テクノロジ (マザーボードの製造元によってラベルが異なる場合があります)
- ハードウェアによるデータ実行防止
今回、仮想化テクノロジの部分について、BIOSの設定を確認した所無効になっていたので有効に変更。
ハードウェアによるデータ実行防止が有効かどうかはwmic OS Get DataExecutionPrevention_Available
のコマンドで確認できるようなので確認->Trueだったので有効になっているOK。
🔰 windows10 professionalでHyper-Vをインストールする
MS Docsの下記ページにPowershellから登録、手動からの登録の手順が記載されている。
今回は手動でインストールしてみる。
コントロールパネル -> windowsの機能の有効化または無効化 -> Hyper-Vにチェックを入れて有効化 -> OKを選択
※BIOSの仮想化テクノロジ設定が無効になっていると、Hyper-Vの項目がグレーアウトになって選択できないようです。
再起動後、Hyper-V マネージャを起動してみる。
windowsボタンからHyper-V マネージャを選択して起動する。
🔰 Hyper-V による仮想マシンの作成 + ゲストOSのインストール
Hyper-Vで仮想マシンを作成して、サポートされているゲストOSのubuntuをインストールしてみる。
🔰 Ubuntu Server 16.04.4 LTSのイメージをダウンロード
今回はUbuntu Server 16.04.4 LTSを仮想マシンにインストールしてみる。
まずはUbuntu Server 16.04.4 LTSのイメージをダウンロード。
🔰 仮想スイッチの作成
仮想マシンからもインタネットに接続させるためには仮想スイッチを作成する必要があるらしいので作成する。
🔰 仮想マシンの作成
ダウンロードしたUbuntuServerのイメージを選択して次へ
🔰 セキュアブートの設定
ぐぐるとUbuntuで第二世代だったりする場合、セキュアブートの設定を変更しないと起動しないらしい。
ちなみにこの設定を変更しないで試しに起動してみましたが、見事に起動失敗しました。
セキュアブートのテンプレートをMicrosoft UEFI 証明機関に変更
🔰 仮想マシンの起動と接続
接続を選択すると仮想マシンにvmconnect.exeを利用して接続を行います
🔰 Ubuntu Server 16.04.4 LTSのインストール
仮想マシンに接続できたのでUbuntu Server 16.04.4 LTSのインストールを行う。
ubuntuServerとかよくわからないのでとりあえずデフォルト設定でガシガシインストールしていく。
ガイド - ディスク全体を使いLVMをセットアップするを選択
standard system utilitiesを選択して続けるを選択
🔰 UbuntuServerにログイン
日本語が化けてるのでとりえあず英語表示にしておきます。
export LANG=en_US
でセッション中は英語表示になるようです。
🔰 UbuntuServerにopenSSHのインストール
vmconnect.exeを使って接続するのもかったるいのでubuntuServerにopenSSHをインストールしてsshで接続できるように設定する。
apt-get install openssh-server
でopenSSHのインストール
/etc/ssh/sshd_configのPasswordAuthentication yesを有効にする
PasswordAuthentication yesをyesにする
invoke-rc.d ssh rerload
でsshの設定を再読込します。
ip address show
コマンドでゲストOS(ubuntuServer)のipアドレスを控えておく。
🔰 Win32-OpenSSH + PowershellでSSHでゲストOSに接続
##
Hyper-Vを操作するPowershell用のモジュールがHyper-Vをインストールする際に導入されているので(Hyper-V 管理ツール)こちらを利用してみる。
ちなみに下記のコマンドを利用するには管理者で実行する必要があります。
Start-Process powershell -verb runas
なり右クリックから管理者で実行なりでPowershellで管理者で実行して下記のコマンドを実行する
🔰 get-vm VMの状態を取得する
🔰 start-vm VMを起動する
get-vm
で取得した情報をパイプしてstart-vm
で起動してみる。
🔰 stop-vm VMを停止する
get-vm
で取得した情報をパイプしてstop-vm
で起動してみる。
🔰 総評
仮想化もネットワークもubuntuもよくわからないが、とりあえず動くだけは動いたっぽい。
知らないことばかりでも何とか動いたって感じ。