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

네트워크 인프라에서 Kubernetes 서비스 네트워킹 지원하기

kakao
PRO
December 09, 2022

네트워크 인프라에서 Kubernetes 서비스 네트워킹 지원하기

#Infrastructure #Networking #Kubernetes

카카오 인프라 제공자 관점에서 Kubernetes 서비스 네트워킹을 지원하는 방법과 변화 과정을 소개합니다.

발표자 : alan.b
카카오에서 로드 밸런싱 서비스를 운영하며 개발하고 있는 알란입니다.

kakao
PRO

December 09, 2022
Tweet

More Decks by kakao

Other Decks in Programming

Transcript

  1. ֎౟ਕ௼ ੋ೐ۄীࢲ
    Kubernetes ࢲ࠺झ ֎౟ਕఊ ૑ਗೞӝ
    ߑ৔୍ Alan.b
    ஠஠য়
    Copyright 2022. Kakao Corp. All rights reserved. Redistribution or public display is not permitted without written permission from Kakao.
    if(kakao)2022

    View Slide

  2. ੋ೐ۄ౱ / ֎౟ਕ௼ূ૑פয݂౵౟
    - L4-L7 ۽٘ ߖ۠य
    - DNS
    - GSLB
    - CDN
    - ਍৔ ߂ ѐߊ
    ௑బஎূ૑פয݂ࣄ

    View Slide

  3. ੿੸ ੋ೐ۄীࢲ ز੸ ੋ೐ۄ۽ ߸ച
    ۽٘ ߖ۠ࢲ ୶࢚ച
    ೐۾द ӝ߈ L7 ۽٘ ߖ۠ࢲ
    ௿ۄ਋٘ ۽٘ ߖ۠य

    View Slide

  4. ੿੸ ੋ೐ۄীࢲ ز੸ ੋ೐ۄ۽ ߸ച

    View Slide

  5. ز੸ ۽٘ ߖ۠ࢲ ਃҳࢎ೦
    ੿੸ LB ز੸ LB
    Ҋоਊࢿ Active / Standby Active / Active
    ഛ੢ࢿ ࣻ૒ ࣻಣ
    ۄ਋౴ ੿੸
    Route Health Injection (RHI)
    with BGP
    ࢸ੿ ੋఠಕ੉झ CLI API

    View Slide

  6. Kubernetes ࢲ࠺झ ֎౟ਕఊ (1ױ҅)

    View Slide

  7. Kubernetes ࢲ࠺झ ֎౟ਕఊ (1ױ҅)

    View Slide

  8. Kubernetes ࢲ࠺झ ֎౟ਕఊ (1ױ҅)

    View Slide

  9. - OpenStack Neutron LBaaS ઙܐ
    - OpenStack Octavia ੹ജ
    - ߮؊ ૑ਗ ҅ദ হ਺
    ױੌ ߮؊ ઙࣘ ޙઁ

    View Slide

  10. ۽٘ ߖ۠ࢲ ୶࢚ച

    View Slide

  11. - ׮নೠ ۽٘ ߖ۠ࢲ ഛ੢ ૑ਗ
    - ೞ٘ਝয ژח ࣗ೐౟ਝয ۽٘ ߖ۠ࢲ ૑ਗ
    - ۽٘ ߖ۠ࢲ API ѐߊ
    ۽٘ ߖ۠ࢲ ୶࢚ച

    View Slide

  12. Stove
    - ۽٘ ߖ۠ࢲ API
    - بݫੋ API
    - GSLB API
    - ਢ ௑ࣛ

    View Slide

  13. Kubernetes ࢲ࠺झ ֎౟ਕఊ (2ױ҅)

    View Slide

  14. Kubernetes ࢲ࠺झ ֎౟ਕఊ (2ױ҅)

    View Slide

  15. গ೒ܻா੉࣌ ѐߊ੗
    - Ingress node ҙܻ
    - ੋૐࢲ јन
    ੋ೐ۄ ઁҕ੗
    - ۽٘ ߖ۠ࢲ ബਯ੸ ҙܻ
    - ֎౟ਕ௼ ౟۞࠶ग౴
    Ingress ૑ਗ ۽٘ ߖ۠ࢲ ೙ਃ

    View Slide

  16. ೐۾द ӝ߈ L7 ۽٘ ߖ۠ࢲ

    View Slide

  17. - HTTP ژח HTTPS
    - HTTP ਃ୒ ۄ਋౴: host, path, headers ӝ߈
    - TLS Termination
    - ੋૐࢲ ҙܻ
    ೐۾द ӝ߈ L7 ۽٘ ߖ۠ࢲ

    View Slide

  18. ೞ٘ਝয৬ য়೑ࣗझ ࣗ೐౟ਝয ೐۾द ࠺Ү
    ೞ٘ਝয ೐۾द য়೑ࣗझ ࣗ೐౟ਝয ೐۾द
    ࢿמ ਋ࣻ ࠁా
    ୭न ೐۽ష௒ ૑ਗ וܿ नࣘ
    नӏ ӝמ ୶о וܿ नࣘ
    ӝࣿ ૑ਗ ੓਺ হ਺
    ࠺ਊ ݆਺ ੸਺

    View Slide

  19. ೞ٘ਝয৬ য়೑ࣗझ ࣗ೐౟ਝয ೐۾द ࠺Ү
    ೞ٘ਝয ೐۾द য়೑ࣗझ ࣗ೐౟ਝয ೐۾द
    ࢿמ ਋ࣻ ࠁా
    ୭न ೐۽ష௒ ૑ਗ וܿ नࣘ
    नӏ ӝמ ୶о וܿ नࣘ
    ӝࣿ ૑ਗ ੓਺ হ਺
    ࠺ਊ ݆਺ ੸਺

    View Slide

  20. NGINX৬ Envoy ࠺Ү
    NGINX Envoy
    ࢿמ ਋ࣻ ਋ࣻ
    ӝמ ࠁా (৻ࠗ ݽٕ ੄ઓ) ݆਺ (ӝࠄ ನೣ)
    ࢚క ߂ ࢿמী ؀ೠ ҙஏ оמࢿ ࠁా (৻ࠗ ݽٕ ੄ઓ) ݆਺ (ӝࠄ ನೣ)
    ࢎਊ ҃೷ ݆਺ ੸਺
    ز੸ ࢸ੿ Lua ݽٕ (ઁೠ੸) xDS (Discovery Service)
    ೐۽Ӓې߁ ಞ੄ࢿ ࠁా ֫਺
    ࢸ੿ ߸҃ द ӝઓ োѾ ৔ೱ ੓਺ হ਺

    View Slide

  21. NGINX৬ Envoy ࠺Ү
    NGINX Envoy
    ࢿמ ਋ࣻ ਋ࣻ
    ӝמ ࠁా (৻ࠗ ݽٕ ੄ઓ) ݆਺ (ӝࠄ ನೣ)
    ࢚క ߂ ࢿמী ؀ೠ ҙஏ оמࢿ ࠁా (৻ࠗ ݽٕ ੄ઓ) ݆਺ (ӝࠄ ನೣ)
    ࢎਊ ҃೷ ݆਺ ੸਺
    ز੸ ࢸ੿ Lua ݽٕ (ઁೠ੸) xDS (Discovery Service)
    ೐۽Ӓې߁ ಞ੄ࢿ ࠁా ֫਺
    ࢸ੿ ߸҃ द ӝઓ োѾ ৔ೱ ੓਺ হ਺

    View Slide

  22. Kubernetes ࢲ࠺झ ֎౟ਕఊ (3ױ҅)

    View Slide

  23. ز੸ ۽٘ ߖ۠ࢲ ૓ച
    ೐۽ష௒ DSR or Proxy ੉ग
    1ױ҅: ೞ٘ਝয ۽٘ ߖ۠ࢲ TCP DSR ױੌ ߮؊ ઙࣘ ޙઁ
    2ױ҅: ۽٘ ߖ۠ࢲ ୶࢚ച TCP DSR Ingress ૑ਗ
    3ױ҅: ೐۾द ӝ߈ L7 ۽٘ ߖ۠ࢲ HTTP ژח HTTPS Proxy ௿ۄ਋٘ ۽٘ ߖ۠य

    View Slide

  24. ௿ۄ਋٘ ۽٘ ߖ۠य

    View Slide

  25. - ೞ٘ਝয ۽٘ ߖ۠ࢲ ࢎਊ
    - Stove ۽٘ ߖ۠ࢲ ࢎਊਵ۽ ੹ജ ઺
    - ೐۾द ӝ߈ L7 ۽٘ ߖ۠ࢲ ࢎਊ Ingress ૑ਗ ৘੿
    - DNS / GSLB / CDN ా೤ ഝਊ ߑউ Ҋ޹
    ௿ۄ਋٘ ۽٘ ߖ۠य ࢲ࠺झ۽

    View Slide

  26. Q&A

    View Slide