PlusMagi's Blog By Pitt Phunsanit

LXC: Linux Containers VS VM (Virtual Machine)

ถ้าอธิบายให้เห็นภาพง่ายที่สุด VM (Virtual Machine) คือการจำลองคอมพิวเตอร์ขึ้นมาใหม่ทั้งเครื่องแบบเสมือนจริง ส่วน LXC (Linux Containers) คือการแบ่งห้องในบ้านหลังเดิม (ใช้ Kernel ร่วมกับ Host) ครับ

ความแตกต่างหลัก ๆ ของทั้งสองเทคโนโลยีแบ่งออกเป็นหัวข้อได้ดังนี้ครับ


เจาะลึกความต่างระหว่าง VM กับ LXC


1. สถาปัตยกรรมและการใช้ Kernel

2. การใช้ทรัพยากร (Resource Overhead)

3. ระบบปฏิบัติการที่รองรับ (OS Flexibility)

4. ความปลอดภัยและการแยกส่วน (Isolation)


ตารางเปรียบเทียบ VM vs LXC

คุณสมบัติVM (Virtual Machine)LXC (Linux Container)
ระดับการจำลองHardware LevelOS / Kernel Level
Kernelแยกอิสระ (ของใครของมัน)ใช้ร่วมกับ Host OS
OS ที่รองรับหลากหลาย (Linux, Windows, BSD)Linux เท่านั้น
การกินทรัพยากรสูง (Overhead สูงจาก Guest OS)ต่ำมาก (ใกล้เคียงกับ Native)
ความเร็วในการบูตเป็นนาทีเป็นวินาที
การจัดสรร RAM/CPUมักจะจองแบบตายตัว (Static)ยืดหยุ่น ปรับเปลี่ยนได้อิสระ (Dynamic)

ควรเลือกใช้ตัวไหนตอนไหน?


ข้อสังเกตเพิ่มเติม: หลายคนมักสับสนระหว่าง LXC กับ Docker — ให้มองว่า LXC คือ System Container (จำลองมาเป็น OS ทั้งก้อนเหมือน VM เอาไว้รันหลายบริการข้างในได้) ส่วน Docker คือ Application Container (เน้นแพ็กเฉพาะแอปพลิเคชันเดี่ยว ๆ พร้อม Environment ของมันรันเป็น Process เดียว) ครับ


อ่านเพิ่มเติม

Exit mobile version