เหตุผล ทำไมต้องใช้ทั้ง Kubernetes และ Cloud Foundry ร่วมกัน
17 เม.ย. 2561 //= substr($strYear,2,2)?>
Container เป็นหนึ่งในเทคโนโลยีที่น่าจับตามองในปัจจุบัน ผลสำรวจของ 451 Research คาดการณ์ว่า ตลาด Application Container จะโตขึ้นจาก $762 ล้านในปี 2016 ไปเป็น $2,700 ล้านภายในปี 2020 ซึ่งหนึ่งในโปรเจ็กต์ Container ที่หลายองค์กรให้ความสนใจ ณ ตอนนี้คงหนีไม่พ้น Kubernetes และ Cloud Foundry
นักพัฒนาหลายคนอาจมองว่า เครื่องมือทั้งสองเป็นคู่แข่งกัน ควรเลือกใช้แค่อย่างใดอย่างหนึ่ง แต่ Jeff Hobbs ผู้อำนวยการฝ่ายวิศวกรรมของ SUSE กลับมองว่า Kubernetes และ Cloud Foundry จะช่วยสนับสนุนซึ่งกันและกัน เนื่องจากเครื่องมือหนึ่งอาจมีฟีเจอร์ที่อีกเครื่องมือไม่มี ส่งผลให้นักพัฒนาและผู้ดูแลระบบสามารถบริหารจัดการแอปพลิเคชันบนระบบ Cloud ได้ง่ายยิ่งขึ้น
“ในขณะที่ [Kubernetes และ Cloud Foundry] มีบางฟังก์ชันที่ทำงานทับซ้อนกัน ทั้งคู่ต่างเสริมประโยชน์ซึ่งกันและกันเพื่อบรรลุวัตถุประสงค์เดียวกัน โดยการใช้ประโยชน์จากโปรเจกต์ทั้งสอง องค์กรสามารถทำให้การบริหารจัดการจัดการสภาพแวดล้อมบนระบบ Cloud ทั้งหมดง่ายยิ่งขึ้นได้” — Hobbs ระบุใน Blog
Hobbs ยังให้เหตุผล 3 ประการเพื่อสนับสนุนการใช้ Kubernetes และ Cloud Foundry ร่วมกัน ดังนี้
- เพิ่มความเร็วในการสร้าง Node ใหม่
Container นำเสนอแนวทางในการทำ Virtualization ทรัพยากรส่วนประมวลผลแบบใหม่ซึ่งเร็วกว่าและมีประสิทธิภาพสูงกว่า Virtual Machine แบบเก่า โดย Kubernetes เข้ามามีบทบาทเป็นแพลตฟอร์มโครงสร้างที่ยึด Container เป็นศูนย์กลาง ในขณะที่ Cloud Foundry ใช้บริหารจัดการการวางระบบแอปพลิเคชันผ่าน Container อย่างไรก็ตาม Cloud Foundry สามารถใช้ประโยชน์จาก Kubernetes ในการเริ่ม Node ใหม่ได้เร็วกว่าเดิม ซึ่งเป็นหัวใจสำคัญของการขยายระบบในอนาคต นอกจากนี้ การมีพื้นความรู้ Kubernetes มาก่อนช่วยให้เรียนรู้ Cloud Foundry ได้ง่ายยิ่งขึ้นอีกด้วย - Cloud Foundry จัดการแอปพลิเคชัน Kubernetes จัดการ Cloud Foundry
Cloud Foundry ช่วยให้สามารถสร้าง วางระบบ และบริการจัดการ Containers เพื่อให้การพัฒนาแอปพลิเคชันทำได้อย่างง่ายดายและอัตโนมัติ ในขณะที่ Kubernetes เข้ามาครอบ Cloud Foundry อีกชั้นหนึ่ง ส่งผลให้นักพัฒนาสามารถวางระบบและบริหารจัดการ Cloud Foundry ได้ผ่าน Kubernetes ผลลัพธ์คือผู้ใช้ Kubernetes มีเครื่องมือในการบริหารจัดการแอปพลิเคชันอันทรงพลังมาไว้ในมือ - บางสภาพแวดล้อม ผสานการทำงานเพื่อผลลัพธ์ที่ดีกว่า
Cloud Foundry นับว่าเป็นเครื่องมือสำหรับบริหารจัดการโค้ดโดยยึดแอปพลิเคชันเป็นศูนย์กลางที่ใช้ได้ผลดีในหลายๆ สภาพแวดล้อม อย่างไรก็ตาม Cloud Foundry ก็อาจไม่เหมาะกับสภาพแวดล้อมบางประเภท เช่น การพัฒนาเว็บแอปพลิเคชันบน Cloud ใหม่จาก Microservices หลายๆ รายการที่มีการเก็บข้อมูลถาวรบน Backend ถึงแม้ว่า Cloud Foundry จะสามารถบริหารจัดการ Microservices ได้เกือบทั้งหมด แต่การจัดการกับข้อมูลที่เก็บไว้นั้นใช้ Kubernetes ในการวางระบบ Independent Container จะเป็นทางออกที่ดีกว่า แล้วค่อยนำข้อมูลเหล่านั้นมาผสานรวมกับเว็บแอปพลิเคชันผ่านทาง Cloud Foundry Service Broker ซึ่งจะเป็นสะพานเชื่อม Cloud Foundry และ Kubernetes เข้าด้วยกัน
ที่มา: https://thenewstack.io/kubernetes-and-cloud-foundry-better-together/