現在のシステム開発・運用に欠かすことのできない仮想化技術とコンテナ技術について、その基本をわかりやすく解説する図解本です。サーバ仮想化、ネットワーク仮想化について解説するとともに、現在の開発者には必須とも言えるコンテナ技術と、そのデファクトスタンダードであるDockerとKubernetesについて解説します。関連する用語を一通り知ることのできる、1冊目の入門書としてふさわしい内容です。
■第1章 仮想化の基礎知識
01 仮想化とは
~物理構成にとらわれない柔軟性と可用性
02 仮想化の種別
~サーバー仮想化とネットワーク仮想化
03 仮想化のメリットとデメリット
~効率・運用性から見た物理環境との比較
04 仮想化とクラウド
~クラウドは仮想化によって支えられている
05 クラウドのセキュリティ
~安全性は高いがクラウドならではのリスクもある
■第2章 仮想化のしくみと技術
06 サーバー仮想化のしくみ
~物理サーバーに複数の仮想サーバーを構築
07 ホストOS型仮想化
~ホストOS上で複数のゲストOSが動作
08 ハイパーバイザ型仮想化
~ホストOSを必要としないサーバー仮想化
09 コンテナ型仮想化
~アプリケーションごとに独立した空間を構築
10 クラウドのサーバー仮想化
~主要クラウドのサーバー仮想化サービス
11 ネットワーク仮想化のしくみ
~物理構成とは異なる論理的なネットワークを構築
12 VLAN
~仮想的なLAN環境を構築
13 オーバーレイネットワーク
~VLANの弱点を克服するための技術
14 VPN
~仮想的な専用線を構築する技術
15 SDN
~ソフトウェアによってネットワークを定義
16 NFV
~ネットワーク機器の機能をソフトウェアで実現
17 SD-WAN
~拠点間の接続を一元管理
18 クラウドのネットワーク仮想化
~主要クラウドのネットワーク仮想化サービス
■第3章 コンテナ技術の基礎知識
19 コンテナ技術の歴史
~意外と古いコンテナ技術の起源
20 コンテナ技術のメリット
~仮想サーバーを手軽に構築できる
21 DevOpsとコンテナ技術
~開発と運用のスムーズな連携を手助け
22 主要なコンテナ技術
~Docker以外のさまざまなコンテナ技術
23 マイクロサービス
~コンテナと相性がよい設計手法
24 コンテナとサーバーレスの比較
~サービス開発の大きな2つの流れ
■第4章 コンテナ型仮想化ソフトウェア「Docker」
25 Dockerとは
~コンテナ技術のデファクトスタンダード
26 Dockerが注目される理由
~Dockerの歴史と発展を振り返る
27 Dockerコンテナ
~外部から影響を受けない独立した環境
28 コンテナイメージ
~コンテナを実行するためのテンプレート
29 コンテナのライフサイクル
~コンテナの作成から削除まで
30 Dockerデーモン
~Dockerエンジンを支える最重要要素
31 コンテナとプロセス
~プロセスごとにコンテナを分けるメリット
32 名前空間
~作業空間を分離するためのしくみ
33 差分管理
~Dockerの高速なデプロイを支えるしくみ
34 Swarm mode
~クラスタを管理する機能
35 主要なDockerコマンド
~必須コマンドのポイントを紹介
36 Docker Hub
~コンテナイメージを共有できるサービス
■第5章 コンテナオーケストレーションツール「Kubernetes」
37 コンテナオーケストレーション
~コンテナを管理する際に必要な作業とは
38 Kubernetesとは
~コンテナの管理・運用を自動化するツール
39 ポッド
~Kubernetesがコンテナを管理する単位
40 デプロイメントコントローラ
~オーケストレーションを支える最重要要素
41 サービス
~コンテナへアクセスするための窓口
42 flannel
~コンテナ間の相互アクセスを支える技術
43 負荷分散と死活監視
~システムの可用性を向上させるしくみ
44 スケーリング
~システムの性能を向上させるしくみ
45 主要なKubernetesコマンド
~必須コマンドのポイントを紹介
46 自動ビルド
~イメージ化からデプロイまでの手順を自動化
47 マルチクラウド
~複数クラウド併用時のKubernetes
48 Kubernetesのアーキテクチャ
~各ノードで動作するコンポーネント
■第6章 クラウドのコンテナサービス
49 クラウドのコンテナ技術対応状況
~主要クラウドのさまざまなコンテナサービス
50 Amazon ECS
~AWSのコンテナオーケストレーションサービス
51 Amazon EKS
~AWSのKubernetesサービス
52 AWS Fargate
~AWSのサーバーレスなコンテナ実行環境
53 GKE
~GCPのKubernetesサービス
54 Cloud Run
~GCPのサーバーレスなコンテナ実行環境
55 AKS
~AzureのKubernetesサービス
56 ACI
~Azureのサーバーレスなコンテナ実行環境
57 Docker Enterprise
~一元管理でマルチクラウドを実現