> 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/05-isolation-security.md).

# Cô lập Tenant & Bảo mật

## Mô hình cô lập VergeOS

Đa thuê của VergeOS được xây dựng trên **cô lập kiến trúc** — không chỉ là sự tách biệt dựa trên chính sách. Mỗi tenant là một Trung tâm Dữ liệu Ảo (VDC) được bao bọc hoàn toàn với ngăn xếp mạng riêng, các volume lưu trữ độc quyền và ranh giới quản trị độc lập. Điều này trái ngược với các nền tảng dựa vào VLAN, pool tài nguyên hoặc quy tắc RBAC để tách các tenant trong một mặt phẳng quản lý dùng chung.

Mô hình cô lập dựa trên bốn trụ cột:

```mermaid
graph TB
    subgraph isolation["Mô hình cô lập tenant VergeOS"]
        direction LR
        NET["Mạng<br/>Bao bọc<br/>──────<br/>Cô lập L2/L3<br/>mỗi tenant"]
        STOR["Lưu trữ<br/>Cô lập<br/>──────<br/>Volume độc quyền<br/>mỗi tenant"]
        AUTH["Quản lý<br/>người dùng độc lập<br/>──────<br/>Cục bộ, cha,<br/>hoặc IdP/OIDC"]
        RES["Tài nguyên<br/>Được đảm bảo<br/>──────<br/>CPU/RAM/lưu trữ<br/>quota được thực thi"]
    end

    style isolation fill:#e8f5e9,stroke:#2e7d32
    style NET fill:#e3f2fd,stroke:#1565c0
    style STOR fill:#e3f2fd,stroke:#1565c0
    style AUTH fill:#e3f2fd,stroke:#1565c0
    style RES fill:#e3f2fd,stroke:#1565c0
```

***

## Bao bọc mạng

Bao bọc mạng là nền tảng của sự cô lập tenant. Khi một tenant được tạo, VergeOS tự động cung cấp một mạng ảo **tổng hợp và bao bọc toàn bộ lưu lượng của tenant đó**. Từ góc nhìn của tenant, đây là mạng vật lý của họ — họ không thể thấy hoặc tương tác với lưu lượng của bất kỳ tenant nào khác.

### Cách hoạt động

* Mỗi tenant nhận được riêng **DMZ** đóng vai trò là xương sống định tuyến cho tất cả các mạng bên trong tenant
* Lưu lượng tenant được bao bọc tại **Lớp 2 và Lớp 3**, ngăn chặn giao tiếp liên tenant ở cấp độ mạng
* Mạng được bao bọc cho phép các node của tenant giao tiếp an toàn ngay cả khi chạy trên các máy chủ vật lý khác nhau
* Các tenant có thể tạo gần như vô hạn mạng nội bộ trong môi trường riêng của họ

### Vì sao điều này quan trọng

Không giống phân đoạn dựa trên VLAN — nơi một thẻ VLAN cấu hình sai hoặc một switch bị xâm nhập có thể làm lộ lưu lượng giữa các tenant — bao bọc mạng của VergeOS cung cấp **cô lập mạng không tin cậy** mặc định. Một tenant không thể truy cập mạng của tenant khác ngay cả khi họ dùng chung cùng hạ tầng vật lý.

```mermaid
graph TB
    subgraph host["Physical VergeOS System"]
        EXT["Mạng bên ngoài<br/>(LAN/WAN thượng nguồn)"]
        DMZ["DMZ của host"]

        subgraph t1["Tenant A (được bao bọc)"]
            T1_DMZ["DMZ của Tenant A"]
            T1_INT1["Mạng nội bộ 1"]
            T1_INT2["Mạng nội bộ 2"]
            T1_INT1 --> T1_DMZ
            T1_INT2 --> T1_DMZ
        end

        subgraph t2["Tenant B (được bao bọc)"]
            T2_DMZ["DMZ của Tenant B"]
            T2_INT1["Mạng nội bộ 1"]
            T2_INT2["Mạng nội bộ 2"]
            T2_INT1 --> T2_DMZ
            T2_INT2 --> T2_DMZ
        end

        T1_DMZ --> DMZ
        T2_DMZ --> DMZ
        DMZ --> EXT
    end

    style t1 fill:#e3f2fd,stroke:#1565c0
    style t2 fill:#fff3e0,stroke:#e65100
    style host fill:#e8f5e9,stroke:#2e7d32
```

***

## Các volume lưu trữ chuyên dụng

