> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/learn-the-platform/vi/mo-dun-6-may-ao/lab.md).

# Thực hành: Vận hành máy ảo

## Mục tiêu

Thực hiện các thao tác cốt lõi của máy ảo trong VergeOS, bao gồm tạo VM thủ công, triển khai dựa trên recipe, cấu hình GPU passthrough và nhập VM từ một nền tảng bên ngoài.

## Yêu cầu tiên quyết

* Đã hoàn thành Module 1: Kiến thức nền tảng về kiến trúc
* Đã hoàn thành Mô-đun 4: Mạng
* Đã hoàn thành Mô-đun 5: Lưu trữ
* Đã hoàn thành phần đọc Module 6 (Tạo VM, Recipe & Mẫu, GPU Passthrough, Di chuyển VM)
* Một cụm VergeOS đang chạy với tài nguyên tính toán và lưu trữ sẵn có

## Độ khó

**Trung cấp** -- Yêu cầu hiểu các khái niệm ảo hóa (CPU, bộ nhớ, đĩa, mạng)

## Thời gian ước tính

**1,5 giờ**

## Các bước

### Phần 1: Tạo VM & Vòng đời

Tạo một máy ảo từ đầu và thực hiện các thao tác vòng đời.

1. Đi tới phần Máy ảo trong giao diện VergeOS
2. Tạo một VM mới với cấu hình sau:
   * Tên: "lab-vm-01"
   * CPU: 2 vCPU
   * Bộ nhớ: 4 GB
   * Đĩa: 40 GB trên tầng lưu trữ bạn ưu tiên
   * Mạng: Gắn vào một mạng nội bộ hiện có
3. Gắn ISO và cài đặt hệ điều hành khách
4. Thực hiện các thao tác vòng đời:
   * Tạo snapshot của VM đang chạy
   * Nhân bản VM để tạo "lab-vm-02"
   * Dừng, khởi động và khởi động lại VM đã nhân bản
5. Xác minh cả hai VM đều đang chạy và có thể truy cập qua mạng

### Phần 2: Triển khai Dựa trên Recipe

Triển khai VM bằng một recipe dựng sẵn để cấp phát chuẩn hóa.

1. Duyệt các recipe VM có sẵn trong danh mục recipe của VergeOS
2. Chọn một recipe phù hợp với môi trường của bạn (ví dụ: mẫu máy chủ Linux)
3. Triển khai một VM mới từ recipe:
   * Tùy chỉnh tên VM và phân bổ tài nguyên
   * Xem lại cấu hình do recipe xác định trước khi triển khai
4. Xác minh VM đã triển khai khớp với các thông số của recipe
5. So sánh VM triển khai từ recipe với VM bạn tạo thủ công

### Phần 3: GPU Passthrough (Tùy chọn)

Cấu hình GPU passthrough cho một tác vụ yêu cầu nhiều tài nguyên tính toán.

1. Xác định các thiết bị GPU hiện có trong kho phần cứng VergeOS
2. Cấu hình PCI passthrough cho một thiết bị GPU:
   * Chọn VM mục tiêu để gán GPU
   * Gán thiết bị GPU cho VM
3. Khởi động VM và xác minh hệ điều hành khách nhận diện được GPU
4. Cài đặt driver GPU phù hợp trong hệ điều hành khách
5. Kiểm tra chức năng GPU bằng một bài kiểm tra cơ bản (ví dụ: truy vấn thông tin GPU)

> **Lưu ý:** Phần này yêu cầu phần cứng GPU vật lý trong cụm của bạn. Bỏ qua nếu không có GPU.

### Phần 4: Nhập VM từ VMware

Nhập một máy ảo từ một nền tảng bên ngoài.

1. Chuẩn bị bản xuất VM từ VMware (OVA/VMDK) hoặc một hypervisor khác
2. Sử dụng công cụ nhập của VergeOS để đưa VM vào nền tảng:
   * Tải lên ảnh VM
   * Ánh xạ phần cứng ảo (CPU, bộ nhớ, đĩa, mạng)
   * Xem lại và điều chỉnh cấu hình nhập
3. Khởi động VM đã nhập và xác minh rằng nó khởi động thành công
4. Xác minh kết nối mạng và chức năng ứng dụng
5. So sánh các chỉ số hiệu năng giữa VM đã nhập và VM gốc trên VergeOS

## Xác minh

Bài thực hành VM của bạn hoàn tất khi bạn có thể trả lời **có** cho tất cả các mục sau:

* [ ] Một VM đã được tạo thủ công với các thiết lập CPU, bộ nhớ, đĩa và mạng cụ thể
* [ ] Các thao tác snapshot và nhân bản đã được thực hiện thành công
* [ ] Một VM đã được triển khai từ recipe với cấu hình chính xác
* [ ] GPU passthrough đã được cấu hình (hoặc bỏ qua kèm lý do nếu không có phần cứng GPU)
* [ ] Một VM đã được nhập từ định dạng bên ngoài và khởi động thành công
* [ ] Tất cả các VM đều có thể truy cập qua mạng và hoạt động như mong đợi


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.verge.io/learn-the-platform/vi/mo-dun-6-may-ao/lab.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
