Kong 2.0 Hybrid Mode

narate

Narate Ketram

Posted on January 13, 2020

Kong 2.0 Hybrid Mode

Kong เป็น API Gateway ที่ได้รับความนิยมสูง เพราะใช้งานสามารถรันได้บนแพลตฟอร์มที่หลากหลาย ทั้งบน Cloud, On Premise มีวิธีการ Deploy ที่ครอบคลุมทุกการใช้งาน ทั้ง Binary, Docker หรือ Kuberbetes

ใครยังไม่เคยใช้ Kong ลองใช้ Kong ตามบล็อกนี้ KONG API GATEWAY ฉบับรวบรัด

Kong API Gateway

การใช้ Kong ในเวอร์ชั่นแรกๆ จำเป็นที่จะต้องมีฐานข้อมูลสำหรับเก็บค่าคอนฟิกต่างๆของ Gateway ซึ่ง Kong รองรับการใช้งานฐานข้อมูล 2 ตัวคือ PostgreSQL และ Cassandra ซึ่งการนำไปใช้งานจะต่างกัน ตามความต้องการของระบบ

ใน Kong version 1.1 นอกจาก Kong จะสามารถใช้ฐานข้อมูลในการเก็บคอนฟิกต่างๆแล้ว ยังสามารถใช้งาน Kong แบบไม่ต้องมีฐานข้อมูลได้ โดยการใช้ไฟล์คอนฟิกแทน เรียกโหมดนี้ว่า Kong DB-less ข้อดีคือ ไม่ต้องดูแลฐานข้อมูล แต่ข้อเสียก็มีคือ บาง Plugin จะไม่สามารถใช้งานได้

การใช้ Kong DB-less มีข้อดี และข้อเสีย ใน Community ของ Kong มีการพูดถึงเรื่องการใช้งาน Kong DB-less แบบกระจายคอนฟิกไปยังโหนดต่างๆ เพื่อเหตุผลบางอย่าง เช่น Kong Ingress บน Kubernetes หรือ อยากรัน Kong DB-less ที่เอาไฟล์คอนฟิกมาจากที่เดียวกัน

จากคำเรียกร้องจากแฟนคลับ ทำให้ Kong ต้องเข็นฟีเจอร์ Hybrid Mode ออกมา คือทั้งมีฐานข้อมูล และไม่มีฐานข้อมูลในเวลาเดียวกัน สงสัยฟังเพลง Getsunova มากไป

Kong Hybrid Mode

ในโหมดนี้ จะมี Kong รันอยู่ 2 role คือ control_plane และ data_plane

Control Plane จะเป็น Kong ที่รันด้วยโหมดที่มีฐานข้อมูล เหมือน Kong ปกติ มี Admin API ให้ใช้งาน ทำหน้าที่กระจายคอนฟิกไปยังโหนดในคลัสเตอร์ เรียกว่า Data Plane

Cat Control Plane

Data Plane คือ Kong Proxy ที่รันเป็น Kong DB-less โดยจะมีการอัปเดตคอนฟิกเมื่อมีการเปลี่ยนแปลงที่ Control Plane

Demo

💖 💪 🙅 🚩
narate
Narate Ketram

Posted on January 13, 2020

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related