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

Openstack을 쿠버네티스 네이티브하게 운영하는 방법

kakao
December 09, 2022

Openstack을 쿠버네티스 네이티브하게 운영하는 방법

#Kubernetes #OpenStack #OperatorPattern #자동화

Openstack은 기존까지 인프라 레벨에서 절차적 형태로 운영되어 왔습니다.
Kakao i Cloud에서는 Openstack을 포함한 모든 IT 자원을 Kubernetes-native한 방식으로 운영하고 있습니다.
본 세션에서는 Kubernetes Operator pattern을 사용하여 Openstack의 자원을 획기적으로 자동화하는 방법을 소개합니다.

발표자 : thor.huhji
카카오엔터프라이즈에서 퍼블릭 클라우드를 개발하고 있는 토르입니다. 클라우드 리소스를 자동으로 관리하는 커스텀 컨트롤러를 개발하고 있습니다.

kakao

December 09, 2022
Tweet

More Decks by kakao

Other Decks in Programming

Transcript

  1. ௿ۄ਋٘ജ҃ীࢲप೯غחTDBMBCMFೠগ೒ܻா੉࣌ $MPVEOBUJWFUFDIOPMPHJFTFNQPXFSPSHBOJ[BUJPOTUPCVJMEBOESVOTDBMBCMFBQQMJDBUJPOTJONPEFSO EZOBNJD FOWJSPONFOUTTVDIBTQVCMJD QSJWBUF BOEIZCSJEDMPVET$POUBJOFST TFSWJDFNFTIFT NJDSPTFSWJDFT JNNVUBCMF JOGSBTUSVDUVSF

    BOEEFDMBSBUJWF"1*TFYFNQMJGZUIJTBQQSPBDI ,VCFSOFUFT/BUJWF ௢ߡ֎౭झജ҃ীࢲҙܻغݴ௢ߡ֎౭झ੄੉੼ਸ־ܾࣻ੓חগ೒ܻா੉࣌ $MPVE/BUJWF https://github.com/cncf/foundation/blob/main/charter.md
  2. ௿ۄ਋٘ജ҃ীࢲप೯غחTDBMBCMFೠগ೒ܻா੉࣌ $MPVEOBUJWFUFDIOPMPHJFTFNQPXFSPSHBOJ[BUJPOTUPCVJMEBOESVOTDBMBCMFBQQMJDBUJPOTJONPEFSO EZOBNJD FOWJSPONFOUTTVDIBTQVCMJD QSJWBUF BOEIZCSJEDMPVET$POUBJOFST TFSWJDFNFTIFT NJDSPTFSWJDFT JNNVUBCMF JOGSBTUSVDUVSF

    BOEEFDMBSBUJWF"1*TFYFNQMJGZUIJTBQQSPBDI ,VCFSOFUFT/BUJWF ௢ߡ֎౭झജ҃ীࢲҙܻغݴ௢ߡ֎౭झ੄੉੼ਸ־ܾࣻ੓חগ೒ܻா੉࣌ $MPVE/BUJWF https://github.com/cncf/foundation/blob/main/charter.md
  3. /PEF&MJNJOBUF0QFSBUPS /&0 6OEFS$MPVE "; - " 0WFS$MPVE )ZQFSWJTPS 7. /&0QPE

    $POUSPMMFS $VTUPN3FTPVSDF )ZQFSWJTPS 7. ⚡ NJHSBUJPO
  4. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS /PEF$VTUPN3FTPVSDF $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS
  5. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS /PEF$VTUPN3FTPVSDF $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS 4IBSFE$MVTUFS
  6. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS /PEF$VTUPN3FTPVSDF $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS
  7. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS /PEF$VTUPN3FTPVSDF $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS
  8. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU
  9. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS
  10. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU
  11. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU
  12. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS /PEF$VTUPN3FTPVSDF $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU DSFBUF
  13. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS /&0 /PEF$POUSPMMFS $MVTUFS$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU /PEF$VTUPN3FTPVSDF OPEF OPEF OPEF 7. QPSU
  14. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS /&0 /PEF$POUSPMMFS $MVTUFS$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU /PEF$VTUPN3FTPVSDF OPEF OPEF OPEF 7. QPSU
  15. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS /&0 /PEF$POUSPMMFS $MVTUFS$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU /PEF$VTUPN3FTPVSDF OPEF OPEF OPEF 7. QPSU ⚡ 3FDPODJMF
  16. /&0T3FDPODJMF-PHJD $MVTUFS$POUSPMMFS OPEF DSFBUFEFMFUF FWFOU $SFBUF OFXOPEF$VTUPN3FTPVSDF $SFBUF"MM /PEF$VTUPN3FTPVSDF %FMFUF

    OPEF$VTUPN3FTPVSDF SFDPODJMF VQEBUF $MVTUFS$VTUPN3FTPVSDF 4UBUVT OPU&YJTUT OPEFKPJO OPEFEFMFUF
  17. /&0T3FDPODJMF-PHJD $MVTUFS$POUSPMMFS OPEF DSFBUFEFMFUF FWFOU $SFBUF OFXOPEF$VTUPN3FTPVSDF $SFBUF"MM /PEF$VTUPN3FTPVSDF %FMFUF

    OPEF$VTUPN3FTPVSDF SFDPODJMF VQEBUF $MVTUFS$VTUPN3FTPVSDF 4UBUVT OPU&YJTUT OPEFKPJO OPEFEFMFUF
  18. /&0T3FDPODJMF-PHJD $MVTUFS$POUSPMMFS OPEF DSFBUFEFMFUF FWFOU $SFBUF OFXOPEF$VTUPN3FTPVSDF $SFBUF"MM /PEF$VTUPN3FTPVSDF %FMFUF

    OPEF$VTUPN3FTPVSDF SFDPODJMF VQEBUF $MVTUFS$VTUPN3FTPVSDF 4UBUVT OPU&YJTUT OPEFKPJO OPEFEFMFUF
  19. /&0T3FDPODJMF-PHJD /PEF$POUSPMMFS OPEF FSSPS FWFOU SFDPODJMF HFU 0QFOTUBDL $MJFOU EJTBCMF

    $PNQVUF4FSWJDF NJHSBUF 7JSUVBM.BDIJOF EJTBCMF /FUXPSL"HFOU NJHSBUF QPSUT VOTDIFEVMF /PEF ESBJO 1PE 6OMBCFM /PEF VQEBUF /PEF$VTUPN3FTPVSDF 4UBUVT
  20. /&0T3FDPODJMF-PHJD /PEF$POUSPMMFS OPEF FSSPS FWFOU SFDPODJMF HFU 0QFOTUBDL $MJFOU EJTBCMF

    $PNQVUF4FSWJDF NJHSBUF 7JSUVBM.BDIJOF EJTBCMF /FUXPSL"HFOU NJHSBUF QPSUT VOTDIFEVMF /PEF ESBJO 1PE 6OMBCFM /PEF VQEBUF /PEF$VTUPN3FTPVSDF 4UBUVT 7JSUVBM.BDIJOF
  21. /&0T3FDPODJMF-PHJD /PEF$POUSPMMFS OPEF FSSPS FWFOU SFDPODJMF HFU 0QFOTUBDL $MJFOU EJTBCMF

    $PNQVUF4FSWJDF NJHSBUF 7JSUVBM.BDIJOF EJTBCMF /FUXPSL"HFOU NJHSBUF QPSUT VOTDIFEVMF /PEF ESBJO 1PE 6OMBCFM /PEF VQEBUF /PEF$VTUPN3FTPVSDF 4UBUVT 7JSUVBM.BDIJOF /FUXPSL1PSU
  22. /&0T3FDPODJMF-PHJD /PEF$POUSPMMFS OPEF FSSPS FWFOU SFDPODJMF HFU 0QFOTUBDL $MJFOU EJTBCMF

    $PNQVUF4FSWJDF NJHSBUF 7JSUVBM.BDIJOF EJTBCMF /FUXPSL"HFOU NJHSBUF QPSUT VOTDIFEVMF /PEF ESBJO 1PE 6OMBCFM /PEF VQEBUF /PEF$VTUPN3FTPVSDF 4UBUVT 7JSUVBM.BDIJOF /FUXPSL1PSU
  23. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS /&0 /PEF$POUSPMMFS $MVTUFS$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU /PEF$VTUPN3FTPVSDF OPEF OPEF OPEF 7. QPSU ⚡
  24. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS /&0 /PEF$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU /PEF$VTUPN3FTPVSDF OPEF OPEF OPEF 7. QPSU ⚡ $MVTUFS$POUSPMMFS
  25. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS /&0 /PEF$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU /PEF$VTUPN3FTPVSDF OPEF OPEF OPEF 7. QPSU ⚡ XBUDI SFNPUF OPEFTUBUVT $MVTUFS$POUSPMMFS
  26. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM $POUSPMMFS$MVTUFS DFMM 6OEFSDMPVE$MVTUFS 3JOH$MVTUFS /&0 /PEF$POUSPMMFS $MVTUFS$VTUPN3FTPVSDF ";$MVTUFSLVCFDPOGJH PQFOTUBDLBQJTFSWFS ";$MVTUFSLVCFDPOGJH TFDSFU /PEF$VTUPN3FTPVSDF OPEF OPEF OPEF 7. QPSU ⚡ XBUDI SFNPUF OPEFTUBUVT $MVTUFS$POUSPMMFS XBUDI OPEF KPJOEFMFUFE
  27. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM 6OEFSDMPVE$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS /PEF$VTUPN3FTPVSDF $MVTUFS$VTUPN3FTPVSDF JOGPSNFS LT$BDIF LT$MJFOU XPSLRVFVF" XPSLRVFVF# XBUDI
  28. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM 6OEFSDMPVE$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS /PEF$VTUPN3FTPVSDF $MVTUFS$VTUPN3FTPVSDF LT$MJFOU XPSLRVFVF" XPSLRVFVF# DIBOHFETQFD FORVFVF OBNFTQBDF OBNF EFRVFVF SFRVFVF JOGPSNFS LT$BDIF
  29. /PEF&MJNJOBUF0QFSBUPS /&0 "; - "DFMM "; - "DFMM "; -

    "DFMM 6OEFSDMPVE$MVTUFS OPEF OPEF OPEF /&0 7. QPSU /PEF$POUSPMMFS $MVTUFS$POUSPMMFS /PEF$VTUPN3FTPVSDF $MVTUFS$VTUPN3FTPVSDF LT$MJFOU XPSLRVFVF" XPSLRVFVF# XBUDI JOGPSNFS LT$BDIF
  30. 3FGFSFODF  $MPVE/BUJWF$PNQVUJOH'PVOEBUJPO1PMJDZ3FQP IUUQT HJUIVCDPNDODGGPVOEBUJPO  LVCFCVJMEFSCPPL8IBUJTBDPOUSPMMFS IUUQT CPPL -

    WCPPLLVCFCVJMEFSJPCBTJDTXIBU@JT@B@DPOUSPMMFSIUNM  DPOUSPMMFS - SVOUJNF IUUQT HJUIVCDPNLVCFSOFUFT - TJHTDPOUSPMMFS - SVOUJNFUSFFDEGCFDFDBFDCEG  "EFFQEJWFJOUP,VCFSOFUFTDPOUSPMMFST IUUQT EPDTCJUOBNJDPNUVUPSJBMTB - EFFQ - EJWF - JOUP - LVCFSOFUFT - DPOUSPMMFST  0QFOTUBDL$PNQVUF"1* IUUQT EPDTPQFOTUBDLPSHBQJ - SFGDPNQVUFJOEFYIUNM  0QFOTUBDL/FUXPSLJOH"1* IUUQT EPDTPQFOTUBDLPSHBQJ - SFGOFUXPSLWJOEFYIUNM