Mục Lục:
I. Giới thiệu
II. Nội dung chi tiết
1. Về các tệp Máy Ảo (Virtual Machine Files)
2. Về Phần Cứng Ảo (Virtual Hardware)
3. Về CPU và Bộ Nhớ (About CPU and Memory)
4. Về Lưu Trữ Ảo (About Virtual Storage)
5. Mạng ảo (Virtual Networks)
III. Kết luận
I. Giới thiệu
Khi làm việc với các hệ thống ảo hóa, máy ảo (Virtual Machine - VM) đóng vai trò cực kỳ quan trọng trong việc mô phỏng phần cứng của một máy tính thực tế. Một máy ảo cung cấp một môi trường ảo nơi có thể chạy các hệ điều hành và phần mềm như trên một máy vật lý. Để hiểu rõ hơn về cách thức hoạt động của máy ảo, chúng ta sẽ đi sâu vào các thành phần phần cứng ảo của máy ảo, từ các tập tin cấu thành máy ảo, so sánh các phiên bản phần cứng của máy ảo, đến việc điều hướng và kiểm tra các cài đặt trong vSphere Client.
Bài viết này sẽ giúp bạn nắm vững kiến thức cơ bản về phần cứng máy ảo, các phương pháp để tương tác và kiểm tra chúng trên nền tảng vSphere, cũng như cách truy cập vào bảng điều khiển của máy ảo.
II. Nội dung chi tiết
1. Về các tệp Máy Ảo (Virtual Machine Files)
Khi tạo ra một máy ảo, VMware sẽ tạo ra một loạt các tập tin khác nhau để lưu trữ trạng thái và thông tin cấu hình của máy ảo đó. Dưới đây là một số tệp phổ biến:
Bao gói Máy Ảo (Virtual Machine Encapsulation)
Mỗi máy ảo (VM) được lưu trữ dưới dạng tập hợp các tệp hoặc đối tượng:
2. Về Phần Cứng Ảo (Virtual Hardware)
Hệ điều hành khách (guest OS) truy cập các thiết bị phần cứng nhưng không nhận ra rằng chúng là ảo. Phần cứng ảo làm cho VM có thể di chuyển qua nhiều nền tảng VMware khác nhau.
Bạn có thể cấu hình bộ nhớ, CPU, thêm đĩa cứng ảo, NICs, và các thiết bị phần cứng ảo khác như CD/DVD, SCSI. Không phải tất cả các thiết bị đều có thể thêm vào hoặc cấu hình. Một số thiết bị như USB chỉ có thể sử dụng bởi một VM duy nhất tại một thời điểm.
Một máy ảo có các thành phần phần cứng ảo mô phỏng tương tự các thành phần của một máy tính vật lý. Các thành phần này có thể được cấu hình và điều chỉnh tùy theo yêu cầu của bạn:
Phiên bản Phần Cứng Ảo (Virtual Hardware Versions)
Phiên bản phần cứng ảo (VM compatibility level) xác định các chức năng mà hệ điều hành khách có thể hỗ trợ. Bạn nên sử dụng phiên bản phần cứng tương thích với phiên bản ESXi của hệ thống.
So sánh các phiên bản phần cứng máy ảo
VMware cung cấp nhiều phiên bản phần cứng cho máy ảo, và mỗi phiên bản lại cung cấp các tính năng và cải tiến mới. Khi bạn nâng cấp hoặc tạo máy ảo mới, việc chọn phiên bản phần cứng phù hợp là rất quan trọng.
Dưới đây là một số phiên bản phần cứng máy ảo phổ biến:
Bạn có thể thêm, thay đổi, hoặc cấu hình tài nguyên CPU và bộ nhớ để cải thiện hiệu suất VM. Số lượng vCPU tối đa có thể gán cho một VM phụ thuộc vào số lượng CPU logic của máy chủ và loại hệ điều hành khách.
Các Compute Maximum thường được công bố bởi VMware cho mỗi phiên bản vSphere, giúp các quản trị viên hạ tầng hiểu rõ giới hạn của hệ thống để cấu hình và triển khai các dịch vụ ảo hóa một cách hiệu quả.
Tầm Quan Trọng của Compute Maximum:
Đĩa ảo được kết nối với các bộ điều hợp lưu trữ ảo. ESXi cung cấp nhiều tùy chọn bộ điều hợp lưu trữ, bao gồm: SCSI, iSCSI, RAID, Fibre Channel, Fibre
ESXi truy cập bộ điều hợp trực tiếp thông qua trình điều khiển thiết bị trong VMkernel:
• BusLogic Parallel
• LSI Logic Parallel
• LSI Logic SAS
• VMware Paravirtual SCSI
• AHCI SATA controller
• NVMe ảo (Virtual NVMe)
Về Đĩa Dày (Thick-Provisioned Disks)
Sử dụng toàn bộ không gian đĩa được xác định khi tạo đĩa ảo, bất kể hệ thống tệp của hệ điều hành khách thực sự sử dụng bao nhiêu không gian đĩa.
Có hai loại đĩa dày:
Với đĩa mỏng, không gian chỉ được sử dụng khi cần thiết. VM luôn thấy kích thước đĩa đầy đủ nhưng chỉ sử dụng dung lượng cần thiết. Đĩa có thể mở rộng khi cần thêm dung lượng.
Quản lý Datastore chứa Đĩa Mỏng
Đĩa mỏng giúp tối ưu hóa dung lượng lưu trữ nhưng cũng có thể gây ra tình trạng thiếu dung lượng nếu không quản lý cẩn thận. Cần thiết lập các cảnh báo và báo cáo để theo dõi việc sử dụng dung lượng và quản lý datastore hiệu quả.
So sánh ba loại cấp phát đĩa ảo trong VMware:
1. Thick Provisioned Lazy-Zeroed (Cấp phát dày, xóa chậm)
Mạng ảo cho phép các máy ảo (VM) và các thiết bị vật lý giao tiếp với nhau. Khi cấu hình mạng cho một VM, bạn có thể thiết lập hoặc thay đổi các thông số như loại adapter mạng, nhóm port (port group) mà VM kết nối, trạng thái kết nối mạng, và tùy chọn tự động kết nối khi VM được bật.
Các loại adapter mạng (NIC Types)
Khi cấu hình máy ảo, bạn có thể thêm các adapter mạng (NIC) và chỉ định loại adapter phù hợp.
Các thiết bị PCI Passthrough cho phép máy ảo truy cập trực tiếp các tài nguyên vật lý để tối ưu hiệu suất.
Máy ảo cần có các thiết bị cơ bản như vCPU và bộ nhớ ảo, nhưng việc thêm các thiết bị khác giúp máy ảo hoạt động hiệu quả hơn.
Console máy ảo cung cấp các chức năng điều khiển máy ảo như chuột, bàn phím, và màn hình hiển thị. Bạn có thể sử dụng console để cài đặt hệ điều hành, quản lý BIOS, hoặc khởi động lại máy ảo.
Console máy ảo thường không được sử dụng cho các tác vụ hàng ngày, thay vào đó, các công cụ kết nối từ xa như Remote Desktop Connection hay Virtual Network Connection sẽ được sử dụng.
III. Kết luận
Việc tìm hiểu về phần cứng máy ảo là một bước quan trọng trong việc quản lý và vận hành môi trường ảo hóa. Từ việc xác định các tệp cấu thành một máy ảo, so sánh các phiên bản phần cứng, đến việc nhận diện các thành phần phần cứng ảo và sử dụng vSphere Client để kiểm tra cài đặt và truy cập vào bảng điều khiển, mạng ảo đến các thiết bị PCI Passthrough, các công cụ và thiết bị này cung cấp khả năng mạnh mẽ để quản lý tài nguyên tính toán, đảm bảo rằng các máy ảo hoạt động với hiệu suất cao nhất có thể trong môi trường ảo hóa.
I. Giới thiệu
II. Nội dung chi tiết
1. Về các tệp Máy Ảo (Virtual Machine Files)
2. Về Phần Cứng Ảo (Virtual Hardware)
3. Về CPU và Bộ Nhớ (About CPU and Memory)
4. Về Lưu Trữ Ảo (About Virtual Storage)
5. Mạng ảo (Virtual Networks)
III. Kết luận
[CHAP 14] Tìm hiểu về Virtual Machine Hardware Deep Dive
[CHAP 14] Tìm hiểu về Virtual Machine Hardware Deep Dive
I. Giới thiệu
Khi làm việc với các hệ thống ảo hóa, máy ảo (Virtual Machine - VM) đóng vai trò cực kỳ quan trọng trong việc mô phỏng phần cứng của một máy tính thực tế. Một máy ảo cung cấp một môi trường ảo nơi có thể chạy các hệ điều hành và phần mềm như trên một máy vật lý. Để hiểu rõ hơn về cách thức hoạt động của máy ảo, chúng ta sẽ đi sâu vào các thành phần phần cứng ảo của máy ảo, từ các tập tin cấu thành máy ảo, so sánh các phiên bản phần cứng của máy ảo, đến việc điều hướng và kiểm tra các cài đặt trong vSphere Client.
Bài viết này sẽ giúp bạn nắm vững kiến thức cơ bản về phần cứng máy ảo, các phương pháp để tương tác và kiểm tra chúng trên nền tảng vSphere, cũng như cách truy cập vào bảng điều khiển của máy ảo.
II. Nội dung chi tiết
1. Về các tệp Máy Ảo (Virtual Machine Files)
Khi tạo ra một máy ảo, VMware sẽ tạo ra một loạt các tập tin khác nhau để lưu trữ trạng thái và thông tin cấu hình của máy ảo đó. Dưới đây là một số tệp phổ biến:
- Tập tin (.vmx): Đây là tập tin cấu hình chính của máy ảo. Nó chứa tất cả các thông tin về tài nguyên và cấu hình phần cứng ảo của máy ảo (CPU, RAM, ổ đĩa,...).
- Tệp mẫu VM (.vmtx): Thay thế tệp .vmx khi VM được chuyển thành template.
- Tệp swap (.vswp): Được sử dụng để quản lý bộ nhớ khi có tình trạng thiếu tài nguyên.
- Tệp BIOS hoặc cài đặt EFI (.nvram): Chứa cấu hình BIOS hoặc EFI của VM.
- Tệp nhật ký (.log): Lưu lại các bản ghi hoạt động của VM.
Ngoài ra, mỗi VM còn có các tệp đĩa ảo như:- VM_name.vmdk(Đây là tập tin chứa dữ liệu ổ đĩa cứng ảo của máy ảo. Tập tin này mô phỏng ổ đĩa vật lý, và trong đó sẽ có dữ liệu mà máy ảo sử dụng) và VM_name-flat.vmdk cho đĩa ảo đầu tiên.
- Nếu có nhiều đĩa ảo, tệp sẽ có dạng VM_name_#.vmdk và VM_name_#-flat.vmdk.
Bao gói Máy Ảo (Virtual Machine Encapsulation)
Mỗi máy ảo (VM) được lưu trữ dưới dạng tập hợp các tệp hoặc đối tượng:
- Các tệp trong một thư mục trên datastore VMFS hoặc NFS
- Các đối tượng trên datastore vSAN hoặc vSphere Virtual Volumes
2. Về Phần Cứng Ảo (Virtual Hardware)
Hệ điều hành khách (guest OS) truy cập các thiết bị phần cứng nhưng không nhận ra rằng chúng là ảo. Phần cứng ảo làm cho VM có thể di chuyển qua nhiều nền tảng VMware khác nhau.
Bạn có thể cấu hình bộ nhớ, CPU, thêm đĩa cứng ảo, NICs, và các thiết bị phần cứng ảo khác như CD/DVD, SCSI. Không phải tất cả các thiết bị đều có thể thêm vào hoặc cấu hình. Một số thiết bị như USB chỉ có thể sử dụng bởi một VM duy nhất tại một thời điểm.
Một máy ảo có các thành phần phần cứng ảo mô phỏng tương tự các thành phần của một máy tính vật lý. Các thành phần này có thể được cấu hình và điều chỉnh tùy theo yêu cầu của bạn:
- CPU ảo (vCPU): Là phiên bản ảo của bộ vi xử lý vật lý. Bạn có thể phân bổ số lượng vCPU tùy thuộc vào yêu cầu xử lý của ứng dụng chạy trên máy ảo.
- RAM ảo: Là bộ nhớ ảo mà máy ảo có thể sử dụng. Việc phân bổ RAM ảo phù hợp sẽ đảm bảo hiệu suất của máy ảo.
- Ổ đĩa cứng ảo (vDisk): Ổ đĩa ảo lưu trữ hệ điều hành và dữ liệu cho máy ảo.
- Card mạng ảo (vNIC): Được sử dụng để kết nối máy ảo với mạng. Bạn có thể thêm hoặc gỡ bỏ card mạng ảo tùy theo yêu cầu.
- Thiết bị ảo khác: Bao gồm các thiết bị như CD/DVD ảo, bộ điều khiển USB, và nhiều thành phần khác có thể được thêm vào máy ảo.
Phiên bản Phần Cứng Ảo (Virtual Hardware Versions)
Phiên bản phần cứng ảo (VM compatibility level) xác định các chức năng mà hệ điều hành khách có thể hỗ trợ. Bạn nên sử dụng phiên bản phần cứng tương thích với phiên bản ESXi của hệ thống.
So sánh các phiên bản phần cứng máy ảo
VMware cung cấp nhiều phiên bản phần cứng cho máy ảo, và mỗi phiên bản lại cung cấp các tính năng và cải tiến mới. Khi bạn nâng cấp hoặc tạo máy ảo mới, việc chọn phiên bản phần cứng phù hợp là rất quan trọng.
Dưới đây là một số phiên bản phần cứng máy ảo phổ biến:
- Phiên bản 14: Đây là phiên bản đi kèm với vSphere 6.7, hỗ trợ các cải tiến về bảo mật và tăng cường khả năng quản lý. Phiên bản này cũng hỗ trợ các thiết bị ảo mới như vTPM (Trusted Platform Module).
- Phiên bản 20: Được giới thiệu trong vSphere 8, cung cấp nhiều cải tiến về quản lý bộ nhớ, bảo mật, và hỗ trợ thiết bị ảo mới nhất.
- Một số phiên bản khác như: 19 - ESXi 7.0 U2 and later; 18 - ESXi 7.0 U1 and later; 17 - ESXi 7.0 and later; 15- ESXi 6.7 U2 and later…
Bạn có thể thêm, thay đổi, hoặc cấu hình tài nguyên CPU và bộ nhớ để cải thiện hiệu suất VM. Số lượng vCPU tối đa có thể gán cho một VM phụ thuộc vào số lượng CPU logic của máy chủ và loại hệ điều hành khách.
- Với ESXi 8.0, một VM có thể có tới 768 vCPU.
- Kích thước bộ nhớ tối đa của một VM với ESXi 8.0 là 24 TB.
Các Compute Maximum thường được công bố bởi VMware cho mỗi phiên bản vSphere, giúp các quản trị viên hạ tầng hiểu rõ giới hạn của hệ thống để cấu hình và triển khai các dịch vụ ảo hóa một cách hiệu quả.
Tầm Quan Trọng của Compute Maximum:
- Quản lý tài nguyên: Giúp đảm bảo rằng hệ thống được cấu hình và sử dụng tài nguyên một cách hợp lý, không vượt quá giới hạn phần cứng của hạ tầng.
- Tối ưu hóa hiệu suất: Giới hạn compute maximum giúp đảm bảo hiệu suất của môi trường ảo hóa được duy trì, tránh tình trạng quá tải.
- Lập kế hoạch mở rộng: Cho phép các quản trị viên tính toán chính xác khi mở rộng hệ thống hoặc triển khai thêm máy ảo.
- Số vCPU tối đa trên mỗi VM: 768
- Bộ nhớ tối đa trên mỗi VM: 24 TB
- CPU tối đa trên mỗi host: 896
- Bộ nhớ tối đa trên mỗi host: 24 TB
- Số lượng host trên mỗi cluster: 96
Đĩa ảo được kết nối với các bộ điều hợp lưu trữ ảo. ESXi cung cấp nhiều tùy chọn bộ điều hợp lưu trữ, bao gồm: SCSI, iSCSI, RAID, Fibre Channel, Fibre
ESXi truy cập bộ điều hợp trực tiếp thông qua trình điều khiển thiết bị trong VMkernel:
• BusLogic Parallel
• LSI Logic Parallel
• LSI Logic SAS
• VMware Paravirtual SCSI
• AHCI SATA controller
• NVMe ảo (Virtual NVMe)
Về Đĩa Dày (Thick-Provisioned Disks)
Sử dụng toàn bộ không gian đĩa được xác định khi tạo đĩa ảo, bất kể hệ thống tệp của hệ điều hành khách thực sự sử dụng bao nhiêu không gian đĩa.
Có hai loại đĩa dày:
- Eager Zeroed: Mọi khối dữ liệu được làm trống bằng số 0 trước khi dữ liệu được ghi.
- Lazy Zeroed: Khối dữ liệu chỉ được làm trống khi dữ liệu được ghi lần đầu tiên.
Với đĩa mỏng, không gian chỉ được sử dụng khi cần thiết. VM luôn thấy kích thước đĩa đầy đủ nhưng chỉ sử dụng dung lượng cần thiết. Đĩa có thể mở rộng khi cần thêm dung lượng.
Quản lý Datastore chứa Đĩa Mỏng
Đĩa mỏng giúp tối ưu hóa dung lượng lưu trữ nhưng cũng có thể gây ra tình trạng thiếu dung lượng nếu không quản lý cẩn thận. Cần thiết lập các cảnh báo và báo cáo để theo dõi việc sử dụng dung lượng và quản lý datastore hiệu quả.
So sánh ba loại cấp phát đĩa ảo trong VMware:
1. Thick Provisioned Lazy-Zeroed (Cấp phát dày, xóa chậm)
- Thời gian tạo: Nhanh, vì không cần xóa (zero out) các khối dữ liệu khi tạo đĩa.
- Cấp phát khối: Toàn bộ dung lượng đĩa được cấp phát ngay khi tạo đĩa.
- Bố trí đĩa ảo: Có khả năng cao các khối dữ liệu nằm liền nhau.
- Xóa các khối dữ liệu được cấp phát: Các khối dữ liệu chỉ được xóa khi có dữ liệu ghi lần đầu vào khối đó.
- Thời gian tạo: Chậm hơn và tỷ lệ thuận với kích thước đĩa, do các khối dữ liệu được xóa ngay khi đĩa được tạo.
- Cấp phát khối: Tất cả khối dữ liệu được cấp phát trước.
- Bố trí đĩa ảo: Có khả năng cao các khối dữ liệu nằm liền nhau.
- Xóa các khối dữ liệu được cấp phát: Tất cả các khối dữ liệu được xóa ngay khi đĩa được tạo.
- Thời gian tạo: Nhanh nhất, vì đĩa chỉ cấp phát không gian khi dữ liệu thực tế được ghi vào.
- Cấp phát khối: Không gian được cấp phát và xóa dần dần khi có dữ liệu ghi vào khối.
- Bố trí đĩa ảo: Bố trí đĩa phụ thuộc vào trạng thái động của dung lượng tại thời điểm cấp phát khối.
- Xóa các khối dữ liệu được cấp phát: Các khối dữ liệu được xóa khi chúng được cấp phát.
Mạng ảo cho phép các máy ảo (VM) và các thiết bị vật lý giao tiếp với nhau. Khi cấu hình mạng cho một VM, bạn có thể thiết lập hoặc thay đổi các thông số như loại adapter mạng, nhóm port (port group) mà VM kết nối, trạng thái kết nối mạng, và tùy chọn tự động kết nối khi VM được bật.
- Network Adapter Type: Lựa chọn loại adapter mạng mà máy ảo sẽ sử dụng, chẳng hạn như VMXNET3 hoặc E1000.
- Port Group to Connect to: Kết nối VM với một nhóm port ảo (port group) trên vSwitch hoặc vDS.
- Network Connection State: Trạng thái kết nối mạng của VM, có thể chọn kết nối hoặc không kết nối.
- Auto-connect on Power On: Tùy chọn kết nối tự động khi VM được bật.
Các loại adapter mạng (NIC Types)
Khi cấu hình máy ảo, bạn có thể thêm các adapter mạng (NIC) và chỉ định loại adapter phù hợp.
- E1000 và E1000E: Phiên bản mô phỏng của card mạng Intel Gigabit Ethernet NIC, hỗ trợ các hệ điều hành khách mới.
- VMXNET3: Adapter NIC được thiết kế cho hiệu suất cao, yêu cầu VMware Tools và hỗ trợ nhiều tính năng như hỗ trợ đa hàng đợi (multiqueue), IPv6 offload, và gửi/nhận MSI/MSI-X interrupts.
- Flexible: Adapter có thể hoạt động như một Vlance hoặc VMXNET, tự động thay đổi tùy theo driver được cài đặt.
- SR-IOV pass-through: Cho phép máy ảo và adapter vật lý trao đổi dữ liệu trực tiếp, bỏ qua kernel VM, giảm thiểu độ trễ mạng.
- PVRDMA: Cung cấp hiệu suất cao thông qua giao diện RDMA (Remote Direct Memory Access), hỗ trợ truy cập thiết bị với độ trễ thấp và băng thông cao.
Các thiết bị PCI Passthrough cho phép máy ảo truy cập trực tiếp các tài nguyên vật lý để tối ưu hiệu suất.
- vSphere DirectPath I/O: Cho phép máy ảo truy cập trực tiếp thiết bị PCI hoặc PCIe trên host. Máy ảo bị ràng buộc với host cụ thể và không thể sử dụng các tính năng như vMotion hay snapshot.
- vSphere Dynamic DirectPath I/O: Thiết bị PCI không bị ràng buộc trực tiếp với VM, cho phép VMware DRS chuyển VM giữa các host có cùng thiết bị phần cứng.
- NVIDIA GRID GPU: GPU ảo hóa sử dụng công nghệ NVIDIA GRID, cho phép máy ảo thực hiện các tác vụ đồ họa phức tạp với hiệu suất cao.
Máy ảo cần có các thiết bị cơ bản như vCPU và bộ nhớ ảo, nhưng việc thêm các thiết bị khác giúp máy ảo hoạt động hiệu quả hơn.
- Thiết bị CD/DVD: Kết nối VM với ổ CD, DVD hoặc file ISO.
- USB 3.0 và 3.1: Hỗ trợ kết nối các thiết bị USB với máy ảo.
- vGPUs: Cho phép VM sử dụng GPU vật lý để thực hiện các tác vụ tính toán cao.
- vTPM: Mô đun TPM ảo, cung cấp các chức năng bảo mật dựa trên phần cứng cho máy ảo.
Console máy ảo cung cấp các chức năng điều khiển máy ảo như chuột, bàn phím, và màn hình hiển thị. Bạn có thể sử dụng console để cài đặt hệ điều hành, quản lý BIOS, hoặc khởi động lại máy ảo.
Console máy ảo thường không được sử dụng cho các tác vụ hàng ngày, thay vào đó, các công cụ kết nối từ xa như Remote Desktop Connection hay Virtual Network Connection sẽ được sử dụng.
III. Kết luận
Việc tìm hiểu về phần cứng máy ảo là một bước quan trọng trong việc quản lý và vận hành môi trường ảo hóa. Từ việc xác định các tệp cấu thành một máy ảo, so sánh các phiên bản phần cứng, đến việc nhận diện các thành phần phần cứng ảo và sử dụng vSphere Client để kiểm tra cài đặt và truy cập vào bảng điều khiển, mạng ảo đến các thiết bị PCI Passthrough, các công cụ và thiết bị này cung cấp khả năng mạnh mẽ để quản lý tài nguyên tính toán, đảm bảo rằng các máy ảo hoạt động với hiệu suất cao nhất có thể trong môi trường ảo hóa.