Tóm tắt ngắn gọn Cách phân chia tài nguyên trên máy chủ ảo

Khuyến mại cực SHOCK khi sử dụng dịch vụ tại maychuao.com.vn

Dịch vụ cho thuê máy chủ ảo chuyên nghiệp, uy tín, chất lượng tốt, giá cả hợp lý. Xem bảng giá ngay!

Menu

Tóm tắt ngắn gọn Cách phân chia tài nguyên trên máy chủ ảo

Lưu ý: Cách phân chia tài nguyên trên máy chủ ảo chỉ áp dụng cho: Windows Server 2016, Microsoft Hyper-V Server 2016, Windows Server 2019, Microsoft Hyper-V Server 2019.

Tóm tắt ngắn gọn Cách phân chia tài nguyên trên máy chủ ảo

Kiểm soát tài nguyên máy ảo

Bài viết này mô tả các điều khiển cách ly và tài nguyên Hyper-V cho các máy ảo. Những khả năng này, chúng ta sẽ gọi là nhóm CPU máy ảo, hay chỉ là “nhóm CPU”, được giới thiệu trong Windows Server 2016. Nhóm CPU cho phép quản trị viên Hyper-V quản lý và phân bổ tài nguyên CPU của máy chủ tốt hơn trên máy ảo của khách. Sử dụng các nhóm CPU, quản trị viên Hyper-V có thể:

  • Tạo các nhóm máy ảo, với mỗi nhóm có phân bổ khác nhau của tổng tài nguyên CPU của máy chủ ảo hóa, được chia sẻ trên toàn bộ nhóm. Điều này cho phép người quản trị máy chủ thực hiện các lớp dịch vụ cho các loại máy ảo khác nhau.
  • Đặt giới hạn tài nguyên CPU cho các nhóm cụ thể. “Nhóm cap” này đặt giới hạn trên cho tài nguyên CPU chủ mà toàn bộ nhóm có thể tiêu thụ, thực thi hiệu quả lớp dịch vụ mong muốn cho nhóm đó.
  • Cố định một nhóm CPU để chỉ chạy trên một bộ xử lý cụ thể của hệ thống máy chủ. Điều này có thể được sử dụng để cô lập các máy ảo thuộc các nhóm CPU khác nhau.

Quản lý nhóm CPU

Các nhóm CPU được quản lý thông qua Hyper-V Host Compute Service, hoặc HCS. Một mô tả tuyệt vời về HCS, nguồn gốc của nó, liên kết với các API HCS.

Chú thích

Chỉ có HCS mới có thể được sử dụng để tạo và quản lý các nhóm CPU; Hyper-V Manager applet, giao diện quản lý WMI và PowerShell không hỗ trợ các nhóm CPU.

Microsoft cung cấp một tiện ích dòng lệnh, cpugroups.exe, trên Trung tâm Tải xuống của Microsoft sử dụng giao diện HCS để quản lý các nhóm CPU. Tiện ích này cũng có thể hiển thị cấu trúc liên kết CPU của một máy chủ.

Cách nhóm CPU hoạt động

Phân bổ tài nguyên máy chủ lưu trữ trên các nhóm CPU được thực thi bởi trình siêu giám sát Hyper-V, sử dụng giới hạn nhóm CPU được tính toán. Giới hạn nhóm CPU là một phần nhỏ trong tổng dung lượng CPU của một nhóm CPU. Giá trị của giới hạn nhóm phụ thuộc vào nhóm nhóm hoặc cấp độ ưu tiên được chỉ định. Giới hạn nhóm được tính toán có thể được coi là “một số giá trị thời gian CPU của LP”. Ngân sách nhóm này được chia sẻ, vì vậy nếu chỉ một máy ảo duy nhất được kích hoạt, nó có thể sử dụng toàn bộ phân bổ CPU của nhóm cho chính nó.


Giới hạn nhóm CPU được tính bằng G = n x C , trong đó:

*G* là số lượng LP chủ mà chúng tôi muốn gán cho nhóm

*n* là tổng số bộ xử lý logic (LP) trong nhóm

*C* là cấp phát CPU tối đa – tức là, loại dịch vụ mong muốn cho nhóm, được biểu diễn bằng phần trăm tổng dung lượng tính toán của hệ thống


Ví dụ, hãy xem xét một nhóm CPU được cấu hình với 4 bộ xử lý logic (LP), và một nắp là 50%.

G = n * C

G = 4 * 50%

G = 2 giá trị thời gian CPU của LP cho toàn bộ nhóm

Trong ví dụ này, nhóm CPU G được phân bổ 2 giá trị thời gian CPU của LP.

