TỔNG QUAN VỀ HAIZEA

Một phần của tài liệu TÌM HIỂU CÁC HỆ THỐNG ĐỊNH THỜI CẤP PHÁT TÀI NGUYÊN ẢO (Trang 110)

Haizea là một trình quản lý lease mã nguồn mở viết bằng Python. Haizea có thể nhận lease, lập lịch trên tài nguyên vật lý, và gởi những lệnh ban hành đến node vật lý dựa trên kế hoạch lập lịch cho lease đó. Trước đây, Haizea được tạo ra để làm công cụ thí nghiệm, cung cấp framework để thực thi và so sánh những thuật toán lập lịch dùng trình mô phỏng. Tuy nhiên, sau này Haizea đã trở thành một trình lập lịch cho một trình quản lý cơ sở hạ tầng ảo mã nguồn mở OpenNubela.

Cụ thể, Haizea hiện nay có thể chạy trong 3 chế độ:

Unattended simulation mode Haizea nhận một danh sách các yêu cầu lease

(lưu trong 1 tập tin) và một tập tin cấu hình chứa tùy chọn lập lịch và mô phỏng (như đặc tính của phần cứng), rồi xử lý khi mô phỏng. Ở đây, các lệnh ban hành không gởi đến phần cứng mà giả định là được hoàn thành thành công. Chế độ này hoạt động với mục tiêu thu được kế hoạch lập lịch cuối cùng cho nhiều các lease mà không cần phải đợi tất cả những lease đó hoàn thành trong thời gian thực (cho phép khảo sát hiệu quả của một cấu hình lập lịch nào đó trong khoảng thời gian vài tuần hoặc vài tháng). Kết quả cuối cùng của chế độ unattended simulation là một tập tin chứa dữ liệu lập lịch và số liệu có thể dùng để làm báo cáo và vẽ đồ thị.

Interactive simulation mode tập tin dữ liệu sinh ra ở chế độ unattended

simulation nói trên chúng ta không thể đọc trực tiếp mà phải nhờ những chương trình khác nữa hỗ trợ. Do đó, chế độ unattended simulation sẽ gây khó khăn trong trường hợp cần kết quả phản hồi ngay lập tức trên một thao tác lập lịch. Với chế độ interactive simulation, các thao tác ban hành vẫn được mô phỏng nhưng Haizea chạy trong thời gian thực. Ngoài ra, thay vì xử lý một danh sách các yêu cầu thuê được chuẩn bị sẵn, Haizea cung cấp một giao diện dòng lệnh để yêu cầu những

OpenNebula mode OpenNebula là một trình quản lý cơ sở hạ tầng ảo có thể

triển khai và cấu hình những máy ảo trên tài nguyên. Mặc dù OpenNebula xử lý tất cả những chi tiết ở cấp độ thấp trong công việc quản lý những máy ảo được phân bố (như máy ảo Xen, KVM, và VMWare được hỗ trợ hiện nay), trình lập lịch mặc định của OpenNebula được thiết kế phục vụ lập lịch tức thì. Haizea có thể sử dụng để thay thế cho trình lập lịch của OpenNebula, có hỗ trợ cả advance reservation, chiếm lấp, và deadline...

Tất cả những thuật toán, mô hình, và chính sách trình bày ở những chương sau đều được Haizea áp dụng thực thi. Tất cả thực nghiệm đều sử dụng Haizea (chủ yếu là mô phỏng, chỉ có một vài được nối với OpenNebula). Do đó, chương này sẽ cung cấp phần giới thiệu về cấu trúc Haizea. Cấu trúc của Haizea được chia thành 5 phần chính, sau đây là chi tiết của mỗi thành phần:

Request Frontends: Xử lý và lập lịch cho các lease, khách hàng sử dụng tài

nguyên phải cung cấp những yêu cầu lease cho Haizea. Haizea có hỗ trợ những multiple frontends để yêu cầu lease thuê.

Scheduler: Chứa tất cả mã nguồn để lập lịch.

Policy Engine: Các quyết định lập lịch phụ thuộc chính sách của nhà cung cấp

tài nguyên nhất định (ví dụ: một nhà cung cấp có thể có chính sách không chấp nhận các lease advance reservation). Haizea có một công cụ chính sách cho phép nhiều modul chứa các chính sách cho thuê và lập lịch đa dạng có thể gắn vào, cho phép triển khai những chính sách mới mà không cần chỉnh sửa mã nguồn của Haizea.

Một phần của tài liệu TÌM HIỂU CÁC HỆ THỐNG ĐỊNH THỜI CẤP PHÁT TÀI NGUYÊN ẢO (Trang 110)