> 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-7-da-thue-bao/lab.md).

# Thực hành: Môi trường đa thuê bao

## Mục tiêu

Thiết kế và triển khai một môi trường đa thuê bao trong VergeOS, bao gồm tạo tenant thủ công, cấp phát tenant dựa trên recipe và xác minh tính cô lập của tenant ở lớp mạng và lưu trữ.

## 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 Mô-đun 6: Máy ảo
* Đã hoàn thành phần đọc Mô-đun 7 (Khái niệm đa thuê bao, Tạo tenant, Recipe tenant, Cô lập & Bảo mật)
* Một cụm VergeOS đang chạy với đủ tài nguyên tính toán, bộ nhớ và lưu trữ cho ít nhất 2 tenant

## Độ khó

**Trung cấp** -- Yêu cầu hiểu về phân bổ tài nguyên, mạng và các khái niệm ảo hóa

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

**1,5 giờ**

## Các bước

### Phần 1: Tạo Tenant Thủ Công

Tạo một tenant từ đầu và cấu hình tài nguyên của nó.

1. Đi tới mục Tenants trong giao diện VergeOS
2. Tạo một tenant mới với cấu hình sau:
   * Tên: "lab-tenant-01"
   * Số lõi CPU: 4
   * Bộ nhớ: 8 GB
   * Lưu trữ: 100 GB
3. Cấu hình mạng của tenant:
   * Tạo một mạng nội bộ cho tenant
   * Cấu hình truy cập mạng bên ngoài (NAT hoặc trực tiếp, tùy theo môi trường của bạn)
4. Đăng nhập vào giao diện tenant và xác minh rằng các tài nguyên được cấp phát có thể nhìn thấy
5. Tạo một VM đơn giản bên trong tenant để xác nhận rằng tính toán và lưu trữ hoạt động bình thường

### Phần 2: Triển khai Tenant bằng Recipe

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

1. Xem các recipe tenant hiện có trong danh mục recipe của VergeOS
2. Chọn hoặc tạo một recipe tenant bao gồm:
   * Phân bổ tài nguyên được định nghĩa sẵn (CPU, bộ nhớ, lưu trữ)
   * Mạng nội bộ được cấu hình sẵn
   * Một hoặc nhiều mẫu VM
3. Triển khai một tenant mới từ recipe:
   * Tên: "lab-tenant-02"
   * Xem xét và chấp nhận cấu hình do recipe định nghĩa
4. Đăng nhập vào tenant được triển khai từ recipe và xác minh:
   * Tài nguyên khớp với đặc tả của recipe
   * Các VM và mạng được cấu hình sẵn đều hiện diện
5. So sánh tenant được triển khai từ recipe với tenant bạn đã tạo thủ công

### Phần 3: Xác minh Cô lập Tenant

Xác nhận rằng các tenant được cô lập đúng cách với nhau và với môi trường máy chủ.

1. Từ "lab-tenant-01", thử truy cập tài nguyên trong "lab-tenant-02":
   * Thử ping các VM trong mạng của tenant khác
   * Xác minh rằng lưu lượng mạng giữa các tenant bị chặn
2. Từ môi trường máy chủ (nhà cung cấp), xác minh:
   * Cả hai tenant đều có thể nhìn thấy và quản lý được
   * Tài nguyên của tenant được tính vào mức sử dụng tài nguyên của máy chủ
3. Kiểm tra ranh giới tài nguyên:
   * Thử vượt quá hạn mức lưu trữ đã được cấp trong một tenant
   * Lưu ý: Hạn mức lưu trữ là **giới hạn mềm** — hệ thống tạo cảnh báo nhật ký khi tiến gần ngưỡng, nhưng các thao tác ghi không bị chặn cứng ngay tại ranh giới chính xác; hãy quan sát các cảnh báo được tạo ra khi bạn tiến gần giới hạn
4. Xem lại nhật ký tenant và dấu vết kiểm toán từ môi trường máy chủ

## Xác minh

Bài thực hành đa thuê bao 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 tenant đã được tạo thủ công với CPU, bộ nhớ, lưu trữ và mạng được chỉ định
* [ ] Một VM đã được tạo và chạy thành công bên trong tenant thủ công
* [ ] Một tenant đã được triển khai từ recipe với tài nguyên được cấu hình sẵn chính xác
* [ ] Đã xác minh cô lập mạng giữa các tenant (lưu lượng giữa các tenant bị chặn)
* [ ] Đã kiểm tra và thực thi các giới hạn tài nguyên
* [ ] Cả hai tenant đều có thể quản lý từ môi trường máy chủ (nhà cung cấp)


---

# 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-7-da-thue-bao/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.
