Slide 1

Slide 1 text

仮想化技術入門 波紫寛斗(はし)

Slide 2

Slide 2 text

目次 ● 勉強会のゴール ● 仮想化とは ● 仮想マシン型仮想化技術 ● コンテナ型仮想化技術 ● 仮想マシンとコンテナによって作られるクラウドサービス

Slide 3

Slide 3 text

勉強会のゴール ● 仮想化技術の目的を理解する ● 仮想マシン型仮想化技術について理解する ● コンテナ型仮想化技術について理解する

Slide 4

Slide 4 text

仮想化とは

Slide 5

Slide 5 text

仮想化とは ソフトウェアによって、以下のものを擬似的に作る技術 ● アプリケーション ● アプリケーション実行環境 ● ストレージ ● ネットワーク ● CPU、メモリ等のハードウェアリソース なぜそんな技術が必要なの?

Slide 6

Slide 6 text

仮想化を行う目的 ● 拡張性を高める ● 移行性を高める ● ハードウェア資源の有効活用 つまり「効率的に資源を利用して楽に ソフトウェアを拡張・移行する」ために 仮想化技術は必要なんだね!

Slide 7

Slide 7 text

仮想化の種類 仮想マシン型仮想化技術 コンテナ型仮想化技術 物理機器(ハードウェア) OS(Windows等) 仮想マシン型仮想化ソフト 仮想OS 仮想OS アプリ アプリ 物理機器(ハードウェア) OS(Windows等) コンテナ仮想化ソフト コンテナ コンテナ

Slide 8

Slide 8 text

仮想マシン仮想化とコンテナ仮想化が仮想化する領域 物理機器(ハードウェア) OS(Windows等) アプリ 仮想マシン型仮想化 コンテナ型仮想化

Slide 9

Slide 9 text

仮想マシン型仮想化技術

Slide 10

Slide 10 text

仮想マシン型仮想化技術とは ● 物理コンピュータと同じ機能を有する仮想マシンを作成 する技術 ● 仮想マシン1つに対して、ハードウェアのリソースの設定 ができる ○ 例)CPUは何コア使用する?メモリは何 GB使用する? ● ホストOSがいらないハイパーバイザー式も存在する(ハ イパーバイザー式と比較して、通常の仮想マシンをホス ト式という場合もある) 物理機器(ハードウェア) OS(Windows等) 仮想マシン型仮想化ソフト 仮想OS 仮想OS アプリ アプリ

Slide 11

Slide 11 text

仮想マシンのメリット・デメリット メリット デメリット ● セキュリティ面で安心 ● コスト削減 ● 複数のOSで簡単にシステム検証で きる ● ハードウェアリソースの割当が柔軟 に行える ● 物理環境よりも性能が劣る ● 仮想技術を理解した人材が必須 ● 場合によってはコストが高くなる

Slide 12

Slide 12 text

有名な仮想マシン型仮想化ソフトウェア ホスト式仮想マシン ● VMWare vSphere ● VMWare Player ● Oracle VirtualBox ● etc… ハイパーバイザー式仮想マシン ● Proxmox VE ● VMWare vSphere Hypervisor ● Hyper-V ● Citrix XenServer ● etc…

Slide 13

Slide 13 text

コンテナ型仮想化技術

Slide 14

Slide 14 text

コンテナ型仮想化技術とは ● アプリケーションとそのアプリケーションを動作させ るのに必要な依存性のみを入れたコンテナを作成 する技術 ● コンテナには以下の特徴がある ○ コンテナ環境の変更・障害はホストOSに影響しない ○ ホストOSのカーネル(OSに一番近い部分のソフト ウェア群)はコンテナに含まれない ○ 物理リソースの割当可能 ○ コンテナをまとめて管理できるツール(オーケストレー ションツール)も存在する 物理機器(ハードウェア) OS(Windows等) コンテナ仮想化ソフト コンテナ コンテナ

Slide 15

Slide 15 text

コンテナ型のメリット・デメリット メリット デメリット ● 軽量 ● 拡張性 ● 移行性 ● オーケストレーションツールによる管 理・監視 ● セキュリティリスクが高い ● 仮想技術を理解した人材が必須 ● アプリケーションごとにコンテナを作 成できるが、複雑化しやすい

Slide 16

Slide 16 text

有名なコンテナ型仮想化ソフトウェア Docker Podman

Slide 17

Slide 17 text

コンテナを複数管理するツール ● オーケストレーションツール:コンテナを複数管理するツール ● いろいろなオーケストレーションツールが存在

Slide 18

Slide 18 text

仮想マシンとコンテナによって 作られるクラウドサービス

Slide 19

Slide 19 text

クラウドとは ● クラウド:インターネット経由で以下のようなITリソースをオンデマンドで使用すること ができる(注文したら使用できる)サービス ○ コンピューティング ○ データベース ○ ストレージ ○ アプリケーション クラウドは技術ではなく、サービスである

Slide 20

Slide 20 text

クラウドのデプロイモデル 20 クラウド ハイブリッド オンプレミス クラウドで開発~デプロイまで行う、または 既存のインフラからクラウドに移行するモ デル。 クラウドのメリットをフルに利用することが できる。 クラウドリソースと、クラウドにないリソース との間でアプリケーションを連携するモデ ル。 例えば、社内とクラウドを連携させて一つ のシステムとして提供する場合などがこれ に該当する。 オンプレミスに仮想化技術を用いてクラウ ド環境を作り、そこにデプロイするモデル。 「プライベートクラウド」と呼ばれることもあ る。 このデプロイ手法はクラウドのメリットを多 く吸収できないが、運用コストが安くなる ケースもある。

Slide 21

Slide 21 text

クラウドのデプロイモデル 21 クラウド ハイブリッド オンプレミス クラウドで開発~デプロイまで行う、または 既存のインフラからクラウドに移行するモ デル。 クラウドのメリットをフルに利用することが できる。 クラウドリソースと、クラウドにないリソース との間でアプリケーションを連携するモデ ル。 例えば、社内とクラウドを連携させて一つ のシステムとして提供する場合などがこれ に該当する。 オンプレミスに仮想化技術を用いてクラウ ド環境を作り、そこにデプロイするモデル。 「プライベートクラウド」と呼ばれることもあ る。 このデプロイ手法はクラウドのメリットを多 く吸収できないが、運用コストが安くなる ケースもある。

Slide 22

Slide 22 text

プライベートクラウドはどうやって作られるのか クラウド ● 必要なときに必要な分だけ、サービスを使用できる ● 必要なときに必要な分だけ、サーバーを立てれば良い ● サーバーを仮想化すれば、簡単に構築ができる 仮想マシン&仮想コンテナを活用して、 マシンおよびアプリケーションを仮想化すれば、クラウドの要件を満たす

Slide 23

Slide 23 text

プライベートクラウドを実際に作った人たち ● https://ponzmild.hatenablog.com/entry/2021/11/16/205936 ● https://speakerdeck.com/unchamacom/toaruzi-zhai-sabafalsebian-qian -zi-zhai-sabaha-iizo ● https://logmi.jp/tech/articles/322215 ● https://www.slideshare.net/capsmalt/kubernetes-101916482 ● https://www.intellilink.co.jp/column/cld/2015/111900.aspx

Slide 24

Slide 24 text

参考資料 ● https://www.slideshare.net/zembutsu/introduction-to-docker-compose-and-swa rm ● https://news.mynavi.jp/techplus/article/zerocontena-7/ ● https://scrapbox.io/kompiro/Docker_container_vs_Docker_compose_vs_Dock er_swarm_vs_Kubernetes