Lưu ý rằng nắp nhóm áp dụng bất kể số lượng máy ảo hoặc bộ xử lý ảo được liên kết với nhóm và bất kể trạng thái (ví dụ, tắt máy hoặc bắt đầu) của máy ảo được gán cho nhóm CPU. Do đó, mỗi máy ảo được liên kết với cùng một nhóm CPU sẽ nhận được một phần nhỏ của tổng phân bổ CPU của nhóm, và điều này sẽ thay đổi với số lượng máy ảo được liên kết với nhóm CPU.

Do đó, khi các máy ảo là các máy ảo bị ràng buộc hoặc không liên kết từ một nhóm CPU, giới hạn nhóm CPU tổng thể phải được điều chỉnh lại và thiết lập để duy trì kết quả cho mỗi giới hạn cho mỗi VM. Lớp quản trị máy chủ VM hoặc lớp phần mềm quản lý ảo có trách nhiệm quản lý các nhóm mũ khi cần thiết để đạt được phân bổ tài nguyên CPU cho mỗi VM mong muốn.


Các lớp dịch vụ ví dụ

Hãy xem xét một số ví dụ đơn giản. Để bắt đầu, giả sử quản trị viên máy chủ Hyper-V muốn hỗ trợ hai tầng dịch vụ cho các máy ảo khách:

  1. Cấp “C” cấp thấp. Chúng tôi sẽ cung cấp cho cấp này 10% tài nguyên tính toán của toàn bộ máy chủ.
  2. Một tầng “B” tầm trung. Tầng này được phân bổ 50% tài nguyên tính toán của toàn bộ máy chủ.

Tại thời điểm này trong ví dụ của chúng tôi, chúng tôi sẽ khẳng định rằng không có điều khiển tài nguyên CPU nào khác đang được sử dụng, chẳng hạn như các mũ VM, trọng số và dự trữ riêng lẻ. Tuy nhiên, mũ VM cá nhân là quan trọng, như chúng ta sẽ thấy một chút sau đó.

Để đơn giản, hãy giả sử mỗi máy ảo có 1 VP và máy chủ của chúng tôi có 8 LP. Chúng ta sẽ bắt đầu với một máy chủ trống.


Để tạo cấp “B”, quản trị viên máy chủ lưu trữ đặt giới hạn nhóm thành 50%:

G = n * C

G = 8 * 50%

Giá trị thời gian CPU của G = 4 LP cho toàn bộ nhóm


Quản trị viên máy chủ lưu trữ thêm một máy ảo cấp “B” duy nhất. Tại thời điểm này, VM lớp “B” của chúng tôi có thể sử dụng tối đa 50% giá trị của CPU của máy chủ hoặc tương đương với 4 LP trong hệ thống ví dụ của chúng tôi.

Bây giờ, quản trị viên bổ sung thêm một máy ảo “Tier B” thứ hai. Phân bổ của nhóm CPU — được chia đều cho tất cả các máy ảo. Chúng tôi có tổng cộng 2 máy ảo trong nhóm B, vì vậy mỗi máy ảo hiện chiếm một nửa tổng số 50% của nhóm B, 25% mỗi máy ảo hoặc tương đương với thời gian tính toán 2 LP.

Xem thêm: Hướng dẫn nâng cấp cấu hình máy chủ ảo

Đặt CPU Caps trên máy ảo cá nhân

Ngoài giới hạn nhóm, mỗi máy ảo cũng có thể có “nắp VM” riêng lẻ. Các điều khiển tài nguyên CPU Per-VM, bao gồm nắp CPU, trọng lượng và dự trữ, là một phần của Hyper-V kể từ khi được giới thiệu. Khi kết hợp với một nhóm mũ, một nắp VM xác định số tiền tối đa của CPU mà mỗi VP có thể nhận được, ngay cả khi nhóm có tài nguyên CPU có sẵn.

Ví dụ: quản trị viên máy chủ có thể muốn đặt nắp VM 10% trên máy ảo “C”. Bằng cách đó, ngay cả khi hầu hết các VP “C” không hoạt động, mỗi VP không bao giờ có thể nhận được nhiều hơn 10%. Không có nắp máy ảo, các máy ảo “C” có thể đạt được hiệu suất một cách cơ hội vượt quá các mức cho phép bởi cấp của chúng.

Cách ly các nhóm VM cho các bộ xử lý máy chủ cụ thể