Mỗi tenant nhận được **các volume lưu trữ اختصاص biệt** trong vSAN, được trình bày cho tenant như thể nó có hệ thống lưu trữ riêng. Sự cô lập được thực thi một cách logic thông qua ranh giới hệ thống tệp của container — tenant không thể nhìn thấy hoặc truy cập dữ liệu của tenant khác — trong khi vSAN bên dưới khử trùng lặp các block trên toàn bộ cụm để tăng hiệu quả.

Đặc điểm chính:

* **Cấp phát theo từng tenant** — Lưu trữ được cấp phát theo từng tầng (NVMe, SSD, HDD) với các phân bổ dung lượng cụ thể
* **Khử trùng lặp độc lập** — Thống kê khử trùng lặp của mỗi tenant chỉ phản ánh dữ liệu của chính tenant đó. Khử trùng lặp hoạt động ở cấp block của vSAN trên toàn bộ hệ thống; các chỉ số mà tenant nhìn thấy chỉ hiển thị mức tiết kiệm của riêng từng tenant
* **Cấp phát mỏng** — Lưu trữ của tenant được cấp phát mỏng. Một ổ đĩa VM 4 TB chỉ chứa 200 GB dữ liệu sẽ chỉ tiêu tốn khoảng 200 GB dung lượng vSAN (trừ phần tiết kiệm từ khử trùng lặp)
* **Hỗ trợ mã hóa** — Mã hóa vSAN (AES-256, được cấu hình khi cài đặt) áp dụng cho tất cả dữ liệu, bao gồm cả các volume của tenant

***

## Quản lý người dùng độc lập

Mỗi tenant tự quản lý tài khoản người dùng và xác thực của riêng mình một cách độc lập. Có ba mô hình xác thực:

| Mô hình                       | Mô tả                                                                                                                                                         | Trường hợp sử dụng                                                         |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| **Người dùng cục bộ**         | Quản trị tenant tạo và quản lý tài khoản người dùng trực tiếp trong giao diện tenant                                                                          | Các tenant nhỏ, môi trường độc lập                                         |
| **VergeOS cha (qua OIDC)**    | Tenant xác thực thông qua một ứng dụng OIDC được định nghĩa trên hệ thống VergeOS cha, vì vậy đăng nhập của tenant được hỗ trợ bởi thư mục người dùng của cha | Các nhà cung cấp dịch vụ quản lý kiểm soát quyền truy cập tenant tập trung |
| **IdP bên thứ ba (qua OIDC)** | Tenant tích hợp với một nhà cung cấp danh tính bên ngoài (Okta, Azure AD/Entra, Google Cloud Identity, v.v.) qua OIDC                                         | Các tenant doanh nghiệp có hạ tầng danh tính hiện có                       |

Tích hợp OIDC được cấu hình theo từng tenant trong quá trình tạo hoặc chỉnh sửa. Khi chọn một ứng dụng OIDC, tenant sử dụng nhà cung cấp danh tính bên ngoài để xác thực trong khi vẫn duy trì ủy quyền cục bộ (quyền và vai trò).

***

## Vượt qua Lớp 2 cho Tenant

Trong một số trường hợp, tenant cần quyền truy cập Lớp 2 trực tiếp vào một VLAN vật lý — ví dụ, để kết nối với một đường WAN chuyên dụng, một mạng lưu trữ vật lý, hoặc các ứng dụng cũ yêu cầu kề cận L2.

VergeOS cung cấp **Mạng Lớp 2 của Tenant** (các phiên bản VergeOS gần đây) để chuyển tiếp VLAN hợp lý hơn:

### Cách hoạt động

1. Quản trị viên host điều hướng đến **Tenant → \[Tenant] → Mạng Lớp 2 → Mới**
2. Chọn mạng Lớp 2 bên ngoài (VLAN) để chuyển tiếp
3. Bật chuyển tiếp

VergeOS tự động tạo ba thành phần bên trong tenant:

* Một **Giao diện NIC** trên node của tenant được kết nối với VLAN
* Một **Mạng vật lý** (hạ tầng backend)
* Một **mạng bên ngoài** mà các VM của tenant có thể gắn vào

### Danh sách kiểm tra xác minh

| Mức         | Chọn                                                                             |
| ----------- | -------------------------------------------------------------------------------- |
| **Máy chủ** | Mạng Lớp 2 xuất hiện trong danh sách Layer2 Networks của tenant, Enabled = ON    |
| **Tenant**  | Mạng External và Physical xuất hiện trong danh sách Networks của tenant          |
| **Hạ tầng** | Các cổng switch vật lý mang VLAN đến đúng các node                               |
| **Kết nối** | VM kiểm thử trên mạng External của tenant có thể truy cập các thiết bị trên VLAN |

