『図解まるわかり 仮想化のしくみ』2024/5/14
鈴木 健治 (著), 宗村 拓実 (著), 丸山 勝康 (著), 欧 肖 (著)

 仮想化技術の基本から応用までを学びたい人を対象に、仮想化の基本的な知識からその活用方法までを解説してくれる本で、主な内容は次の通りです。
第1章 仮想化の基本~仮想化の概要を知ろう~
第2章 サーバーの仮想化~プログラムを効率よく処理するしくみ~
第3章 ネットワークの仮想化~通信を分けたりつないだりするしくみ~
第4章 ストレージの仮想化~データの保管庫を効率よく使うしくみ~
第5章 デスクトップの仮想化~作業環境を集約し安全に効率的に使う~
第6章 仮想化による効用~クラウド環境で提供される仮想化サービス~
第7章 仮想化とDX~仮想化はこうしてDXに活用されている~
第8章 仮想化環境の操作~構成ファイルで仮想化環境を制御する~
第9章 仮想化環境の使い方~クラウド環境における仮想化サービスの使い方~
第10章 設計方法・移行方法と注意ポイント~落とし穴、トラブルシューティング、注意ポイントと引っ越し方法~
第11章 仮想化の運用~仮想化環境利用時に考慮すること~
第12章 仮想化の未来~現在の仮想化の課題と仮想化の動向~

「第1章 仮想化の基本」では、「仮想化」について次のような解説がありました。
「仮想化とは、一般的に物理的なコンピュータリソースを抽象化し、複数の独立した環境を作り出す技術のことを指します。」
 なお本書での仮想化の定義は、次の通りだそうです。
・利用者が物理的資源を取り扱いやすくするために分割または統合する技術
・実物がなくてもまるで実物があるかのように動作を模倣する技術
 そして仮想化のメリットとしては……
1)俊敏性
2)効率性
3)独立性
 ……の3つがあります。(ちなみに独立性とは、「仮想化により作成したものは互いに独立しコントロールできる」ということです)。
 そして第2章から第5章までは、サーバー、ネットワーク、ストレージ、デスクトップの仮想化についての概説があります。
「仮想マシンは簡単に作れ、簡単に削除できる」という大きなメリットがあり、「第7章 仮想化とDX」には、「DXを進めることは、予測が難しい中でのシステム構築となるため、高い柔軟性・俊敏性を持つ仮想化環境が適している。」と書いてありました。
 また日本政府も、2018年に政府情報システムにおけるクラウドサービスの利用に係る基本方針を公表し、「クラウド・バイ・デフォルト原則(クラウドサービスの利用を第一候補として、その検討を行うものとする)」を謳っています。
 ……今後は間違いなく「クラウド」が主流となっていくのでしょう。
「第6章 仮想化による効用」には、次のようなことが書いてありました(ごく一部の抜粋紹介です)
・クラウドプロバイダはプライベートネットワーク、パブリックネットワーク、マルチクラウドネットワーク、ハイブリッドクラウドネットワークなどの多様なネットワークサービスを提供しており、システム特性にあった構成を柔軟に構築可能である
・クラウドサービスを利用するときに、データの特性、用途、セキュリティ対策や可用性などを考慮する必要がある
・クラウドデータベースを利用する際に、アクセス制限、アップデート時のテスト、移行時のプロセス、データベース間の互換性、障害時の復旧策などの考慮が必要である。
・サーバーなどのインフラ機器をクラウドプロバイダに管理されることで、開発者はアプリケーションなどの開発に集中できるのがサーバー管理レスサービスの大きなメリット
・クラウド型にすることで得られる最大のメリットは保有する物理リソース制限からの解放
・クラウドサービスを利用すれば、利用者は場所を問わずにアプリケーションを利用できます。
   *
 そして「第11章 仮想化の運用」では……
・仮想化技術の利用度の高さが逆に混乱を招くことがあるので、仮想化環境の実装・運用にはガイドラインが必要となる。
・サービスカタログを用意することで、利用開始までのリードタイムの短縮や仮想化環境を管理しやすくなるといった効果がある。
・クラウド環境ではクラウド側のライフサイクルに合わせてバージョンアップなどの環境変更の対応が必要になるので、環境変更をイベントに組み込んでおくことで対応する
・クラウド環境において想定外のコストが発生していないかを確認する必要がある
・クラウドでは初期投資が不要で使った分だけ課金されるため、リソースの課金状態の確認とコストの継続最適化が必要である。
   *
 さらに「第12章 仮想化の未来」では、未来は「Wasm+WASI」になるかもしれないという予想も書いてありました。ちなみにこれは……
・「いつでもどこでも」を実現するためのしくみの1つにJavaScriptがある
・JavaScriptを補完するために生まれたWebAssembly
・WebAssembly(Wasm)はブラウザ内でネイティブコード相当の性能でプログラムを実行できる
・WebAssemblyはサンドボックス環境を提供し、Webブラウザ内でコードの安全な実行ができる
・WebAssembly System Inteface(WASI)によりWasmからOSのリソースにアクセスできる
・WASIやWasm向けのシステムコールのインタフェースを実現させることでWasmはコンピューティングの未来となり得る
・Wasmランタイム+WASIのしくみは実行ファイルがコンパクトであることから、パッケージの脆弱性の影響を受けにくく攻撃耐性が高い
  *
 ……サンドボックス環境が使える他、実行性やセキュリティにも優れたもののようです。
『図解まるわかり 仮想化のしくみ』……仮想化の仕組みについて、見開きで1つのテーマを取り上げて、図解を交えて総合的に解説(概説)してくれる本でした。内容が多岐に渡っているので、この本一冊ですべてを理解することは出来ないと思いますが、全体の概要をざっと理解するのに役立つと思います(専門用語が多いので、IT技術者向けの本だと思います)。仮想化がどんなものかを理解したい方、仮想化について新人に説明したいと考えている方は、ぜひ読んでみてください。
   *    *    *
 なお社会や科学、IT関連の本は変化のスピードが速いので、購入する場合は、対象の本が最新版であることを確認してください。
<Amazon商品リンク>