Category: Application Deployment

Category: Application Deployment

Kubernetes Cluster: Creating Ingresses

Ingress คือ Kubernetes Cluster load balancer ที่จัดการการเข้าถึงบริการภายนอก (external access) ให้การยุติ SSL และโฮสติ้งเสมือนตามชื่อ มีการจัดการผ่านเซ็ตของกฎ (spec) ที่จับคู่กับคำขอที่เข้ามาทั้งหมด เคล็ดลับ :เมื่อเทียบกับบริการที่เปิดเผยผ่าน NodePort, ingress เป็นตัวเลือกที่มีประสิทธิภาพมากกว่าแต่ก็ซับซ้อนกว่าด้วย จะมีประโยชน์ที่สุดเมื่อคุณต้องการเปิดเผยบริการหลายรายการภายใต้ IP address เดียวกัน นอกจากนี้ ingress

Read More »

Exposing Services

ในขณะที่ส่วนประกอบของแอปพลิเคชันของคุณสามารถสื่อสารกันด้วย service name โดยใช้เครือข่ายภายใน การเชื่อมต่อภายนอกจำเป็นต้องมีการกำหนดค่าเพิ่มเติม วิธีพื้นฐานที่สุดในการสร้างการเชื่อมต่อภายนอกกับบริการคือการเปิดเผยผ่าน NodePort โดยตรง ตามความหมายของชื่อบริการประเภทนี้จะเปิดพอร์ตเฉพาะบนโหนด การรับส่งข้อมูลใด ๆ ก็ตามที่ส่งไปยังพอร์ตนี้จะถูกส่งต่อไปยังบริการของคุณ โดยค่าเริ่มต้นของ nodePort สำหรับบริการของคุณจะถูกเลือกแบบสุ่มจากช่วง 30000-32767 หมายเหตุ :วิธีนี้มีข้อเสียหลายประการที่ควรพิจารณาเมื่อกำหนดค่า Kubernetes Cluster (หนึ่งบริการต่อพอร์ต, ช่วงของพอร์ตที่จำกัด ฯลฯ ) ด้วยเหตุนี้จึงสามารถใช้ประเภทบริการ

Read More »

Internal Networking

การกำหนดค่าเครือข่ายภายในภายใน Kubernetes Cluster เป็นกระบวนการอัตโนมัติทั้งหมดซึ่งใช้ K8s Services ปลั๊กอิน CNI สร้างและกำหนดค่าเครือข่ายซ้อนทับซึ่งช่วยให้สามารถจัดหาพ็อด (pod) ทั้งหมดด้วย IP address ได้ นอกจากนี้ Kubernetes ยังรองรับการเข้าถึงบริการโดยตรงจากชื่อ ดังนั้นจึงไม่จำเป็นต้องมีกลไกการค้นหาบริการใด ๆ ตัวอย่างเช่น แอปพลิเคชันเซิร์ฟเวอร์ของคุณสามารถเชื่อมต่อกับฐานข้อมูลโดยใช้ชื่อ DNS ซึ่งจะได้รับการแก้ไขเป็น IP ภายใน

Read More »

YAML Deployments

Kubernetes รองรับการทำให้ใช้งานได้จากทั้งไฟล์ JSON และ YAML อย่างไรก็ตามในทางสังคม YAML เป็นตัวเลือกที่ใช้บ่อยกว่าและถือได้ว่าเป็นมาตรฐาน การ deploy จาก YAML ค่อนข้างคล้ายกับแผนภูมิ Helm – ไฟล์ .yaml หรือ .yml จะให้คำจำกัดความของวัตถุหรือรายการวัตถุ (object) ด้วยเหตุนี้จึงสามารถนำไปใช้ได้โดยตรงใน Kubernetes Dashboard หรือด้วยเครื่องมือ

Read More »

Helm Integration

Kubernetes มีตัวเลือกมากมายในการ deploy แอปพลิเคชัน หนึ่งในวิธีการทั่วไปคือการใช้โปรแกรมจัดการแพ็คเกจ link # Helm ช่วยในการติดตั้งแอปพลิเคชัน Kubernetes จากที่เก็บระยะไกล (remote repositories) รวมถึงสร้างแผนภูมิ Helm จากในเครื่อง Helm CLI สื่อสารกับบริการที่เรียกว่า Tiller ที่ทริกเกอร์ Kubernetes API เพื่อสร้างอ็อบเจ็กต์ เช่น

Read More »