อะไรคือความแตกต่างของการทำงานระหว่างคูเบอร์เนท


16

อะไรคือคุณสมบัติหลักที่แตกต่างจากตู้คอนเทนเนอร์ออร์เคสตรายอดนิยม kubernetes, rancher และ mesos?

อะไรจะทำให้คุณเลือกอันใดอันหนึ่ง


อืมมันอาจจะกว้างเกินไป หากคุณลบ "etc" และเปลี่ยนชื่อให้ถามเฉพาะเกี่ยวกับ kuber / rancher / mesos โดยเฉพาะมันอาจจะเป็นคำถามที่ดี Q.
Peter G

2
ฉันได้แก้ไขคำถามตามคำแนะนำของคุณเพื่อให้แน่นอนขึ้นอีกเล็กน้อย
tayworm

แม้ว่าฉันจะสนใจที่จะได้ยินเกี่ยวกับเครื่องมืออื่น ๆ ที่เปลี่ยนแปลงเกม
tayworm

คำตอบ:


16

ประการแรก Rancher มีการใช้งานจริงของทั้ง Kubernetes และ Mesos ภายในตัวเอง อย่างไรก็ตามพวกเขาสร้างระบบของตัวเองที่เรียกว่า Cattle ซึ่งมีพื้นฐานมาจาก Docker Swarm ฉันจะสัมผัสมันในส่วนของ Rancher

ประการที่สองเนื่องจากแต่ละคนมีคุณสมบัติพื้นฐานที่คล้ายคลึงกัน (การทำโหลดบาลานซ์การแยกทรัพยากร ฯลฯ ) ฉันจะพยายามทำมากกว่านี้ในสิ่งที่ทำให้พวกเขาแตกต่างแทนที่จะมุ่งเน้นที่ความแตกต่างระหว่างคุณสมบัติทั่วไปเหล่านั้น

Kubernetes

เน้นประสิทธิภาพสูงพร้อมการจัดเก็บข้อมูลบนคลาวด์ (คุณลักษณะที่ขาดหายไปจาก Mesos แม้ว่าอาจมีปลั๊กอินสำหรับมัน) มีตัวเลือก API เพื่ออนุญาตให้ปรับขนาดการใช้ทรัพยากรโดยอัตโนมัติตามที่ต้องการโดยแต่ละคอนเทนเนอร์ (และสำหรับการย้อนกลับหากคอนเทนเนอร์ไม่ถูกโจมตีอย่างหนักในขณะที่คนอื่น ๆ )

สิ่งที่สำคัญเกี่ยวกับ Kubernetes นั้นแตกต่างจากซอฟต์แวร์ orchestration container อื่น ๆ ซึ่งไม่ได้มีการกำหนดค่าที่ครอบคลุมหรือการรักษาด้วยตนเองที่ครอบคลุมใด ๆ แต่จะมุ่งเน้นไปที่การปรับใช้อย่างต่อเนื่องของแอพหลายตัวด้วยระบบย้อนกลับที่ง่ายในระดับแอพ (ดังนั้นคุณอาจต้องการค้นหาบริการไมโครเมื่อใช้งาน)

แต่ละแอปเป็นชิ้นส่วนเล็ก ๆ และสามารถนำไปใช้ / กำหนดค่าแต่ละรายการได้ พวกเขาให้ความสำคัญกับเอกสารของพวกเขาเพื่อบอกว่า Kubernetes ไม่ใช่ระบบ PaaS (แพลตฟอร์มในฐานะบริการ) แบบดั้งเดิมเนื่องจากไม่มีมิดเดิลแวร์สำหรับฮาร์ดแวร์เสมือนหรือฐานข้อมูลและไม่สร้างแอปของคุณเอง มันถูกออกแบบมาเพื่อ (ตามที่พวกเขาบอกว่าตัวเอง) ลบความต้องการสำหรับการจัดวางคอนเทนเนอร์ด้วยตนเองแทนกระบวนการอัตโนมัติโดยการกดไปยังสถานะแอปเป้าหมายอย่างต่อเนื่อง

Mesos

เสาหินเปรียบเทียบกับ Kubernetes มุ่งเน้นไปที่ภาพรวมขนาดใหญ่กว่าบริการส่วนบุคคลแม้ว่าจะยังคงอนุญาตให้มีการจัดการบริการส่วนบุคคล นำเสนอมิดเดิลแวร์ในตัวสำหรับสิ่งต่าง ๆ เช่น Spark, Hadoop เป็นต้นการใช้ Mesos ที่ดีที่สุดจะเกี่ยวข้องกับปลั๊กอินจำนวนมากเนื่องจากออกแบบมาเพื่อให้ขยายได้อย่างง่ายดาย

หากคุณต้องการควบคุมการจัดการแอปพลิเคชันของคุณอย่างละเอียด (ตราบเท่าที่มีปลั๊กอินสำหรับสิ่งที่คุณต้องการทำหรือคุณมีสมาชิกในทีมเต็มใจที่จะสร้างแอพพลิเคชั่นหากไม่มี) คุณต้องการใช้ Mesos

Rancher (และปศุสัตว์)

อาจเป็นตัวเลือกที่ดีที่สุดในการที่มันเป็นตัวซูเปอร์เซ็ตของทั้งสองก่อนหน้านี้มีการใช้งานของทั้งสอง สิ่งนี้อาจถูกมองว่าเป็นข้อเสียเนื่องจากความซับซ้อนในซอฟต์แวร์การจัดการของคุณไม่ค่อยเป็นสิ่งที่ดีและอาจนำไปสู่ปัญหาที่ไม่คาดฝัน

Rancher มีแคตตาล็อกแอปพลิเคชันที่อนุญาตให้ใช้งานด้วยคลิกเดียวบางสิ่งบางอย่าง Kubernetes ไม่มีเนื่องจากปรัชญาการออกแบบ อย่างไรก็ตามเมื่อเห็นว่า Rancher มีการใช้งาน Kubernetes คุณสามารถใช้ Rancher ได้หากคุณรู้สึกว่าคุณสมบัติเหล่านี้หายไปจาก Kubernetes

Cattle นั้นมาจากระบบสแต็กซึ่งคุณจัดกลุ่มบริการที่เกี่ยวข้องเข้าด้วยกัน นอกจากนี้ยังเป็นที่ตั้งของ Rancher Compose ซึ่งเป็นคุณสมบัติที่คล้ายคลึงกับบริการ Docker ที่มีชื่อเดียวกัน นี่อาจเป็นส่วนที่น่าสนใจที่สุดของ Cattle ส่วนที่เหลือเป็นมาตรฐานอย่างเป็นธรรม (แม้ว่าการจัดการความลับยังอยู่ในช่วงเบต้า) หากคุณมีประสบการณ์เกี่ยวกับ Docker คุณควรอ่านข้อมูลที่นี่ (ฉันทำไม่ได้ดังนั้นฉันอาจไม่ใช่คนที่ดีที่สุดที่จะเขียนเกี่ยวกับเรื่องนี้)

แหล่งข้อมูล: " Kubernetes คืออะไร ", " ภาพรวมของ Rancher ", " mesos.apache.org: 'Mesos คืออะไร?' "

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.