いつ頃からか、IT業界では「仮想化」という言葉が流行りだしていたようである。普通の生活をしているとほぼ関係がない用語ではあり、わりと普通の生活をしている俺にとっても、しばらく関係のない用語ではあった。
が、現在では我が家のPCは「仮想化」されることで複数台のPCを一つのマシンにまとめられている、という、一風変わった環境になっている。
この環境にしたのがちょうど1年くらい前なので、その頃の状況を含めてメモを残してみようと思う。
ただし、技術的かつ概念的な話なので、非常につまらないかも。完全なチラ裏ですね(笑)
もともと、我が家ではある「掟」がある。
『PC類はたくさん買っちゃダメ。必要な分だけ。』
今でこそ仕事で使うのでこの制限は随分ゆるくなっているが、1年前はMac1台(自宅用デスクトップ)とWindows1台(Office/VBA開発用)以上は持てなかった。VBAの開発は会社員時代から個人的にチマチマと仕事を受けていたりしたので、Windowsマシンはそれなりにハイスペックな、サーバーと見間違うようなものを持っていた。
で、ディスプレイやキーボード・マウスを2セット用意し、作業部屋の小さい机の上でキーボードをとっかえひっかえしながら作業をしていたのだが、まぁ開発以外にはWindowsマシンは使わないので(実際にはRadikoの録音をしていたので常時付けっぱなし)、大した問題もなく、あえて言うならWindowsマシンがデカすぎて場所をとってしまうくらいのものであった。
そしてある時(これがちょうど1年前)、VBA開発を以前依頼されていた方から、こんな依頼を受けた。
「以前作ってもらったAccessアプリ、Office新しくするから作り直してくれる?」
よくよく聞いてみると、そのアプリを開発した時からもう数年経っていて、マシンを新しくしようとしたのだが、その頃とは環境が随分変わっていて、アプリが古くて動かないかもしれない、ということなのだ。
開発当時は、
・OS:Windows XP
・Office: 2003
で、新しく購入予定のマシンは、
・OS: Windows 8
・Office: 2013
要するに、サポート切れ間近のマシンから最新マシンに変更したい、というところから始まったのだが、その検証段階で、Officeを使っていたアプリがあり、これが動かないのではないか、ということであった。
単純にAccessでデータベースを使っているだけならば単純に変換をするだけで動くはずなのだが、アプリとして作っているので、変換だけでは動かないだろう、という話は当初の開発時に既にしていた。開発時にはもうOffice2010が出ていて、2003との互換性については特にAccessがネックになる、ということだけは分かっていた(詳細はそのうちどこかでブログに載せようと思う)。
しかもそこでOSが新しくなる、という話もあり、そもそもOfficeは一台のマシンに複数インストールすることはできないし(本当は「できる」のだが、複数のOfficeを入れた状態は特殊であり、通常の環境とは異なる挙動をしてしまうことがあるということは経験済)、単純に我が家の開発用Windowsを新しくするだけでは失敗する可能性があるだろう、と考えた。
ということで、新しくWindowsマシンを購入しようとしたのだが、ここでネックとなるのが、我が家の掟。
『PC類はたくさん買っちゃダメ。必要な分だけ。』
いや、必要じゃん?
と思うだろうが、よく考えてみると、この「新しい環境への移植」というのは一時的な作業なのだ。一時的な作業のためだけにマシンをもう一台購入する、というのは認めたくても認められない、というのが我が家での見解。
おまけに言えば、そのための費用。今回の開発に対して支払われる報酬はそれほど多くない。一台のマシンを買うこともできない程度しか支払われない。
かといって、この仕事、受けないわけにもいかない事情があるため、なんとかしようと色々と考えてみた。
この時点(2014年1月)での我が家の状況を整理する。
・Windowsマシンは1台。OSはWin7/Office2003。常時電源を入れておく必要がある。
・Macは1台。OSはLion(10.7)。
・Office2013は持っている(Office365のサブスクリプション)。
ここで考えられる方法はいくつかあった。
1. WindowsマシンにOSを複数入れ、利用の都度切り替えて作業する
2. MacのBootcamp機能でWindowsを入れる(もしくはWindowsのみインストールする)
3. Macに「仮想化」ソフトウェアを導入、Windowsとの共存状態にする
1については、正直にいって面倒なので却下。特に、Radikoの録音予定時間に仕事をしていることがあると録音できないし、だからと言って録音するためのツールを両方のOSに入れておく、というのもちょっと違う気がしていた。
2(Bootcamp)に関しては、普段Mac使いとしてはベストな方法ではある、のだが、これまた「切り替える」という作業が面倒なことは事実。iPhoneとの同期を取ったり、iTunesで音楽でも聴きながら作業、というのができなくなるのでこれも却下。Windowsマシンにするなんてのは論外。
となると、3が最適解に思えてくる。実は以前にこの環境での作業をしていたことがあった。その時はMacのノートPC(Macbook Air:この時点では壊れており使えない状況だった)を使っていたのだが、動作が非常に重くて使い物にならない(特に開発については)、と感じていた。
そこで「仮想化」について色々と調べてみると、OSを複数同時に起動させる方法がある、ということに気がついた。いわゆる「仮想化プラットフォーム」である。これであれば、1台のマシンに2つのOS(および異なるバージョンのOffice)をインストールすることができ、かつどちらも起動した状態にすることができるのだ。
また、そもそもWindows用に使っていたマシンはサーバ用途で使えるスペックであり(しかも拡張性が高く、まだ拡張の余地は残されている)、仮想化に耐えうると判断した。
ということで、ちょっとマニアックな「仮想化」という環境を我が家で構築することになったのだが、実際の環境構築に至るまでの話や、その後の状態、今後の展開については後日改めて・・・。
0 件のコメント:
コメントを投稿