GNU/Linux >> Belajar Linux >  >> Linux

Lingkungan linux yang terisolasi ringan

Chroot adalah lingkungan dengan bobot paling ringan yang cocok untuk Anda. Ini memungkinkan Anda untuk menginstal distribusi lain (atau instalasi lain dari distribusi yang sama), dengan pengguna yang sama, dengan konfigurasi jaringan yang sama, dll. Chroot hanya menyediakan beberapa isolasi kasar pada level sistem file. Menjelajahi situs ini untuk chroot mungkin dapat membantu, jika Anda masih tidak yakin apa yang dapat dan tidak dapat dilakukan oleh chroot.

Jika Anda sedang mencari langkah selanjutnya, LXC sekarang disertakan dalam jalur utama kernel. Tamu LXC (disebut wadah) memiliki sistem file, proses, dan ruang jaringannya sendiri. Root di wadah juga root di host; LXC melindungi dari banyak tindakan yang tidak disengaja oleh root tamu, tetapi tidak melindungi dari root tamu yang berbahaya (ini adalah fitur yang direncanakan, perhatikan ruang ini).

Teknologi lain yang agak mirip dengan LXC adalah VServer dan OpenVZ. Fitur penting yang disediakan OpenVZ tetapi bukan VServer atau LXC adalah pos pemeriksaan:Anda dapat mengambil snapshot dari mesin yang sedang berjalan dan mengembalikannya nanti. Kandidat lainnya adalah User-mode Linux, yang menjalankan sistem Linux lengkap di dalam proses yang berjalan sebagai pengguna biasa di host.

Untuk keperluan percobaan dengan instalasi OS lain, chroot baik-baik saja. Jika Anda ingin menjalankan layanan dalam instalasi eksperimental atau bermain dengan jaringan, gunakan LXC. Jika Anda ingin snapshot, gunakan OpenVZ. Jika Anda menginginkan kernel yang benar-benar terpisah tetapi sedikit overhead memori, gunakan User-mode Linux. Jika Anda menginginkan snapshot dan kernel terpisah, gunakan VirtualBox.


Docker membuat LXC lebih mudah digunakan:

Fitur penting

Isolasi sistem file :setiap kontainer proses berjalan dalam sistem file root yang benar-benar terpisah.

Isolasi sumber daya :sumber daya sistem seperti cpu dan memori dapat dialokasikan secara berbeda untuk setiap wadah proses, menggunakan grup c.

Isolasi jaringan :setiap wadah proses berjalan di ruang nama jaringannya sendiri, dengan antarmuka virtual dan alamat IP sendiri.

Copy-on-write :sistem file root dibuat menggunakan copy-on-write, yang membuat penyebaran menjadi sangat cepat, hemat memori, dan hemat disk.

Mencatat :aliran standar (stdout/stderr/stdin) dari setiap wadah proses dikumpulkan dan dicatat untuk pengambilan real-time atau batch.

Ubah manajemen :perubahan pada sistem file wadah dapat dikomit menjadi gambar baru dan digunakan kembali untuk membuat lebih banyak wadah. Tidak diperlukan pembuatan template atau konfigurasi manual.

Shell interaktif :docker dapat mengalokasikan pseudo-tty dan melampirkan ke input standar wadah apa pun, misalnya untuk menjalankan shell interaktif sekali pakai.

Di balik terpal

Di bawah terpal, Docker dibangun di atas komponen berikut:

  • Kemampuan cgroup dan namespace dari kernel Linux

  • AUFS, sistem file gabungan yang kuat dengan kemampuan copy-on-write

  • Bahasa pemrograman Go

  • lxc, sekumpulan skrip praktis untuk menyederhanakan pembuatan kontainer linux.


Lihatlah OpenVZ atau Linux Containers, keduanya mengimplementasikan lingkungan pseudo-virtualisasi yang ringan dengan userland unik pada kernel yang sama.

OpenVZ lebih matang pada tahap ini.


Linux
  1. Bangun wadah Anda sendiri di Linux

  2. Siapkan Wadah Linux dengan LXC di Ubuntu 16.04

  3. Cara Membuat dan Meluncurkan Kontainer Linux LXC dengan Perintah LXC

  1. C # di lingkungan linux

  2. Mengatur variabel lingkungan Linux

  3. Tersedia alternatif X11 yang ringan?

  1. Sejarah runtime container Linux tingkat rendah

  2. 5 gambar kontainer Linux favorit saya

  3. Linux – Lxc; Menyebarkan Gambar Dengan X11 Terkecil Mungkin?