### Các hạn chế quan trọng

{% hint style="warning" %}
**VLAN được dành riêng**

VLAN **1, 100, 101 và 102** được dành riêng cho lưu lượng nội bộ của VergeOS và không thể dùng cho chuyển tiếp Layer 2.
{% endhint %}

{% hint style="warning" %}
**Không gắn thẻ VLAN cho mạng External của tenant**

Mạng External được tạo bên trong tenant đã được gắn thẻ sẵn cho VLAN đúng. Không **không** thêm thẻ VLAN vào mạng External phía tenant — đây là một cấu hình sai phổ biến sẽ làm hỏng kết nối.
{% endhint %}

### Quy trình xóa

Việc xóa một Tenant Layer 2 Network yêu cầu một thứ tự cụ thể:

1. **Vô hiệu hóa** mạng Lớp 2 từ phía host
2. **Xóa** mạng Lớp 2 từ phía host (NIC sẽ tự động bị gỡ bỏ)
3. Bên trong tenant: xóa **mạng bên ngoài** mạng trước, sau đó là **Vật lý** mạng

{% hint style="success" %}
Luôn xóa mạng External trước mạng Physical bên trong tenant. Mạng External tham chiếu mạng Physical như giao diện của nó, nên đảo ngược thứ tự sẽ gây ra lỗi.
{% endhint %}

***

## Vi phân đoạn nhỏ trong các Tenant

Mỗi tenant có thể triển khai chiến lược vi phân đoạn của riêng mình bằng cách sử dụng cùng các công cụ mạng có sẵn ở cấp host:

* **Mạng nội bộ** — Mỗi mạng nội bộ là một phân đoạn được bảo mật theo mặc định và cô lập. Không có lưu lượng nào đi vào hoặc đi ra cho đến khi có quy tắc rõ ràng.
* **Quy tắc mạng** — Các quy tắc tường lửa chi tiết (Chấp nhận, Loại bỏ, Từ chối), NAT/PAT và các tuyến tĩnh theo từng mạng
* **Bí danh mạng** — Nhóm các địa chỉ IP hoặc dải CIDR để đơn giản hóa quản lý chính sách
* **Phản chiếu cổng** — Sao chép lưu lượng của một mạng đến NIC của VM để phân tích

Điều này cho phép **các nguyên tắc zero-trust** trong từng tenant — các workload được cô lập theo mặc định và chỉ giao tiếp qua các đường dẫn được cho phép rõ ràng.

***

## Đảm bảo tài nguyên

Phân bổ tài nguyên tenant được thực thi ở cấp nền tảng:

* **CPU và RAM** — Các lõi và RAM được gán cho các node của tenant là các phân bổ riêng; hệ thống host tính đến tài nguyên node của tenant trong việc lập lịch
* **Storage** — Lưu trữ được cấp phát theo từng tầng xác định dung lượng của tenant. Mặc dù lưu trữ được cấp phát không phải là giới hạn cứng, cảnh báo nhật ký sẽ được kích hoạt khi tenant tiến gần ngưỡng
* **Băng thông mạng** — Có thể áp dụng giới hạn tốc độ theo từng quy tắc mạng để điều tiết lưu lượng

***

## Giám sát Tenant từ hệ thống cha

Hệ thống host (cha) vẫn giữ được khả năng hiển thị đầy đủ vào hoạt động của tenant mà không vi phạm sự cô lập của tenant.

### Bảng điều khiển Tất cả Tenant

Bảng điều khiển Tất cả Tenant cung cấp tổng quan về mọi tenant với:

* **Chỉ báo trạng thái** — Số lượng tenant và node tenant đang bật
* **Danh sách sử dụng hàng đầu** — Mức sử dụng CPU, RAM, lưu trữ và mạng được xếp hạng theo tenant
* **Liên kết nhanh** — Nhấp vào bất kỳ tenant nào để xem sâu vào bảng điều khiển riêng của nó

### Bảng điều khiển từng Tenant

Bảng điều khiển của mỗi tenant hiển thị:

