•Live Migration: Công nghệ này cho phép di chuyển các server ảo hóa từ server
vật lý này sang server vật lý khác, nhưng vẫn đảm bảo không có bất kì sự gián đoạn nào hay cảm nhận thời gian downtime trong những phiên kết nối truy cập.
Windows Server 2008 R2 đều cung cấp 2 cách thức di chuyển tự động là: Quick Migration và Live Migration. Mặc dù cả 2 cách thức này đều nhằm mục đích là chuyển dời server ảo hóa giữa các server Hyper-V(vật lý) nhưng phương pháp và cách thức hoàn thành công việc là khác nhau. Cách thực hiện của Quick Migration là sẽ lưu lại, di dời VMs đến vị trí khác sau đó khôi phục sự hoạt động VMs này, có nghĩa theo cách này cần một chút thời gian downtime của hệ thống cho việc di dời server ảo hóa. Trong
khi đó Live Migration thì sử dụng cơ chế khác và cách thức Live Migration xử lý như sau: Giả sử ta có 2 node trên cùng 1 cluster sẽ dùng thực hiện Live Migration. Node 1 chứa VMs sẽ dời đi, node 2 là mục tiêu mà VMs sẽ dời đến và người dùng đang truy cập kết nối với node1.
1. Bước đầu tiên của quá trình live migration 1 ảnh chụp ban đầu của VMs trên node1 được chuyển sang node2.
2. Trong trường hợp người dùng đang truy cập tại node1 thì những sự thay đổi và hoạt động trên node1 vẫn diễn ra bình thường, tuy nhiên những thay đổi này sẽ được ghi nhận.
3. Những thay đổi trên node1 được đồng bộ liên tục đến node2.
4. Khi đã đồng bộ xong thì node1 sẽ offline và các phiên truy cập trên node1 được chuyển sang node2.
Hình 3.2. Live Migration
vào đó Live Migration phục vụ việc gia tăng khả năng sẵn sàng cho hệ thống, hạn chế tối đa thời gian downtime đã dự kiến hoặc ngoài dự kiến. Note: Processor Compatibility Mode.
Nếu các server trong cluster dự tính thực hiện việc chuyển đổi có cùng cấu hình phần cứng thì việc thực hiện không cần quan tâm nhiều nữa. Nhưng nếu giữa các node trong cluster khác nhau về phần cứng, vd như bộ vi xử lý (CPU) thì có thể thắc mắc là liệu có sự cố nào diễn ra trong quá trình di chuyển hay không. Vì suốt quá trình này các VMs vẫn hoạt động mà đương nhiên VMs đang được xử lý trên Hyper-V server vật lý có cấu hình phần cứng khác nhau.
Các ứng dụng sử dụng bộ vi xử lý chỉ lệnh x86 CPUID để xác định loại bộ vi xử lý và tính năng xử lý. Khi được kích hoạt tính năng Prosessor Compatibility Mode, Hyper-V ẩn các tính năng đặc trưng của bộ vi xử lý bằng cách chặn những chỉ lệnh của CPUID và sau đó thanh toán bù trừ trở lại các bit tương ứng với các đặc trưng tương ứng, sau khi quá trình chuyển đổi hoàn tất.
Sử dụng Prosessor Compatibility Mode chỉ trong trường hợp bộ vi xử lý của các Hyper-V server tiến hành quá trình Live Migration là cùng nhà sản xuất và tương tự nhau. Có nghĩa là không thể thực hiện quá trình Live Migration để di chuyển một máy ảo chạy trên nền Intel VT (Intel® Virtualization Technology) đến nền AMD-V (AMD®Virtualization).
•Cluster Shared Volumes (CSV): Cluster Shared Volume chỉ có sẵn trong các
phiên bản Windows Server 2008 R2, nó được thiết kế nhằm gia tăng cho tính năng sẵn sàng cao trong giải pháp Failover Clustering. CSV là 1 khối lượng lưu trữ cho phép tất cả các node trong Microsoft® Failover Cluster có thể đồng thời đọc ghi lên nó.Do đó mỗi node khác nhau có thể lưu trữ các máy ảo khác nhau nhưng tất cả đều có các tập tin trên cùng khối lượng lưu trữ này.
Khuyến cáo từ Microsoft là nên triển khai Cluster Shared Volume khi thiết lập lưu trữ cho Live Migration. CSV giúp đạt những hiệu quả sau:
o Tất cả các node trong cluster có khả năng đồng thời truy cập vào khối lưu trữ chia sẻ.
o Nhiều đĩa cứng ảo (VHDs) có thể lưu trữ trên một khối lượng chia sẻ duy nhất.
o Không bị ảnh hưởng bởi kí tự ổ đĩa. o Nâng cao khả năng failover.
Hình 3.3. Cluster Shared Volumes
Như sơ đồ bên trên thì cả 2 node đồng thời truy cập vào cùng các VHDs chia sẻ đang chạy của các node này.Trong trường hợp có 1 node lỗi thì cũng không có sự thay đổi về quyền truy xuất của node còn lại lên các VHDs được lưu trữ trên Cluster Shared Volume.
•Hot adding and hot removal of storage: Ảo hoá tách riêng phần mềm chạy
trên một hệ thống với phần cứng và làm các tổ chức IT được thuận tiện hơn khi triển khai và quản lý môi trường của họ. Với sự linh hoạt này, chắc chắn khách hàng cũng sẽ tìm thấy khả năng để mở rộng và giảm bớt lưu trữ tách biệt với các máy ảo. Với Windows Server 2008 R2 Hyper-V, Microsoft đang thêm khả năng để add và remove các đĩa cứng ảo từ một máy ảo khi nó vẫn đang hoạt động. Khả năng này mở ra một chuỗi những việc có thể làm cho các giải pháp lưu trữ backup, ...
•Processor compatibility mode: Đây là một tính năng khá đặc biệt dùng để hỗ
trợ cho quá trình Live Migration cho phép di trú máy ảo qua lại giữa các máy chủ có cùng nền tảng vi xử lý ( Intel hoặc AMD). Điều này làm dễ dàng hơn cho việc nâng cấp hệ thống khi di trú máy ảo từ hệ thống mới sang hệ thống cũ. Tăng khả năng linh động hơn cho qua trình di trú các máy ảo trong cùng cluster. Chú ý là chỉ cho phép dùng tính năng này để di trú máy ảo giữa các máy chủ có chung nền tảng vi xử lý không cho phép việc di trú giữa Intel và AMD.
•Cải tiến hỗ trợ vi xử lý máy ảo: ở phiên bản R2 khả năng cung cấp tài nguyên
bộ xử lý cải tiến đáng kể hỗ trợ 384 bộ vi xử lý ảo chạy đồng thời với 512 bộ vi xử lý ảo cho mỗi máy chủ. Có thể triển khai trên một máy chủ tối đa như sau:
o 384 máy ảo với mỗi máy là một vi xử lý (Single Core). o 256 máy ảo với mỗi máy là 2 bộ vi xử lý (Duo Core). o 128 máy ảo với mỗi mày là 4 bộ vi xử lý (Quad Core).
•Second level address translation (SLAT): Trong cơ chế vận hành của HyperV
thì để quản lý bộ nhớ Hypervisor cần quản lý hai tầng chuyển đổi không gian địa chỉ cho máy ảo.
Mức thứ nhất của việc chuyển đổi là ánh xạ không gian địa chỉ ảo của máy ảo sang không gian địa chỉ vật lý được cấp phát cho nó và mức thứ hai là ánh xạ không gian địa chỉ vật lý được cấp phát cho máy ảo với không gian địa chỉ vật lý của hệ thống. Để làm
được ý tưởng này, trong lớp Hypervisor phải duy trì một bảng Shadow Page được tạo ra từ việc biên dịch hai giai đoạn chuyển đổi không gian địa chỉ ở trên thành một bảng duy nhất. Trong phiên bản đầu quá trình duy trì bàng Shadow Page hao tốn hơn 10% thời gian của quá trình xử lý và yêu cầu nhiều bộ nhớ cho mỗi máy ảo.
Đến phiên bản R2 sự bất lợi này đã được cải tiến đáng kể lúc này không cần phải duy trì bảng Shadow Page nữa mà thay vào đó là sử dụng một cấu trúc mới có tên gọi là Second Level Address Translation SLAT). Tuy nhiên chức năng này chỉ hỗ trợ cho hệ thống phần cứng hỗ trợ AMD-V và Intel-V. với AMD-V chức năng SLAT được thực hiện thông qua một thuật toán có tên là Nested Page Tables (NPT) cũng thường được biết đến với tên Rapid Virtualization Indexing (RVI). Còn với intel công nghệ này được đặt tên là Extended Page Tables (EPT). Dùng NPT hoặc EPT, AMD-V hoặc Intel-V có thể duy trì và thực hiện hai tầng chuyển đổi không gian địa chỉ cho mỗi máy ảo trong phần cứng, giảm đi sự rắc rối đáng kể cho lớp Hypervisor bên cạnh đó cũng làm tăng thêm phần lớn hiệu suất cho hệ thống đặc biệt là khi máy chủ Hyper-V đang chạy nhiều ảo gia tăng hiệu suất xử lý bộ nhớ. Mặc định Core Parking tác động lên tất cả các core của vi xử lý chứ không có khả năng tác động lên một core cụ thể. Trong HyperV bản đầu, luồng tải của các máy ảo sẽ được lập lịch để tối ưu hóa việc sử dụng các core nhưng với sự ra đời của Core Parking mọi thứ thay đổi. Dựa vào các quy tắc trong policy, phân vùng cha sẽ quyết định các core nào đang trạng thái nghỉ và báo lại cho Hypervisor thông tin đó. Khi mà Hypervisor cần thêm core cho các máy ảo xử lý nó sẽ đưa ra quyết định core nào sẽ trở lại trạng thái đợi lệnh làm việc.
•VM Chimmey: Đây là một tính năng không phải mới nó từng là thành phần chỉ
tộn tại trong môi trường không ảo hóa. Giờ đây đã được đem vào Hyper-V với khả năng đưa các traffice TCp/IP của các máy ảo đặt lên trên card mạng vật lý trên máy vật lý. Điều này giảm bớt gánh nặng khá lớn cho CPU khi mà lượng tải công việc ngày càng tăng.
•Virtual Machine Queue (VMQ): Mặc dù quá trình tối ưu hóa trên Virtual
Machines (VMs) đã giúp các máy chủ tăng cường hoạt động một cách hiệu quả nhưng vẫn không giải quyết được vấn đề tranh chấp băng thông giữa các nguồn khác nhau trong hệ thống mạng. Để giải quyết vấn đề trên thì hệ điều hành Microsoft Windows Server 2008 R2 đã đưa ra nhiều giải pháp và một trong các giải pháp đó là Virtual Machine Queue. Qua quá trình thử nghiệm của Dell cho thấy rằng tính năng này có khả năng tăng cường hiệu quả quá trình xử lý dữ liệu đầu vào (throughput) trên Network I/O trong khi giảm gánh nặng cho máy chủ.
Trong phiên bản trước của Hyper-V, Virtual-network-switch thực hiện xử lý lưu lượng giữa VMs và NICs. Quá trình này bao gồm phân loại và lọc các gói tin dựa vào địa chỉ MAC hoặc VLAN cũng như quá trình dẫn đường cho các gói tin đến VM Adapder. Hoạt động này rất tốn dung lượng xử lý vì số lượng gói tin sẽ tăng lên khi mật độ VM tăng.
Windows Server 2008 R2 Hyper-V đưa ra tiện ích Virtual Machine Queue nhằm giải quyết các vấn đề trên đồng thời tối ưu hóa việc sử dụng phần cứng. Tính năng năng Virtual Machine Queue hoạt động kết hợp với sự hỗ trợ của phần cứng giúp sắp xếp gói tin ra vào NIC vật lý. Giải pháp này giúp giảm tải lưu lượng gói tin ra vào và phân bố hợp lý lưu lượng cho các ứng dụng khác nhau. Doanh nghiệp có thể triển khai kỹ thuật này trên nền Dell PowerEdge với Gigabit Ethernet (GbE) Intel VT Quad-port Server Adapter cũng như là 10 Gigabit Ethernet (10GbE) Intel XF SR, Intel AT và Intel DAC Server Adapter.
Một hệ thống không có Virtual Machine Queue thì Hypervisor phải sắp xếp và dẫn đường các gói tin đến địa chỉ VMs đích, và các gói tin đến sẽ được sao chép hai lần trong khi chuyển từ NIC Buffer đến Application Buffer. Với chức năng Virtual Machine Queue, nhiều hàng (Queue) sẽ được tạo ra, trong đó mỗi hàng ứng với một VM. Ngoài ra, còn có một số hàng mặc định dẫn các gói tin Multicast, Broadcast… Khi gói tin chứa dữ liệu đến NIC vật lý, NIC sẽ sắp xếp các gói dựa vào địa chỉ MAC
và VLAN tag của VM đích và đặt chúng vào hàng tương ứng. Sau đó Virtual Network Switch sẽ lấy các gói trong hàng và đưa đến VMs.
•Jumbo frames: Với việc cải tiến hỗ trợ cho các frame jumbo có thể gởi và nhận
những trọng tải lớn. Một frame jumbo là một frame Ethernet lên đến 9000 byte trọng tải dữ liệu so với 1500 byte như truyền thống. Điều này làm giảm bớt overhead bị mắc ở mỗi byte transfer. Liên kết bởi offload gởi lớn (LSO), là khả năng của hệ điều hành có thể transfer một lượng dữ liệu lớn đến NIC để tạo các frame Ethernet và offload nhận lớn (LRO), cho phép tạo một buffer dữ liệu lớn đơn lẻ từ nhiều frame Ethernet đang đến, nó cung cấp việc giảm bớt các overhead quá trình network.
•Core Parking: Advanced Configuration and Power Interface (gọi tắt ACPI) là
một đặc tả kỹ thuật về việc quản lý điện năng cho bộ xử lý còn được gọi là C states. Cung cấp cho hệ thống khả năng power off một số thành phần và đình chỉ việc thực thi các lệnh từ đó giảm thiểu nguồn năng lượng không cần thiết cho hệ thống.
Và trong phiên bản R2 được biết đến với tính năng tương tự là Core Parking. Cung cấp khả năng đưa vi xử lý về tình trạng deep C states tạm gọi là tình trạng nghỉ khi mà các luồng dịch vụ chỉ cần một số ít nhân xử lý hơn là sử dụng tất cả các nhân.