
世の中テレワークが一気に普及しました。このまま定着するのか、それとも元に戻るのか、どうなるんでしょうね。
今回そっち方面からお楽しみ要素を発掘してきました。
前回のブログでDaphile用に購入したものの、車載化を見送り遊休資産となってしまったシングルボードコンピュータの「APU」を使って、仮想化環境で遊んでみます。
当ブログ的には、仮想化とオーディオは関係するのか?試してみたいことはありますが、今のところ未定ということにしておきます。いつになるかわからないので、あっ!と思った方は先にやっちゃって構いませんよ。レポートお待ちしております。
(2024/2追記)
Broadcomによるvmware社の買収が完了し、無償版vSphere Hypervisor(ESXi)の提供終了が発表されました。残念です。
企業のITインフラレベルで仮想化は当たり前になっていますが、一般ユーザーがそれを目にする機会は多くなく、仮想化と言われてピンとこない人も多いと思います。
自分の場合は、会社のCADに導入されてようやく身近に感じたという・・・技術者としては「アンテナ錆びてんな」状態でちょっと情けない。以前は資料を抱えて「CAD室」に籠らなければならなかったのが、自席やリモートワークで設計作業ができるようになったのが面白く、個人でも使ってみたいなと思っておりました。
(興味ある方は「VDI」「RDS」あたりをキーワードに調べてみてください。)
PC向けOSのDaphileがAPUにすんなりインストールでき、APUがPCにかなり近いアーキテクチャであることがわかったので、「VMいけるんじゃね?」と調べてみたらやはり可能だと。しかし実際にやってみたら色々と罠があったので、ここにまとめておきます。
APU. 2D4(PC Engines)
SUV500MS/480G(キングストンテクノロジー)
APUの購入方法などについては、
LightMPD導入時のブログをご覧ください。
ストレージとしてmSATAのSSDを追加してあります。
仮想化基盤のCPUコア数やメモリーはあればあるだけ便利ですが、APU2の4コア/4GBでもなんとか使えます。2GBは非推奨です。
仮想化とは?なぜ仮想化?
ここから始めるととっても長くなるので、メリットを簡単に。
・モニター出力を持たないAPUにデスクトップOSをインストールできる。
・多数のOSをとっかえひっかえ、また必要なら複数のOSを同時起動できる。
書籍を紹介しておきます。
速習 VMware vSphere Hypervisor 6: 自宅で学べる無料版 ESXi の使い方
伊藤 裕一 (著)
最初の入門書としておすすめ。kindleで安くサクッと読めます。
ホスト型かハイパーバイザー型か
仮想化環境にはホスト型とハイパーバイザー型の2種類があります。
WindowsなどをホストOSとして、その上で別のOS(ゲストOS)を動作させる時に使うのがホスト型、ホストOSなしでゲストOSを動作させるのがハイパーバイザー型です。
普段使っているPCにホスト型の環境(VMware Workstation Playerなど)を入れる方法もありますが、PCのリソースにゲストOSを動かせるだけの十分な余裕が必要です。またホストOSが落ちるとゲストOSも全て道連れになるので、仮想化環境はメインPCと別のハードウェアで動かした方が使い勝手が良いと思います。
APU. 2D4のCPUやメモリーではホスト型を稼働させるには心もとないので、ハイパーバイザー型を使います。
今回は上の書籍にもある、VMware社のvSphere Hypervisor(ESXi)を選択しました。機能限定とはなるものの非商用利用なら無料ライセンスがあります。こんなガチのエンタープライズ製品を無償で使えるなんてVMware太っ腹!企業のIT担当者の方は無償版で遊んだ後は稟議書書いてね、という狙いなんでしょうけど。
準備
APUにはモニター出力が無いので、インストールや初期の操作用にシリアル(RS-232C)接続を使います。シリアルポートなんてレガシーデバイスですが、低レベル(ハードウェア寄りって意味ですよ)のデバッグにはまだまだ現役です。
APUとPCをシリアルケーブル(クロス)で接続しておきます。PCにシリアルポートが無い場合は、USB-シリアル変換ケーブルを用意します。
インストール後の操作はLAN経由で行います。APUのLANポート(向かって一番左)を自宅のルーターに接続しておきます。(要DHCP)
BIOSアップデート
最初に、APUのBIOSを最新版に更新します。
BIOS更新は失敗すると2度と起動できなくなるリスクがあります。必要なければやりたくない作業ですが、仮想化環境はファームウェアのバージョンにシビアです。PC Engines社の
How-Toページに手順が記載されています。
アップデートにはUSBメモリーで起動できる小型LinuxのTinyCoreを使います。上記のページからインストーラーを入手し、起動用USBメモリーを作成します。
APUのBIOSを
GitHubから入手します。確実にダウンロードできたか、ハッシュで必ず確認してください。さらに万全を期すなら複数のバージョンを準備しておきます。
TinyCoreのUSBメモリー(のルートディレクトリ)にダウンロードした.romファイルをコピーします。
シリアル接続のターミナルソフトには、ラズパイのSSHコンソールでも使用した
PuTTYを使います。
通信条件は115200bps/8bit/パリティ無し/ストップビット1です。
(そろそろこれも説明が必要な時代になってきましたかね・・・)
作成したUSBメモリーをAPUに挿して起動。

