Runj - Toolkit yang kompatibel dengan OCI untuk mengelola container berdasarkan jail FreeBSD

Samuel Karp, seorang insinyur di Amazon yang mengembangkan distribusi Bottlerocket Linux dan teknologi isolasi kontainer untuk AWS, sedang mengembangkan runtime runj baru berdasarkan lingkungan jail FreeBSD untuk menyediakan peluncuran kontainer terisolasi yang dirancang sesuai dengan inisiatif spesifikasi OCI (Open Container)) . Proyek ini diposisikan sebagai proyek eksperimental, dikembangkan di waktu senggang dari pekerjaan utama dan masih dalam tahap prototipe. Kode ini ditulis dalam Go dan didistribusikan di bawah lisensi BSD.

Setelah membawa pengembangan ke tingkat yang tepat, proyek ini berpotensi berkembang ke tingkat yang memungkinkan Anda menggunakan runj untuk menggantikan runtime reguler di sistem Docker dan Kubernetes, menggunakan FreeBSD alih-alih Linux untuk menjalankan container. Dari runtime OCI, perintah saat ini diterapkan untuk membuat, menghapus, memulai, menghentikan paksa, dan mengevaluasi status kontainer. Pengisian wadah dibuat berdasarkan lingkungan FreeBSD standar atau dipreteli.

Karena spesifikasi OCI belum mendukung FreeBSD, proyek telah mengembangkan sejumlah parameter tambahan terkait konfigurasi jail dan FreeBSD, yang rencananya akan diajukan untuk dimasukkan dalam spesifikasi OCI utama. Untuk mengelola jail, digunakan utilitas jail, jls, jexec, kill dan ps dari FreeBSD, tanpa mengakses panggilan sistem secara langsung. Rencana masa depan termasuk menambahkan dukungan untuk manajemen keterbatasan sumber daya melalui antarmuka kernel RCTL.

Selain runtime sendiri, lapisan eksperimental juga sedang dikembangkan di repositori proyek untuk digunakan dengan runtime containerd (digunakan di Docker), dimodifikasi untuk mendukung FreeBSD. Utilitas khusus ditawarkan untuk mengubah rootf FreeBSD menjadi image container yang kompatibel dengan OCI. Gambar yang dibuat nantinya dapat diimpor ke containerd.

Sumber: opennet.ru

Tambah komentar