VM vs Container
Docker
Docker สามารถจัดการและแบ่งทรัพยากรในเซิร์ฟเวอร์เป็นส่วนๆ เรียกว่า Container ซึ่งจะแบ่งแยกออกจากกัน
อย่างชัดเจน สามารถติดตั้งซอฟต์แวร์ที่ต้องการบนแต่ละ Container ได้
- Fast to Deploy – รันเว็บไซต์ได้เร็วขึ้นจากปกติ
- Flexibility – มียืดหยุ่นในการจัดการ
- Use Worthy Resource – ใช้ทรัพยากรของระบบได้อย่างคุ้มค่า
- Easy to Upgrade – ง่ายต่อการอัพเกรด
- Work with Load Balance – เว็บไซต์สามารถทำงานได้เต็มประสิทธิภาพ
- Optimized – สามารถปรับปรุงแก้ไขได้
Kubernetes
- Avoiding vendor lock as much as feasible – สามารถเข้าถึงระบบได้
- Suitability for different business environments – มีความเหมาะสมในธุรกิจที่แตกต่างกัน
- Scalability – สนับสนุนการปรับแต่งทรัพยากรตั้งแต่ขนาดเล็กไปถึงขนาดใหญ่
- Reliability – มีการกู้คืนข้อมูลเมื่อเกิดล้มเหลวระหว่างการประมวล
- Replicate – มีการทำงานซ้ำ
- Flexibility and feature-richness – มีฟีเจอร์ที่เหมาะสมกับการพัฒนาให้เลือกใช้
- Ease-of-deployment – ง่ายต่อการอัพโหลดขึ้นบนเซิฟเวอร์
- Auto Scale – จำกัดจำนวนการใช้ทรัพยากรอัตโนมัติ เช่น CPU , Memory เป็นต้น
- Auto Upgrade – อัพเกรดเวอร์ชั่นอัตโนมัติ
- Auto Repair – มีระบบการซ่อมบำรุงอัตโนมัติ