ระบบคอนเทนเนอร์ (หรือเรียกว่าระบบปฏิบัติการคอนเทนเนอร์) เป็นระบบปฏิบัติการที่เก่าแก่ที่สุดโดยจะทำงานเหมือนระบบ Standalone ที่ไม่จำเป็นต้องใช้ซอฟแวร์พิเศษหรือกำหนดรูปภาพเองอย่าเช่น Docker ระบบคอนเทนเนอร์จะค่อนข้างคล้ายกับ Virtual Machines (VMs) แต่จะมีค่าใช่จ่ายต่ำกว่าและง่ายต่อการจัดการ
ความสามารถของระบบคอนเทนเนอร์ (System Containers)
ระบบคอนเทนเนอร์สามารถรัน บริการระดับระบบ (system-level) ได้อย่างเต็มรูปแบบ เช่น: systemd, SysVinit, Upstart, OpenRC รวมถึงกระบวนการพื้นฐานอื่น ๆ อย่าง: OpenSSH, crond, syslogd ทั้งหมดสามารถทำงานร่วมกันภายใน คอนเทนเนอร์เดียวกัน ได้อย่างสมบูรณ์ เหมาะสำหรับแอปพลิเคชันแบบดั้งเดิม (Legacy Applications)
System Containers เหมาะอย่างยิ่งสำหรับแอปพลิเคชันแบบดั้งเดิมหรือระบบที่เคยรันอยู่บน Virtual Machines (VMs) เนื่องจาก:
- สามารถนำ สถาปัตยกรรม, เครื่องมือ, และ การกำหนดค่าของ VMs กลับมาใช้ใหม่ได้เกือบทั้งหมด
- ช่วยลดภาระในการเปลี่ยนแปลงโครงสร้างระบบหรือเขียนใหม่
- ให้ความยืดหยุ่นในการจัดการระบบและบริการภายในเหมือนกับการใช้งาน VM

ประโยชน์และข้อมูลจำเพาะของระบบคอนเทนเนอร์:
- ระบบคอนเทนเนอร์ถือเป็นเทคโนโลยีที่ตอบโจทย์ทั้งความยืดหยุ่น ประสิทธิภาพ และความสามารถในการรองรับระบบแบบ Stateful ได้อย่างดีเยี่ยม โดยมีคุณสมบัติเด่นดังนี้:
-
รองรับการทำงานแบบ Stateful และ Live Migration
ระบบคอนเทนเนอร์สามารถย้ายการทำงาน (migration) ของ Virtual Machines ได้ โดยไม่ต้องปิดระบบรองรับการย้ายข้าม Host Node, Data Center หรือแม้แต่ Cloud Provider โดย ไม่กระทบกับข้อมูลหรือสถานะของระบบ
เหมาะสำหรับแอปพลิเคชันที่ต้องเก็บข้อมูลแบบถาวร เช่น:
– ฐานข้อมูล SQL
– NoSQL
– ระบบฐานข้อมูลในหน่วยความจำ (In-memory Databases)
-
ทำงานร่วมกับ Java ได้อย่างราบรื่น
คอนเทนเนอร์สามารถรัน Java Applications ได้โดยไม่ต้องเปลี่ยนกระบวนการที่กำลังทำงานอยู่
ลดความซับซ้อนในการ deploy และ scale แอปพลิเคชัน Java EE/Jakarta EE
ไม่จำเป็นต้องรีสตาร์ทคอนเทนเนอร์หรือ process เพื่อปรับปรุง/เปลี่ยนโค้ด -
รองรับเทคโนโลยีคอนเทนเนอร์ที่หลากหลาย
ระบบคอนเทนเนอร์มีหลากหลายรูปแบบในระบบปฏิบัติการต่าง ๆ เช่น:BSD Jails
Linux vServer
Solaris Zones
OpenVZ / Virtuozzo
LXC / LXD
สำหรับแพลตฟอร์ม Ruk-Com Cloud เราเลือกใช้เทคโนโลยี Virtuozzo ซึ่งสามารถรันคอนเทนเนอร์ได้ หลายพันรายการภายใน node เดียวกัน
ส่งผลให้การจัดการภายในคอนเทนเนอร์ทำได้อย่างมีประสิทธิภาพ, ประหยัดทรัพยากร และปรับขยายได้ง่าย
-
ระบบคอนเทนเนอร์จึงเป็นโซลูชันที่เหมาะกับทั้งแอปพลิเคชันดั้งเดิมและระบบใหม่ที่ต้องการความยืดหยุ่นสูง รองรับทั้งการใช้งานระดับ Dev/Test ไปจนถึง Production ที่ต้องการความเสถียรและความพร้อมใช้งานสูง