Phát hành Kata Containers 3.0 với tính năng cách ly dựa trên ảo hóa

Sau hai năm phát triển, việc phát hành dự án Kata Containers 3.0 đã được xuất bản, phát triển một ngăn xếp để tổ chức thực thi các container bằng cách sử dụng cách ly dựa trên các cơ chế ảo hóa chính thức. Dự án được Intel và Hyper tạo ra bằng cách kết hợp công nghệ Clear Containers và runV. Mã dự án được viết bằng Go và Rust và được phân phối theo giấy phép Apache 2.0. Sự phát triển của dự án được giám sát bởi một nhóm làm việc được thành lập dưới sự bảo trợ của tổ chức độc lập OpenStack Foundation, bao gồm các công ty như Canonical, China Mobile, Dell/EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE và ZTE .

Trọng tâm của Kata là thời gian chạy, cung cấp khả năng tạo các máy ảo nhỏ gọn chạy bằng bộ ảo hóa đầy đủ, thay vì sử dụng các bộ chứa truyền thống sử dụng nhân Linux thông thường và được cách ly bằng cách sử dụng không gian tên và nhóm. Việc sử dụng máy ảo cho phép bạn đạt được mức độ bảo mật cao hơn nhằm bảo vệ khỏi các cuộc tấn công do khai thác lỗ hổng trong nhân Linux.

Kata Container tập trung vào việc tích hợp vào cơ sở hạ tầng cách ly container hiện có với khả năng sử dụng các máy ảo tương tự để tăng cường bảo vệ các container truyền thống. Dự án cung cấp các cơ chế để đảm bảo khả năng tương thích của các máy ảo hạng nhẹ với nhiều cơ sở hạ tầng cách ly vùng chứa, nền tảng điều phối vùng chứa và thông số kỹ thuật như OCI (Sáng kiến ​​vùng chứa mở), CRI (Giao diện thời gian chạy vùng chứa) và CNI (Giao diện mạng vùng chứa). Các công cụ có sẵn để tích hợp với Docker, Kubernetes, QEMU và OpenStack.

Phát hành Kata Containers 3.0 với tính năng cách ly dựa trên ảo hóa

Việc tích hợp với hệ thống quản lý vùng chứa đạt được bằng cách sử dụng lớp mô phỏng quản lý vùng chứa, lớp này truy cập tác nhân quản lý trong máy ảo thông qua giao diện gRPC và proxy đặc biệt. Bên trong môi trường ảo do trình ảo hóa khởi chạy, một nhân Linux được tối ưu hóa đặc biệt sẽ được sử dụng, chỉ chứa bộ khả năng cần thiết tối thiểu.

Với tư cách là một trình ảo hóa, nó hỗ trợ sử dụng Dragonball Sandbox (một phiên bản KVM được tối ưu hóa cho các vùng chứa) với bộ công cụ QEMU, cũng như Firecracker và Cloud Hypervisor. Môi trường hệ thống bao gồm một daemon khởi tạo và một tác nhân. Tác nhân cung cấp khả năng thực thi các hình ảnh vùng chứa do người dùng xác định ở định dạng OCI cho Docker và CRI cho Kubernetes. Khi được sử dụng cùng với Docker, một máy ảo riêng biệt sẽ được tạo cho mỗi vùng chứa, tức là. Môi trường chạy trên bộ ảo hóa được sử dụng để khởi chạy các vùng chứa lồng nhau.

Phát hành Kata Containers 3.0 với tính năng cách ly dựa trên ảo hóa

Để giảm mức tiêu thụ bộ nhớ, cơ chế DAX được sử dụng (truy cập trực tiếp vào hệ thống tệp, bỏ qua bộ đệm trang mà không sử dụng cấp thiết bị khối) và để loại bỏ các vùng bộ nhớ giống hệt nhau, công nghệ KSM (Kernel Samepage Merging) được sử dụng, cho phép bạn tổ chức chia sẻ tài nguyên hệ thống máy chủ và kết nối với các hệ thống khách khác nhau chia sẻ một mẫu môi trường hệ thống chung.

Trong phiên bản mới:

  • Một thời gian chạy thay thế (runtime-rs) được đề xuất, tạo thành việc lấp đầy các vùng chứa, được viết bằng ngôn ngữ Rust (thời gian chạy được cung cấp trước đó được viết bằng ngôn ngữ Go). Runtime tương thích với OCI, CRI-O và Containerd, cho phép sử dụng nó với Docker và Kubernetes.
  • Một trình ảo hóa dragonball mới dựa trên KVM và Rust-vmm đã được đề xuất.
  • Đã thêm hỗ trợ chuyển tiếp quyền truy cập vào GPU bằng VFIO.
  • Đã thêm hỗ trợ cho cgroup v2.
  • Hỗ trợ thay đổi cài đặt mà không thay đổi tệp cấu hình chính đã được triển khai bằng cách thay thế các khối trong các tệp riêng biệt nằm trong thư mục “config.d/”.
  • Các thành phần Rust bao gồm một thư viện mới để làm việc an toàn với đường dẫn tệp.
  • Thành phần virtiofsd (viết bằng C) đã được thay thế bằng virtiofsd-rs (viết bằng Rust).
  • Đã thêm hỗ trợ cho các thành phần QEMU hộp cát.
  • QEMU sử dụng API io_uring cho I/O không đồng bộ.
  • Hỗ trợ cho các tiện ích mở rộng Intel TDX (Tiện ích mở rộng miền đáng tin cậy) đã được triển khai cho QEMU và Cloud-hypervisor.
  • Các thành phần được cập nhật: QEMU 6.2.0, Cloud-hypervisor 26.0, Firecracker 1.1.0, Linux kernel 5.19.2.

Nguồn: opennet.ru

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