vCPU là tên viết tắt của Virtual Central Processing Unit hay bộ xử lý trung tâm ảo, là đơn vị xử lý trung tâm được tìm thấy trong các máy ảo và môi trường đám mây. Trong hệ điều hành của máy ảo, mỗi vCPU đại diện cho một lõi CPU vật lý.
Các doanh nghiệp đang ngày càng sử dụng máy ảo để tiết kiệm không gian, thời gian và tiền bạc cho việc quản lý. Máy ảo cho phép người dùng chạy nhiều hệ điều hành trên một máy vật lý duy nhất, trong khi vCPU đảm bảo hiệu suất cần thiết.
Trong bài viết này, ta sẽ đi tìm hiểu vCPU là gì, cách so sánh vCPU với CPU và cách tính toán các yêu cầu vCPU.
Nội Dung Bài Viết
vCPU là gì?
vCPU là một CPU ảo mà trình ảo hóa tạo và gán cho một máy ảo hoặc phần mềm ảo hóa. Nó đại diện cho việc triển khai phần mềm của CPU vật lý không tồn tại dưới dạng CPU thực, nhưng hệ điều hành coi đó là CPU thực.
Trong môi trường đám mây, mỗi VM nhận được ít nhất một vCPU. Điều này có thể thực hiện được bằng cách sử dụng CPU vật lý làm CPU ảo trên máy chủ và lưu trữ nhiều máy ảo trên đó.
Một tính năng chính của vCPU là nó cho phép nhiều máy ảo chia sẻ tài nguyên vật lý của máy chủ, chẳng hạn như bộ nhớ, CPU, bộ lưu trữ,…
>> Xem thêm: Máy ảo là gì?
vCPU hoạt động như thế nào?
Một vCPU hoạt động bằng cách chiếm một số khe thời gian trên tất cả các lõi CPU vật lý có sẵn trên máy chủ. Điều đó có nghĩa là một vCPU không thể hiện sự phân bổ 1:1 cho tài nguyên lõi CPU vật lý. Hơn nữa, do được phân phối trên nhiều lõi, một vCPU có hiệu suất sử dụng cao hơn so với một lõi CPU vật lý đơn lẻ.
Trình ảo hóa xác định các khe thời gian mà một vCPU chiếm giữ và lõi CPU nào được chỉ định cho nó tại bất kỳ thời điểm nào. Nhiều máy ảo có thể được lưu trữ trên một số lõi vật lý hạn chế nhờ phân phối tài nguyên như vậy.
Tính năng này cho phép chạy một số máy ảo trên máy, chẳng hạn như chỉ có hai lõi CPU vật lý.
>> Xem thêm: Điện toán đám mây là gì?
Có bao nhiêu vCPU trong một CPU?
Các CPU hiện đại được xây dựng trên các bộ vi xử lý mạch tích hợp có chứa một hoặc nhiều lõi. Các chip có nhiều lõi được gọi là bộ xử lý đa lõi và các lõi riêng lẻ có nhiều lõi logic, tất cả đều được sử dụng để tạo vCPU.
Một lõi vật lý thường có thể chạy hai luồng, nghĩa là nó có hai lõi logic. Đây được gọi là Hyper-Threading và nó cung cấp nhiều sức mạnh tính toán hơn cũng như cho phép nhiều máy ảo hoạt động đồng thời hơn.
Cân nhắc tất cả những điều trên, số lượng vCPU trong một máy chủ chủ yếu phụ thuộc vào những điều sau:
- Số lượng CPU vật lý trong máy chủ: Thông thường sẽ có một CPU trên mỗi máy, nhưng các trung tâm dữ liệu hiện đại có thể có các máy chủ bộ xử lý đơn và kép.
- Số lõi CPU: Lõi CPU là một bộ xử lý được tích hợp trong chip CPU và mỗi lõi có thể thực hiện và xử lý các tác vụ một cách độc lập đồng thời. CPU hiện đại có tới 64 lõi chạy 128 luồng.
- Số luồng CPU: Một luồng là một tập hợp các hướng dẫn cho phép chia lõi CPU thành nhiều lõi ảo (logic) để tăng hiệu suất. Một lõi CPU thường có hai luồng. AMD sử dụng đa luồng, trong khi Intel sử dụng siêu phân luồng.
Tham khảo phần bên dưới để tính toán số lượng vCPU bạn cần cho một máy ảo và số lượng vCPU tối đa được hệ thống của bạn hỗ trợ.
Bạn cần bao nhiêu vCPU và cách tính toán?
Số lượng CPU ảo tối đa trong một hệ thống được xác định bởi loại CPU và nhà sản xuất trình ảo hóa. Số lượng vCPU được tính bằng cách lấy số lượng luồng xử lý trên mỗi lõi và nhân nó với số lượng lõi và socket CPU được sử dụng. Do đó, công thức tính số lượng vCPU như sau:
(Luồng x Lõi) x Số CPU vật lý = Số vCPU
Ví dụ: nếu CPU có 8 lõi và 16 luồng, số lượng vCPU tối đa là:
(8 Nhân x 16 Luồng) x 1 CPU = 128 vCPU
Tổng số vCPU có sẵn cho ví dụ trên là 128.
Để tìm số lõi và luồng trên hệ thống Windows và Linux, hãy làm theo các bước bên dưới:
Người dùng Windows
B1: Mở Task Manager bằng cách nhấn Ctrl+Shift+Esc.
B2: Nhấp vào tab Performance và chọn phần CPU.
B3: Ở dưới cùng bên phải, hãy tìm số Cores, Logical Processors (luồng), và Sockets (số lượng CPU).
Người dùng Linux
B1: Mở cửa sổ terminal (Ctrl+Alt+T).
B2: Chạy lệnh sau:
lscpu
Đầu ra lệnh cho biết chi tiết CPU, bao gồm số lượng CPU vật lý, lõi và luồng trên mỗi lõi.
Tính số vCPU cho một khối lượng công việc cụ thể
Để tính toán số lượng vCPU cần thiết cho một khối lượng công việc cụ thể, trước tiên hãy xác định số lượng lõi CPU vật lý có sẵn trên máy chủ. Sau đó, tính đến khối lượng công việc dự kiến cho từng máy ảo mà bạn định lưu trữ.
Khi xem xét khối lượng công việc, hãy lưu ý đến việc sử dụng CPU, nó sẽ luôn ở mức 100% hay sẽ có những đợt sử dụng đột ngột? Bạn có thể quyết định số lượng vCPU sẽ gán cho VM nào bằng cách xác định các yêu cầu.
Ví dụ: khối lượng công việc nhỏ với thời gian CPU thấp cho phép có nhiều máy ảo hơn vì chúng không yêu cầu nhiều tài nguyên. Tuy nhiên, khối lượng công việc lớn, chẳng hạn như máy chủ cơ sở dữ liệu, có mức sử dụng tài nguyên lớn hơn, điều đó có nghĩa là sẽ có ít máy ảo hơn trên cùng một máy.
Yêu cầu tối thiểu đối với mỗi VM có khối lượng công việc nhỏ phải là một vCPU, trong khi các vCPU bổ sung có thể được thêm vào khi khối lượng công việc tăng lên.
Kết luận
Bài viết này đã định nghĩa vCPU là gì, cách thức hoạt động và khi nào nên sử dụng. Ngoài ra khi đọc bài viết, bạn cũng đã học cách xác định số lượng vCPU tối đa cho một máy hoặc khối lượng công việc.
Có thể thấy phần mềm ảo hóa ngày càng được sử dụng cho các máy chủ vì nó tiết kiệm tài nguyên, thời gian và tiền bạc. Vì vậy, vCPU sẽ là một lựa chọn phù hợp. Hãy theo dõi Máy Chủ Sài Gòn để đọc thêm các bài viết mới của chúng tôi nhé!