Member-only story

การสร้าง Root HTTPProxy บน Contour

Sarun Nuntaviriyakul
2 min readApr 9, 2023

--

หลังจากที่เราทำการ Install Contour เป็น Kubernetes Ingress ไปใน Part ที่แล้ว

ใน Part นี้เราจะมาดูวิธีการสร้าง root HTTPProxy เพื่อแก้ปัญหา Config Ingress ชนกันบน Cluster เวลาหลายๆทีมมีการใช้ FQDN เดียวกัน. รวมถึงเพื่อช่วย Platform/ Operator Team ในการ Manage Ingress / Proxy จากฝั่ง Developer

Root HTTPProxy & Inclusion Concepts

https://github.com/projectcontour/contour

ก่อนที่เราจะทำการใช้ Root HTTPProxy เราต้องมีการ Config namespace ที่จะใช้เป็น Root ก่อน โดยสามารถกำหนดโดยใช้ flag --root-namespaces หรือกำหนด contour.rootNamespaces ตอน Install ด้วย Helm.

หลังจากนั้นเราจะสามารถ Include HTTPProxy resource จาก namespace อื่นที่ Developer หรือ Team ต่างๆมีการใช้งาน โดยจะใช้ Concept ของ Inclusion เป็นคล้ายๆกับ Selector ใน k8s ในการเลือก HTTPProxy จากฝั่ง Developer มาใช้

ตัวอย่างการสร้าง Root HTTPProxy

ในตัวอย่างมีการกำหนด rootNamespaces เป็น httpproxy-root มี FQDN เป็น foo-basic.bar.com

สามารถเข้าถึง HTTPProxy auth ที่อยู่ใน namespace authenticationผ่าน foo-basic.bar.com/auth

และ HTTPProxy reserve ใน namespace reservationsผ่าน foo-basic.bar.com/reservations

ตัวอย่าง HTTPProxy ในแต่ละ Namespace

HTTPProxy auth จะถูก deploy ใน namespace authentication โดยจะทำการ route connection จาก foo-basic.bar.com/authไปยัง Service…

--

--

Sarun Nuntaviriyakul
Sarun Nuntaviriyakul

No responses yet

Write a response