Runj - Bộ công cụ tương thích OCI để quản lý container dựa trên FreeBSD jail

Samuel Karp, một kỹ sư tại Amazon, người phát triển công nghệ cách ly vùng chứa và phân phối Bottlerocket Linux cho AWS, đang phát triển một runj thời gian chạy mới dựa trên môi trường tù FreeBSD để cung cấp khả năng khởi chạy riêng biệt các vùng chứa được thiết kế theo sáng kiến ​​đặc tả OCI (Open Container)) . Dự án được định vị là thử nghiệm, được phát triển trong thời gian rảnh rỗi từ công việc chính và vẫn đang ở giai đoạn nguyên mẫu. Mã được viết bằng Go và được phân phối theo giấy phép BSD.

Sau khi đưa sự phát triển lên mức phù hợp, dự án có thể phát triển đến mức cho phép bạn sử dụng runj để thay thế thời gian chạy thông thường trong hệ thống Docker và Kubernetes, sử dụng FreeBSD thay vì Linux để chạy các container. Từ thời gian chạy OCI, các lệnh hiện được triển khai để tạo, xóa, bắt đầu, buộc chấm dứt và đánh giá trạng thái của vùng chứa. Việc lấp đầy vùng chứa được tạo dựa trên môi trường FreeBSD tiêu chuẩn hoặc rút gọn.

Do đặc tả OCI chưa hỗ trợ FreeBSD nên dự án đã phát triển một số tham số bổ sung liên quan đến cấu hình jail và FreeBSD, dự kiến ​​sẽ được đưa vào đặc tả OCI chính. Để quản lý jail, các tiện ích jail, jls, jexec, kill và ps từ FreeBSD được sử dụng mà không cần truy cập trực tiếp vào các lệnh gọi hệ thống. Các kế hoạch trong tương lai bao gồm thêm hỗ trợ cho việc quản lý giới hạn tài nguyên thông qua giao diện RCTL kernel.

Ngoài thời gian chạy của riêng nó, một lớp thử nghiệm cũng đang được phát triển trong kho dự án để sử dụng với bộ chứa thời gian chạy (được sử dụng trong Docker), được sửa đổi để hỗ trợ FreeBSD. Một tiện ích đặc biệt được cung cấp để chuyển đổi các rootf FreeBSD thành hình ảnh vùng chứa tương thích với OCI. Hình ảnh được tạo sau đó có thể được nhập vào containerd.

Nguồn: opennet.ru

Thêm một lời nhận xét