$30 off During Our Annual Pro Sale. View Details »

Getting Started to CRIU

Getting Started to CRIU

@ジュジュ

March 07, 2019
Tweet

More Decks by @ジュジュ

Other Decks in Technology

Transcript

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  7. 実際につかってみる

    View Slide

  8. もう一回リストアする!

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide