Slide 1

Slide 1 text

CRIUで遊んでみた 2019/03/07 OthloTechLT大会@クックパッド 岡野兼也

Slide 2

Slide 2 text

$ whoami name: - 岡野兼也 - @ジュジュ belonging: - 名古屋大学 interest: - CloudNative - SRE dream: - 働かないこと hobbies: - 登山 - キャンプ

Slide 3

Slide 3 text

CRIU - Checkpoint and Restore In Userspaceの略称 - Linuxのアプリケーションの実行状態を Checkpointとして固めてRestoreできる

Slide 4

Slide 4 text

CRIUを使うとアプリが動いている状態の コンテナを走らせることができる!

Slide 5

Slide 5 text

Checkpoint $ docker checkpoint create ${container_name} ${checkpoint_name} - コンテナの今の状態を保存する - 作ったチェックポイントに基づいてリストアできる

Slide 6

Slide 6 text

Restore $ docker container start --checkpoint ${checkpoint_name} ${container_name} - チェックポイントから再実行をする - 何回でも同じチェックポイントから実行可能

Slide 7

Slide 7 text

実際につかってみる

Slide 8

Slide 8 text

もう一回リストアする!

Slide 9

Slide 9 text

解決できる問題① コンテナの起動がいくら早くても アプリの起動が遅ければ遅くなってしまう 初めからからアプリの状態を 記憶できているので爆速起動!!

Slide 10

Slide 10 text

解決できる問題② k8sがいくらうまいことやっているといっても ノードメンテのために落とすと影響あるよね… ファイルとして状態を持てるので ライブマイグレーションができる!!

Slide 11

Slide 11 text

ご清聴ありがとうございました ※CRIUはDockerのexperimentalな機能で、デフォルトでは使えません