PuTTYのコンソールにプロンプトが出たら、以下のコマンドでBIOSを更新します。
$ flashrom -w apu2_v4.11.0.6.rom
ベリファイ完了(VERIFIED)と表示されるのを祈りながら待ちます。
万一表示されなかったら恐怖です。そこで電源を落としたら最後、慌てずリカバリーを試みます。
起動不能になってしまったら、PC Engines社からリカバリー用のアダプターを入手できます。
正常に書き込みが終わったら
$ sudo poweroff
でシャットダウンし電源を落とします。
vSphere Hypervisorのインストール
ここから仮想環境のインストールです。
VMwareのWebサイトからvSphere Hypervisor (ESXi)をダウンロードします。無償版と試用版のライセンスがあり、試用版は60日で使えなくなるので注意。ダウンロード時に表示されるライセンスコードを控えておきます。
(自分の環境ではChromeでダウンロードできずEdgeを使いました。)
APUで動作確認が取れているESXiのバージョンは6.0系です。ダウンロードのページにあるのは最新バージョンの7.0で、旧バージョンへはそこからURLを修正して入ります。
PC Engines社のブログでは、BIOS v4.11.0.2でESXi 6.7 U2における不具合が対策された、となっていますが、6.7.0(U2およびU3)はインストーラの起動中再起動ループに入ってしまいインストールできませんでした。一つ前の6.5.0 U3なら大丈夫です。
ダウンロードしたISOファイルを、イメージ書き込みソフトの
Rufusを使ってUSBメモリーに書き込みます。これがインストールディスクとなります。
(初回にmenu.c32のバージョンが古いと言われたらアップデートします)
モニター出力のないAPUにインストールするため、おまじないをします。
書き込んだUSBメモリーにあるboot.cfgをテキストエディタ(
TeraPadなど改行コードをLFに設定できるもの)で開き、以下の2行を追加します。(kernelopt行は既にあるので置換)
kernelopt=runweasel text nofb com1_baud=115200 com1_Port=0x3f8 tty2Port=com1 gdbPort=none logPort=none
ignoreHeadless=TRUE
PCでシリアルコンソールを起動し、USBメモリーをAPUのUSBポートに挿して電源ON。下のようなブートメニューが表示されたらそのまま待ちます。
数分待って(その間メッセージが大量に出力されます)、コンソールにここまで表示されたら一安心です。
使用許諾条件の確認
インストール先の選択
ルートパスワード設定
最終確認でインストール開始となります。選択したドライブは全て消去されESXiの管理下に置かれます。
インストールが完了したらUSBメモリーを抜いて再起動。
初期状態ではDHCPが有効になっているので、APUに割り当てられたIPアドレスを確認します。シリアルコンソールに表示されるほか、スマホアプリの
Fingも使えます。
PCのWebブラウザでログイン画面(http://アドレス/ui/)に接続します。
ログインすると管理画面が現れます。vSphere Web Clientといいます。
おお!鯖管っぽいぞw
ESXiの操作はこのようにWebブラウザから行うことができます。専用アプリを使うvSphere Clientもありますが、VMware社はWeb Clientに移行する方針とのこと。
コンソールをシリアルポートにリダイレクトします。「管理」「システム」「詳細設定」で「VMkernel.Boot.tty2Port」を「com1」に設定します。最初のおまじないと同じことです。
またダウンロード時に表示されたライセンスコードを入力します。入力するまでは、60日間の試用モードになっています。
いったんESXiをシャットダウンし、再起動します。
サーバーを動かす場合などはハイパーバイザーのIPアドレスがDHCPでころころ変わっては都合が悪いので、アドレスは固定しておいた方が良いでしょう。
シリアルコンソールから設定できます。
以上です。これで仮想化基盤という自由に使える「砂場」ができました。
Linuxの勉強も良し、レトロゲームの環境としても使えるかも。
好みのOSをインストールして遊びましょう。
Posted at 2020/05/24 23:12:24 | |
トラックバック(0) |
その他 | パソコン/インターネット