Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
gVisorを使おう!/ Let's use gVisor!
Search
Kattyan
July 13, 2023
Programming
0
190
gVisorを使おう!/ Let's use gVisor!
Kattyan
July 13, 2023
Tweet
Share
More Decks by Kattyan
See All by Kattyan
QPACK って何?/What is QPACK?
sou1118
0
720
スライド操作用リモコンを作った話/Making-a-remote-control-for-slide-operation
sou1118
0
370
マイナンバーカードを用いた認証について/Authentication-using-the-My-Number-Card
sou1118
0
800
マイナンバーカードの有効利用法を探る / Finding-ways-to-use-my-number-card
sou1118
0
310
少し幸せになれるスマートなリモコンを作る / Making-a-Smart-remote-controller
sou1118
0
360
Other Decks in Programming
See All in Programming
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
140
dotfiles 式年遷宮 令和最新版
masawada
1
780
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
130
これならできる!個人開発のすゝめ
tinykitten
PRO
0
110
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
150
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
180
関数実行の裏側では何が起きているのか?
minop1205
1
700
TUIライブラリつくってみた / i-just-make-TUI-library
kazto
1
390
Integrating WordPress and Symfony
alexandresalome
0
160
チームをチームにするEM
hitode909
0
340
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
3
810
TestingOsaka6_Ozono
o3
0
160
Featured
See All Featured
Facilitating Awesome Meetings
lara
57
6.7k
KATA
mclloyd
PRO
33
15k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
The Invisible Side of Design
smashingmag
302
51k
Writing Fast Ruby
sferik
630
62k
YesSQL, Process and Tooling at Scale
rocio
174
15k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
A Tale of Four Properties
chriscoyier
162
23k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Transcript
gVisorを使おう! Kattyan 1
自己紹介 インターネット技術とネットワークセキュリティ,低いところに興味 GitHub: sou1118 自己紹介 2
コンテナとは? コンテナは,アプリケーションとその依存関係をパッケージ化し,独立 した環境で実行するための技術 コンテナは分離された環境を提供し,これによりアプリケーションは他 のシステムから独立して動作 NameSpaceを使用して,この分離された空間に対するアクセス制御 を行う cgroupsを使用して,リソースの制限(CPU,メモリなど)を行う コンテナについて 3
コンテナランタイムとは? コンテナの作成と管理を担当するソフトウェア 以下の4層で構成される 1. 管理コマンド 2. 高レベルコンテナランタイム 3. 低レベルコンテナランタイム 4.
Linux カーネル コンテナランタイムについて 4
例えば,Dockerを使用した場合 1. Docker CLI 2. containerd 3. runC 4. Linux
カーネル 5
低レベルコンテナランタイムとは? Linux カーネルの上で直接コンテナを作成,実行 ホスト OS の特権権限が必要 runC に脆弱性があると,ホスト OS の特権権限が侵害される可能性
がある 最近では,runC を置き換える動きが活発 高レベルコンテナランタイムから低レベルコンテナランタイムへの通信 は,OCI (Open Container Initiative) に基づく gVisor, Firecracker, Kata などが低レベルコンテナランタイムの例と して挙げられる 低レベルコンテナランタイムについて 6
gVisorとは? runC の代わりとして開発された低レベルコンテナランタイム OCI に準拠 システムコールの大部分を,ホストカーネルに直接渡さずに,gVisorの ゲストカーネルで実行 コンテナがホストから完全に分離(サンドボックス化) Go 言語で書かれており,メモリ安全を保証
GCP の App Engine や Cloud Run での実用経験があり Dockerで利用する場合は, daemon.json ファイルを編集することで設 定可能 gVisorについて 7
おしまい 8