Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
【地域おこし勉強会】仮想化技術入門
Search
hirotask
October 30, 2023
0
40
【地域おこし勉強会】仮想化技術入門
hirotask
October 30, 2023
Tweet
Share
More Decks by hirotask
See All by hirotask
【備忘録】ニューラルネットワークとはなにか
hirotask
0
17
【地域おこし勉強会 第3回】ソフトなソフトウェアを作る【2023_10_25】
hirotask
0
21
【地域おこし勉強会 第2回】Git勉強会【2023/10/18】
hirotask
0
30
【Tech Community LuMo】第1回 バックエンド勉強会
hirotask
0
24
【2023/04/28 東北Tech道場】東北Tech道場に入ったら いつの間にかAndroiderになっていた話
hirotask
0
70
エンジニアもパワポを使って アウトプットしたほうが良い
hirotask
0
120
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
51
4.9k
Designing the Hi-DPI Web
ddemaree
280
34k
Building Adaptive Systems
keathley
38
2.2k
A Tale of Four Properties
chriscoyier
156
23k
Build The Right Thing And Hit Your Dates
maggiecrowley
32
2.4k
Practical Orchestrator
shlominoach
186
10k
Unsuck your backbone
ammeep
668
57k
Faster Mobile Websites
deanohume
304
30k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
RailsConf 2023
tenderlove
29
880
Documentation Writing (for coders)
carmenintech
65
4.4k
Transcript
仮想化技術入門 波紫寛斗(はし)
目次 • 勉強会のゴール • 仮想化とは • 仮想マシン型仮想化技術 • コンテナ型仮想化技術 •
仮想マシンとコンテナによって作られるクラウドサービス
勉強会のゴール • 仮想化技術の目的を理解する • 仮想マシン型仮想化技術について理解する • コンテナ型仮想化技術について理解する
仮想化とは
仮想化とは ソフトウェアによって、以下のものを擬似的に作る技術 • アプリケーション • アプリケーション実行環境 • ストレージ • ネットワーク
• CPU、メモリ等のハードウェアリソース なぜそんな技術が必要なの?
仮想化を行う目的 • 拡張性を高める • 移行性を高める • ハードウェア資源の有効活用 つまり「効率的に資源を利用して楽に ソフトウェアを拡張・移行する」ために 仮想化技術は必要なんだね!
仮想化の種類 仮想マシン型仮想化技術 コンテナ型仮想化技術 物理機器(ハードウェア) OS(Windows等) 仮想マシン型仮想化ソフト 仮想OS 仮想OS アプリ アプリ
物理機器(ハードウェア) OS(Windows等) コンテナ仮想化ソフト コンテナ コンテナ
仮想マシン仮想化とコンテナ仮想化が仮想化する領域 物理機器(ハードウェア) OS(Windows等) アプリ 仮想マシン型仮想化 コンテナ型仮想化
仮想マシン型仮想化技術
仮想マシン型仮想化技術とは • 物理コンピュータと同じ機能を有する仮想マシンを作成 する技術 • 仮想マシン1つに対して、ハードウェアのリソースの設定 ができる ◦ 例)CPUは何コア使用する?メモリは何 GB使用する?
• ホストOSがいらないハイパーバイザー式も存在する(ハ イパーバイザー式と比較して、通常の仮想マシンをホス ト式という場合もある) 物理機器(ハードウェア) OS(Windows等) 仮想マシン型仮想化ソフト 仮想OS 仮想OS アプリ アプリ
仮想マシンのメリット・デメリット メリット デメリット • セキュリティ面で安心 • コスト削減 • 複数のOSで簡単にシステム検証で きる
• ハードウェアリソースの割当が柔軟 に行える • 物理環境よりも性能が劣る • 仮想技術を理解した人材が必須 • 場合によってはコストが高くなる
有名な仮想マシン型仮想化ソフトウェア ホスト式仮想マシン • VMWare vSphere • VMWare Player • Oracle
VirtualBox • etc… ハイパーバイザー式仮想マシン • Proxmox VE • VMWare vSphere Hypervisor • Hyper-V • Citrix XenServer • etc…
コンテナ型仮想化技術
コンテナ型仮想化技術とは • アプリケーションとそのアプリケーションを動作させ るのに必要な依存性のみを入れたコンテナを作成 する技術 • コンテナには以下の特徴がある ◦ コンテナ環境の変更・障害はホストOSに影響しない ◦
ホストOSのカーネル(OSに一番近い部分のソフト ウェア群)はコンテナに含まれない ◦ 物理リソースの割当可能 ◦ コンテナをまとめて管理できるツール(オーケストレー ションツール)も存在する 物理機器(ハードウェア) OS(Windows等) コンテナ仮想化ソフト コンテナ コンテナ
コンテナ型のメリット・デメリット メリット デメリット • 軽量 • 拡張性 • 移行性 •
オーケストレーションツールによる管 理・監視 • セキュリティリスクが高い • 仮想技術を理解した人材が必須 • アプリケーションごとにコンテナを作 成できるが、複雑化しやすい
有名なコンテナ型仮想化ソフトウェア Docker Podman
コンテナを複数管理するツール • オーケストレーションツール:コンテナを複数管理するツール • いろいろなオーケストレーションツールが存在
仮想マシンとコンテナによって 作られるクラウドサービス
クラウドとは • クラウド:インターネット経由で以下のようなITリソースをオンデマンドで使用すること ができる(注文したら使用できる)サービス ◦ コンピューティング ◦ データベース ◦ ストレージ
◦ アプリケーション クラウドは技術ではなく、サービスである
クラウドのデプロイモデル 20 クラウド ハイブリッド オンプレミス クラウドで開発~デプロイまで行う、または 既存のインフラからクラウドに移行するモ デル。 クラウドのメリットをフルに利用することが できる。
クラウドリソースと、クラウドにないリソース との間でアプリケーションを連携するモデ ル。 例えば、社内とクラウドを連携させて一つ のシステムとして提供する場合などがこれ に該当する。 オンプレミスに仮想化技術を用いてクラウ ド環境を作り、そこにデプロイするモデル。 「プライベートクラウド」と呼ばれることもあ る。 このデプロイ手法はクラウドのメリットを多 く吸収できないが、運用コストが安くなる ケースもある。
クラウドのデプロイモデル 21 クラウド ハイブリッド オンプレミス クラウドで開発~デプロイまで行う、または 既存のインフラからクラウドに移行するモ デル。 クラウドのメリットをフルに利用することが できる。
クラウドリソースと、クラウドにないリソース との間でアプリケーションを連携するモデ ル。 例えば、社内とクラウドを連携させて一つ のシステムとして提供する場合などがこれ に該当する。 オンプレミスに仮想化技術を用いてクラウ ド環境を作り、そこにデプロイするモデル。 「プライベートクラウド」と呼ばれることもあ る。 このデプロイ手法はクラウドのメリットを多 く吸収できないが、運用コストが安くなる ケースもある。
プライベートクラウドはどうやって作られるのか クラウド • 必要なときに必要な分だけ、サービスを使用できる • 必要なときに必要な分だけ、サーバーを立てれば良い • サーバーを仮想化すれば、簡単に構築ができる 仮想マシン&仮想コンテナを活用して、 マシンおよびアプリケーションを仮想化すれば、クラウドの要件を満たす
プライベートクラウドを実際に作った人たち • 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
参考資料 • 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