Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kubernetes Operator implementation and melancholy

nwiizo
January 24, 2021

Kubernetes Operator implementation and melancholy

July Tech Festa 2021 winter #推しテク総選挙
https://techfesta.connpass.com/event/193966/
公開用_タイムスケジュール・講演内容【JTF2021w】
https://docs.google.com/spreadsheets/d/1WNrkHBpaNaYeCH_7gWtZX5OGK2FU40xTxW1NHKQq444/edit#gid=1303046849

nwiizo

January 24, 2021
Tweet

More Decks by nwiizo

Other Decks in Technology

Transcript

  1. View Slide











  2. View Slide








  3. View Slide





  4. View Slide








  5. View Slide

  6. https://kubernetes.io/docs/concepts/overview/components/#kube-controller-manager


    View Slide




  7. View Slide

  8. View Slide






  9. Table: Human

    View Slide




  10. https://kubernetes.io/docs/concepts/extend-kubernetes/operator/

    View Slide

  11. View Slide


  12. ”Site Reliability Engineering Eliminating Toil” より 引用。

    View Slide






  13. View Slide





  14. Level Triggering and Reconciliation in Kubernetes https://hackernoon.com/level-triggering-and-reconciliation-in-kubernetes-1f17fe30333d
    ※ のように漏れが発生する場合がある
    これから学ぶKubernetesのReconciliation Loop https://speakerdeck.com/yosshi_/korekaraxue-hukubernetesfalsereconciliation-loop

    View Slide






  15. Operator Capacity Levels https://sdk.operatorframework.io/docs/advanced-topics/operator-capabilities/operator-capabilities/

    View Slide

  16. View Slide









  17. View Slide

  18. View Slide

  19. コードの雛型/ビルドファイル/テスト
    環境構築スクリプトなど開発に必要な一
    式を生成してくれるSDK
    Kubebuilder のサブプロジェクトで
    マニュフェストやコードを生成
    controller 開発に必要なライブラリー
    セットOperatorSDKでも利用
    Kubernetes のClient ライブラリで、
    controller-runtime様々な処理で利用さ
    れる

    View Slide







  20. https://godoc.org/github.com/kubernetes-sigs/controller-runtime/pkg

    View Slide







  21. KubeBuilder Design Principles https://github.com/kubernetes-sigs/kubebuilder/blob/master/DESIGN.md
    api/YY/XX_types.go

    View Slide

  22. View Slide








  23. View Slide





  24. View Slide




  25. View Slide















  26. View Slide




  27. View Slide










  28. View Slide









  29. https://kubernetes.io/blog/2019/03/21/a-guide-to-kubernetes-admission-controllers/

    View Slide








  30. View Slide






  31. View Slide

  32. View Slide











  33. View Slide



  34. View Slide












  35. View Slide








  36. View Slide

  37. View Slide

  38. ※裏側では後述する技術を使いまくってる

    View Slide

  39. View Slide

  40. View Slide

  41. ”Site Reliability Engineering Eliminating Toil” より 引用。

    View Slide

  42. View Slide

  43. View Slide

  44. View Slide

  45. View Slide