Quản trị viên máy chủ Hyper-V cũng có thể muốn có khả năng dành tài nguyên tính toán cho máy ảo. Ví dụ, hãy tưởng tượng quản trị viên muốn cung cấp một máy ảo “A” cao cấp có giới hạn lớp 100%. Những máy ảo cao cấp này cũng yêu cầu độ trễ lập lịch thấp nhất và có thể xảy ra; nghĩa là, chúng có thể không bị loại bỏ bởi bất kỳ máy ảo nào khác. Để đạt được sự tách biệt này, một nhóm CPU cũng có thể được cấu hình với một ánh xạ mối quan hệ LP cụ thể.

Ví dụ, để phù hợp với một máy ảo “A” trên máy chủ trong ví dụ của chúng tôi, người quản trị sẽ tạo một nhóm CPU mới và thiết lập mối quan hệ của bộ xử lý nhóm với một tập hợp con các LP của máy chủ. Các nhóm B và C sẽ được khởi tạo cho các LP còn lại. Quản trị viên có thể tạo một VM duy nhất trong Nhóm A, sau đó sẽ có quyền truy cập độc quyền vào tất cả các LP trong Nhóm A, trong khi các nhóm cấp thấp hơn có lẽ là B và C sẽ chia sẻ các LP còn lại.

Phân tách VP gốc từ VP khách

Theo mặc định, Hyper-V sẽ tạo một VP gốc trên mỗi LP vật lý cơ bản. Các VP gốc này được ánh xạ chặt chẽ 1: 1 với các LP hệ thống và không di chuyển – tức là mỗi VP gốc sẽ luôn thực thi trên cùng một LP vật lý. VP khách có thể chạy trên bất kỳ LP có sẵn nào và sẽ chia sẻ thực thi với các VP gốc.

Tuy nhiên, nó có thể là mong muốn hoàn toàn tách biệt hoạt động VP gốc từ VP khách. Hãy xem xét ví dụ của chúng tôi ở trên, nơi chúng tôi triển khai máy ảo cấp “A” cao cấp. Để đảm bảo VP của “A” VM có độ trễ thấp nhất và “jitter” hoặc sự thay đổi lịch trình, chúng tôi muốn chạy chúng trên một tập hợp LP chuyên dụng và đảm bảo rằng gốc không chạy trên các LP này.

Điều này có thể được thực hiện bằng cách sử dụng sự kết hợp của cấu hình “minroot”, giới hạn phân vùng hệ điều hành máy chủ để chạy trên một tập con của tổng bộ vi xử lý logic hệ thống, cùng với một hoặc nhiều nhóm CPU được khởi tạo.

Máy chủ ảo hóa có thể được cấu hình để hạn chế phân vùng máy chủ cho các LP cụ thể, với một hoặc nhiều nhóm CPU được khởi tạo cho các LP còn lại. Theo cách này, phân vùng gốc và khách có thể chạy trên tài nguyên CPU chuyên dụng và hoàn toàn bị cô lập, không có chia sẻ CPU.

Sử dụng Công cụ CpuGroups

Hãy xem xét một số ví dụ về cách sử dụng công cụ CpuGroups.

 chú thích

Tham số dòng lệnh cho công cụ CpuGroups được truyền chỉ sử dụng dấu cách làm dấu phân cách. Không có ký tự ‘/’ hoặc ‘-’ nào cần tiến hành công tắc dòng lệnh mong muốn.

Khám phá cấu trúc liên kết CPU

Việc thực thi các CpuGroups với GetCpuTopology trả về thông tin về hệ thống hiện tại, như hình dưới đây, bao gồm cả LP Index, nút NUMA mà LP thuộc về, các ID gói và lõi và chỉ số ROOT VP.

Ví dụ sau đây cho thấy một hệ thống có 2 socket CPU và các nút NUMA, tổng cộng 32 LP và đa luồng được kích hoạt, và được cấu hình để kích hoạt Minroot với 8 VP gốc, 4 từ mỗi nút NUMA. Các LP có các VP gốc có RootVpIndex> = 0; Các LP có RootVpIndex là -1 không có sẵn cho phân vùng gốc, nhưng vẫn được quản lý bởi hypervisor và sẽ chạy các VP khách được cho phép bởi các thiết lập cấu hình khác.

Tóm tắt ngắn gọn Cách phân chia tài nguyên trên máy chủ ảo

 

Nếu bạn còn bất kỳ thắc mắc nào khác, hãy comment bên dưới để chúng tôi có thể giải đáp hết cho quý khách hàng. Xin cảm ơn và chúc quý khách hàng may mắn!

Xem thêm: Cho thuê máy chủ ảo vps giá rẻ

 

Hotline tư vấn miễn phí
Hotline tư vấn miễn phí