Công nghệ ảo hóa giúp cho phép tạo ra nhiều máy ảo độc lập từ một máy chủ vật lý. Mỗi máy ảo là một hệ thống riêng biệt có hệ điều hành riêng, phần cứng (ảo) riêng và các ứng dụng riêng. Trong bài viết này SmallNET sẽ giới thiệu kiến trúc ảo hóa Hypervisor-based. Các bạn cùng theo dõi nhé.
Đây cũng là 1 trong các kiểu kiến trúc ảo hóa phổ biến không thua kém gì so với Hosted-based. Nó còn có tên gọi khác là kiểu kiến trúc ảo hóa bare-metal hypervisor. Khác với Hosted-based, lớp phần mềm hypervisor trong mô hình kiến trúc ảo hóa này sẽ chạy trực tiếp trên nền tảng phần cứng của máy chủ mà không thông qua bất kỳ một hệ điều hành hay nền tảng trung gian nào khác. Vì thế trình điều khiển máy ảo (hypervisor) sẽ có khả năng kiểm soát và điều khiển phần cứng của máy chủ.
Ngoài ra, trong kiểu kiến trúc ảo hóa Hypervisor-based, các hệ điều hành sẽ chạy trên một lớp nằm phía trên các hypervisor dạng bare-metal và chúng cũng sẽ được quản lý bởi chính các hypervisor đó.
Hệ thống ảo hóa máy chủ trên nền tảng Hypervisor-based (bare-metal hypervisor) sẽ bao gồm 3 lớp chính:
Lớp 1: Lớp này cũng tương tự như ở Hosted-based bao gồm thiết bị lưu trữ, thiết bị nhập xuất dữ liệu (HDD, RAM), CPU (bộ xử lý trung tâm) và các thiết bị cần thiết khác (thiết bị mạng, vi xử lý âm thanh, đồ họa…)
Lớp 2: Khác với lớp 2 (hệ điều hành máy chủ) của mô hình kiến trúc ảo hóa Hosted-based, lớp 2 của mô hình kiến trúc ảo hóa Hypervisor-based sẽ trực tiếp là hệ thống ảo hóa hypervisor (Virtual Machine Monitor) thực hiện vai trò liên lạc trực tiếp với phần cứng phía dưới đồng quản lý và phân phối các tài nguyên cho các hệ điều hành máy ảo khác nằm trên nó.
Lớp 3: Là lớp ứng dụng của máy ảo sẽ lấy tài nguyên từ phần cứng thông qua sự quản lý và cấp phát tài nguyên của lớp 2 (lớp hypervisor trên).
Các kiểu kiến trúc ảo hóa Hypervisor-based (Bare-metal hypervisor) phổ biến được biết đến như: Vmware ESX Server, IBM’s POWER Hypervisor (PowerVM), Microsoft’s Hyper-V (6/2008), Citrix XenServer, Oracle VM…
Mô hình Hypervisor-based (Bare-metal hypervisor) được chia ra làm 2 dạng là Monolithic Hypervisor và Microkernel Hypervisor.
Monolithic Hypervisor
Monolithic Hypervisor đóng vai trò như 1 hệ điều hành máy chủ và chứa những trình điều khiển (Driver) hoạt động trong lớp Hypervisor có nhiệm vụ truy cập tài nguyên phần cứng bên dưới. Các hệ điều hành máy ảo sẽ có thể liên lạc được với phần cứng thông qua lớp trình điều khiển thiết bị hoạt động trong lớp Hypervisor này.
Microkernelized Hypervisor
Microkernelized Hypervisor là một kiểu ảo hóa gần giống như kiểu ảo hóa Monolithic Hypervisor mới vừa được đề cập ở trên. Tuy nhiên nó khác biệt ở chỗ trình điều khiển thiết bị phần cứng không nằm ngay trong lớp Hypervisor mà nằm bên trên lớp này và được cài trên một máy ảo có nhiệm vụ làm trình điều khiển chính.
Trình điều khiển chính này tạo ra và quản lý các trình điều khiển con cho các máy ảo. Khi máy ảo muốn liên lạc với phần cứng phải thông qua trình điều khiển con. Trình điều khiển con sẽ liên lạc với trình điều khiển chính và sau đó trình điều khiển chính này mới có thể chuyển yêu cầu xuống lớp Hypervisor và liên lạc với phần cứng. Khi có các trả lời từ các phần cứng đến các máy ảo thì quá trình này sẽ diễn ra ngược lại.