* **Mức sử dụng CPU, RAM và lưu trữ** trong biểu đồ khoảng 5 phút
* **heartbeat 5 giây** thống kê để giám sát theo thời gian thực
* **Các mục nhật ký** với lỗi được tô đỏ
* **Chỉ số lưu trữ** — Các giá trị Đã sử dụng, Đã cấp phát và Đã phân bổ

### Báo cáo sử dụng cho tính cước

VergeOS lưu trữ thống kê sử dụng theo từng tenant để hỗ trợ **tính cước theo phân vị 95**:

1. Đi đến bảng điều khiển tenant → **Lịch sử**
2. Chọn khoảng thời gian lọc (tháng, phạm vi tùy chỉnh)
3. Nhấp **Áp dụng** để tạo biểu đồ hiển thị Trung bình, Tối đa và phân vị 95
4. Xuất ra CSV để tích hợp tính cước

Hoặc, cấu hình một **Đăng ký** (Hệ thống → Đăng ký → Mới) với:

* Loại đích: *Bảng điều khiển Tenants*
* Loại: *Theo lịch*
* Hồ sơ: *Sử dụng Tenant*

Điều này cung cấp các báo cáo sử dụng tự động qua email theo lịch bạn đã cấu hình.

### Phơi bày snapshot

Khi **Phơi bày snapshot hệ thống** tùy chọn được bật trên một tenant, tenant có thể duyệt các snapshot có sẵn của host và tự phục vụ tải xuống snapshot của chính tenant mình từ dấu thời gian snapshot của nhà cung cấp. Điều này cho phép tenant khôi phục hệ thống của riêng họ mà không cần sự can thiệp của quản trị viên host.

### Kiểm toán và cảnh báo

* **Các đăng ký** có thể kích hoạt cảnh báo email cho lỗi trạng thái tenant, cảnh báo hoặc vượt ngưỡng
* **Các báo cáo theo lịch** có thể gửi các bản tóm tắt bảng điều khiển hằng ngày/hằng tuần cho quản trị viên
* Tính năng **API** có thể xuất dữ liệu sử dụng tenant sang các hệ thống tính cước hoặc giám sát bên ngoài

***

## Snapshot và khôi phục tenant

Mỗi tenant có thể được tạo snapshot và khôi phục độc lập:

* **Snapshot theo tenant** — Host có thể chụp snapshot của từng tenant mà không ảnh hưởng đến các tenant khác
* **Snapshot do tenant kiểm soát** — Tenant có thể tự quản lý lịch chụp snapshot và chính sách lưu giữ trong VDC của họ
* **Khôi phục chi tiết** — Khôi phục toàn bộ tenant, từng VM riêng lẻ hoặc dữ liệu cụ thể từ bất kỳ điểm snapshot nào
* **Nhân bản DR** — Snapshot của tenant có thể được sao chép tới các site từ xa qua đồng bộ site, với các chính sách DR theo từng tenant

***

## Thực hành tốt nhất

### Mặc định dùng bao bọc

Sử dụng bao bọc mạng tích hợp sẵn của VergeOS cho tất cả tenant. Chỉ cấu hình chuyển tiếp Layer 2 khi có yêu cầu cụ thể về truy cập VLAN trực tiếp.

### Ghi lại các gán VLAN

Duy trì tài liệu rõ ràng về VLAN nào được chuyển cho tenant nào, bao gồm ID VLAN, mục đích và cấu hình cổng switch.

### Mạng theo đặc quyền tối thiểu

Trong từng tenant, bắt đầu với các mạng nội bộ được bảo mật mặc định và chỉ mở quyền truy cập thông qua các quy tắc tường lửa rõ ràng. Tuân thủ các nguyên tắc zero-trust.

### Giám sát ngưỡng lưu trữ

Cấu hình các đăng ký để cảnh báo khi lưu trữ của tenant tiến gần giới hạn đã cấp phát. Cấp phát mỏng nghĩa là dung lượng đã phân bổ có thể vượt xa dung lượng đã sử dụng — hãy giám sát "đã sử dụng" để theo dõi mức tiêu thụ thực tế.

### Dùng OIDC cho tenant doanh nghiệp

Đối với các tenant doanh nghiệp có hạ tầng danh tính hiện có, hãy cấu hình tích hợp OIDC thay vì quản lý tài khoản người dùng cục bộ trong từng tenant.

### Thứ tự xóa L2

Khi xóa chuyển tiếp Layer 2, luôn vô hiệu hóa và xóa từ phía host trước, sau đó dọn dẹp mạng External trước rồi đến mạng Physical bên trong tenant.


---

# 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/05-isolation-security.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.
