Apa Itu System Containers
System container (juga dikenal sebagai operating system container) adalah tipe container tertua. Ini adalah solusi yang berfokus pada sistem operasi (OS) yang berperilaku seperti sistem mandiri, yang tidak memerlukan perangkat lunak khusus atau custom image seperti Docker. System containers sangat mirip dengan virtual machines (VMs) tetapi dengan overhead yang sangat rendah dan manajemen yang mudah.
System container menjalankan sistem init yang lengkap (systemd, SysVinit, Upstart, OpenRC, dll.), yang memungkinkan penciptaan beberapa proses (misalnya OpenSSH, crond, atau syslogd) dalam satu container di bawah OS yang sama. System containers paling cocok untuk aplikasi monolitik tradisional atau legacy, karena mereka memungkinkan penggunaan kembali arsitektur, alat, dan konfigurasi yang diterapkan untuk VMs.
Spesifikasi dari system containers memberikan beberapa keuntungan dan kekhususan:
- Ini dapat dianggap sebagai solusi stateful. System containers mendukung live migration (melintasi host nodes, data centers, atau bahkan Clouds) dan tidak kehilangan data/status setelah reboot. Persistensi data semacam ini sangat cocok untuk menjalankan aplikasi dan layanan stateful yang hidup panjang (termasuk SQL, NoSQL, dan instance database in-memory).
- System containers hidup berdampingan secara harmonis dengan ekosistem Java dan tidak memerlukan penyesuaian khusus agar proses Java sadar bahwa mereka berjalan di dalam containers.
- System containers mendukung solusi yang ada untuk menerapkan hot redeployment tanpa perlu me-restart container atau runtime Java. Juga, mereka menyederhanakan dan mempercepat clustering dari Java EE / Jakarta EE application servers.
Ada beberapa implementasi yang berbeda dari system containers: BSD jails, Linux vServer, Solaris Zones, OpenVZ/Virtuozzo, LXC/LXD.