2019年9月22日日曜日

2019年9月22日

今回のテーマは「仮想化」です。
SLユーザーの私達にとって「仮想」は馴染み深い単語ですけれど、なんとなく漠然としていて他人にうまく説明できないものでもありますよね。

でも、この「仮想化」って現代の情報化社会では基幹技術でもあるので既に私達は生活のあらゆる面でその恩恵を受けています。
※応用・事例紹介を中心にまとめているので技術寄りな解説は省いています。

今回は仮想世界・仮想現実…のような意味としての仮想ではなく、一般の人に利用されている仮想… サーバーやシステムの仮想化について取り上げます。

 1  Second Lifeでの仮想サーバー(つまりシムです)

と、いうことで先ずはSLユーザーの私達がいつも触れている仮想化についてです。
・・・・シムです。

シムが一台のサーバマシンに複数押し込められていることはご存知だと思います。
1つのサーバマシンにフルシムが2つとか、Homesteadシムが8つ収容されているとか…のことです。
現在はフルシム8つとかGAMEシムは4つとかHomesteadシムならば32とかサーバマシンの能力上昇に伴ってその収容数も増えていっています。
シムがいくつ収容されているかは機材(そのサーバー性能)によっても収容数が異なるのでこの数自体はあんまり意識する必要はありませんが、ここで大事なことはハードウェアとしての1台のサーバマシン上に複数のシムが展開されているということです。

このように…1台のサーバマシン上に複数の(サーバー)環境を構築することをサーバーの仮想化と呼びます。



 2  仮想Webサーバー(専用レンタルサーバー)

仮想化はWeb作業などで専用レンタルサーバーを利用したことのる方にとっても大変身近なものとなっています。

遠隔リモート操作でWebサーバーにライブラリをインストールしたりサーバーのリスタートを行ったり自由自在に操作できますが、これは(ハードウェアとしての)サーバマシンを直接操作しているわけではなく、1台のサーバマシン上で稼働中の割り当てられたサーバーに対してその操作を行っていることになります。



 3  仮想化のメリット(なぜ仮想化するのか?)

1台のサーバマシンで複数のシステムを稼働させるメリット

 CPUパワーやメモリの無駄部分をなくして効率よく運用できる。
現在のCPUはマルチコア・マルチスレッドなので平行して複数の処理が行えます。
マルチタスクの概念自体は80年代以前からありますが、シングルコアだった時代はあくまで見かけ上でのマルチタスクでした。
でも現在は当時の仕組みや利点も残しつつマルチコアによるパワーをもって更に効率よく並列処理が行えるようになりました。


下の画像はCPU(コア)稼働率モニターの例:Mac Pro~16コアXeon。
半分のコアが休んでいます。

結論から言うと単一処理をやらせるには余力がありすぎる性能になったわけです。
つまり現在のCPUに単一作業(シングルタスク)を行わせるとほんの一部のみの活動でOKなので殆どの部分が休止状態となりマシンパワーを使い切っていない状態になります。

この無駄は… 費用をかけて導入したマシン…の一部を常に遊ばせていることになるのと同義です。
必要な数のWebサーバーの数だけハードウェアを買い揃える無駄。

そこに目をつけたのが仮想化という発想です。
現在のサーバーはほぼ全てが仮想システムで稼働している!…と考えてもさしつかえありません。



 4  仮想化の内部(要は複数のOSを同時に動かす仕組み)

サーバーの仮想化と言うとやや曖昧さがあるので、少し踏み込んだ解説を行っておきます。
先ず仮想システムとはOS自体を任意の数だけ同時に動かしているということです。

これはMacユーザーではお馴染みのParallels Desktopの動作をイメージするとわかりやすいと思います。
MacのOS上にLinuxやWindows・ChromeOS・OS/2・MS-DOS…更には別バージョンのMacOSを乗せて動かすものですが仮想化で成り立っています。


更に解説を進めますが仮想化には次の2つの方法があります。

■ 仮想マシン(VM : virtual Machine)
VMは仮想化ソフトウェアによって仮想レイヤーを作り、その上に任意の(複数の)OSをインストールします。
利点:載せられるOSは任意に選べます。特に制限はありません。


