OffshoreVps
Hướng dẫn2 thg 10 20266 phút đọcBởi đội ngũ OffshoreVps

KVM so với OpenVZ: ảo hóa VPS nào tốt hơn?

Ảo hóa đầy đủ so với container: cô lập, quyền truy cập kernel, hỗ trợ Docker, đảm bảo RAM và cách kiểm tra VPS của bạn thực sự chạy trên nền tảng nào.

Không phải VPS nào cũng được xây dựng giống nhau. Công nghệ ảo hóa bên dưới quyết định máy chủ của bạn được cô lập đến đâu, bạn chạy được phần mềm nào và hiệu năng ra sao. Hai cái tên bạn gặp nhiều nhất là KVM và OpenVZ, cùng với LXC.

Các thẻ so sánh song song cho KVM và OpenVZ, mỗi thẻ có một thanh đo mức cô lập
So sánh trực quan nhanh giữa KVM và OpenVZ.

Hai cách xây dựng máy chủ ảo

Ảo hóa toàn phần (KVM) cấp cho mỗi khách hàng một máy ảo hoàn chỉnh với kernel riêng. Hypervisor chia phần cứng, và máy chủ của bạn hoạt động như một máy tính thật.

Ảo hóa container (OpenVZ, LXC) dùng chung kernel của máy chủ vật lý cho tất cả khách hàng. Mỗi container thấy tệp và tiến trình riêng của mình nhưng chạy trên cùng kernel với các container bên cạnh.

So sánh song song

KVMOpenVZ / LXC
KernelCủa riêng bạnDùng chung với máy chủ vật lý
Cô lậpMạnhYếu hơn
Chạy Docker, WireGuard, module kernel tùy chỉnhCóThường bị hạn chế hoặc không thể
Chạy WindowsCóKhông
Đảm bảo RAMCố định và được dành riêngCó thể bị bán quá mức ("burstable")
Chi phí phụ trộiNhỏNhỏ nhất
Các bước của hướng dẫn này theo thứ tự: 1. Hai cách xây dựng máy chủ ảo; 2. So sánh song song; 3. Vì sao KVM là lựa chọn an toàn hơn; 4. Khi nào container vẫn hợp lý; 5. Cách kiểm tra bạn đang dùng loại nào
Các bước trong hướng dẫn này, theo thứ tự.

Vì sao KVM là lựa chọn an toàn hơn

  • Bạn chọn phần mềm. Docker, VPN, tường lửa như nftables và các công cụ nạp module kernel đều chạy được mà không cần xin phép.
  • Bộ nhớ thật. RAM bạn mua được gán cho máy của bạn. Các host container đôi khi bán nhiều bộ nhớ hơn mức thực có và hy vọng khách hàng không dùng hết.
  • Cô lập tốt hơn. Một lỗi hoặc cuộc tấn công trong máy ảo của "hàng xóm" ít có khả năng ảnh hưởng đến máy của bạn hơn nhiều.
  • Hệ điều hành bất kỳ. Các bản phân phối Linux, BSD và Windows đều chạy không cần chỉnh sửa.

Khi nào container vẫn hợp lý

Container khởi động nhanh và ít lãng phí, đó là lý do các host dùng chúng cho các gói rất rẻ và lý do bạn dùng chúng bên trong VPS của mình qua Docker. Chúng ổn cho các khối lượng công việc đơn giản không cần gì đặc biệt từ kernel.

Cách kiểm tra bạn đang dùng loại nào

systemd-detect-virt
lscpu | grep -i hypervisor
cat /proc/user_beancounters   # exists only on OpenVZ

kvm trong lệnh đầu tiên nghĩa là ảo hóa toàn phần. Nếu tệp cuối cùng tồn tại, bạn đang dùng OpenVZ.

Câu hỏi thường gặp

KVM có tốt hơn OpenVZ không?

Với hầu hết mục đích thì có. KVM cho mỗi VPS kernel riêng và cô lập mạnh hơn, nên bạn có thể chạy bất kỳ hệ điều hành nào và Docker. OpenVZ dùng chung kernel của máy chủ và hạn chế hơn.

Tôi có thể chạy Docker trên OpenVZ không?

Thường là không, hoặc chỉ với nhiều hạn chế, vì các container dùng chung kernel của máy chủ. KVM là lựa chọn an toàn hơn cho Docker.

KVM có đắt hơn không?

Hơi đắt hơn, vì tài nguyên được phân bổ chặt chẽ hơn, nhưng khả năng cô lập và tương thích thường xứng đáng.