■ 論理パーティショニング(LPAR : Logical Patitioning)
一方、LPARはハードウェアに直接仮想化技術が組み込まれていてオーバーヘッドが少なくアプリケーションの動作も速いですが、載せられるOSは限定されます。
利点:OSが直接ハードウェアにアクセスできるためアプリケーションの動作が速い。




 5  通信ネットワークの仮想化(通信インフラをソフトウェアで構築)

 そしてこれから出てくる新しい話として…
仮想化の恩恵を受けている!と私達が身近に実感できるものが近々登場します。

通信ネットワークの仮想化は流れとして今後デファクトスタンダードになりますが、現在運用しているネットワークからの切り替えにそれなりの移行期間は必要なので世界中の全キャリアの全ネットワークが仮想化されるのは数年先になると思います。

これらの事情から通信キャリア後発の楽天モバイルが先行することになります。
楽天モバイルでは完全仮想化クラウドネイティブネットワークと名付けられています。

今まで通信システムの構築には膨大な数の各種専用機器が必要で通信障害(主に交換器故障率)を一定以下に抑えるのが事実上困難でした。
その大部分をソフトウェアで行うことによりハードウェアユニット点数に伴って増える故障率を直接低減させることができ、また低コスト化も期待できます。
これを通信ネットワークの仮想化と呼びます。


交換機・内部の移り変わり(仮想化まで)

【電話交換機】
大正15年頃までは交換手による電話交換機が使われていました。



【リレー】
膨大な数の電磁リレーを使って交換機を作っていました。
クロスバ交換機と言います。

ステップバイステップ自動交換機はこのあたりから始まります。




【半導体・トランジスタ】
電磁リレーによるスイッチングはやがて半導体(トランジスタ)に置き換えられ応答速度の向上と省スペース化・低消費電力へ。
このあたりから電子交換機と呼ばれはじめています。



 

【半導体・IC】
電子交換機〜後期はデジタル交換機時代となっています。




【仮想化】
そして仮想化(ソフトウェアシミュレーション)の時代に入っていきます。

高価な専用機器の導入・保守及び基地局での専有面積の部分にコストをかけなくて良いためシステム構築・運用について大幅なコスト削減が見込めます。
これは私達エンドユーザーのメリットとしては第一に毎月の通信費が安く抑えられる利点、そして第二に通信品質の安定化へ結びつきます。
また今後の5G移行についても大規模な機器交換は必要なくソフトウェアアップデートで対応することになります。


仮想化…広義には仮想システムとも呼びますが、つまりこれは
ソフトウェアでシミュレーションを行って必要な機能を得るもの
…と理解すれば概ねオッケーだと思います。




 6  番外・他例(その他のソフトウェアシミュレーション)

 コンピューター上でシミュレーションを行って専用ハードウェアの代わりを行わせるものは他にも例がたくさんあります。特に音楽/楽器関係に多いです。

※仮想レイヤーが存在しているわけではありませんからこれらの例は仮想化・仮想システムとは呼びませんコンピュータシミュレーションで既存のハードウェアを置き換えたものなので、仕組み・用途は別としてコンピューティングパワーの有効利用という部分では似ています。

【ソフト音源】
GarageBandに入っているソフト音源は、ソフトウェアで波形データが管理されているわけですからコンピュータシミュレーションと捉えて間違いありません。
ソフトシンセ・バーチャルシンセとも呼ばれています。
90年代半ばに登場した商用ソフト音源は現在では普通に音源として選択肢になります。
尚、往年のシンセサイザーの殆どはソフト音源化されています。

Macユーザーではお馴染みのQuickTimeですが、1994年登場QuickTime2.0及びそれ以降のバージョンは500以上の楽器音源を含んでいます。

【環境自体をソフトウェアに置き換えた例】
そもそもGarageBandのようなDAW(デジタルオーディオワークステーション)もかつて複数の専用機材で構成されていた音楽制作環境をソフトウェアシミュレーションに置き換えたものです。
※現在のDAW(DTM)に至る最初の段階にシンクラビアが存在しました。
※同じようにDTV・DTPもかつてあった複数の専用機材をソフト化したものです。

【動画】これはPCの形をしていない(普通にキーボードの姿をしている)例ですが、管楽器・弦楽器の物理演算シミュレーションマシンです。
1993年の楽器ですが本体内に特定の音源は持っていません
物理モデル音源と言いますが、音を出す仕組みや構造をリアルタイムで仮想的に計算式で構築して音を出します。

(動画再生時間 1分24秒)説明箇所のみ再生するように貼っています。


0 件のコメント:

コメントを投稿