Ubuntu Server trên Proxmox: Hướng dẫn cài đặt AI GPU NVIDIA cực nhanh
Tạo Máy Chủ AI Mạnh Mẽ: Hướng Dẫn Cài Đặt Ubuntu Server trên Proxmox với GPU NVIDIA
Bạn đã có máy chủ Proxmox được cấu hình, GPU đã được cách ly thành công thông qua passthrough. Giờ là lúc biến phần cứng đắt tiền này thành một cỗ máy tăng tốc AI hiệu quả. Bài viết này sẽ hướng dẫn bạn từng bước để tạo một môi trường Ubuntu Server gọn nhẹ, ổn định, sẵn sàng cho các tác vụ học máy của bạn. Chúng ta sẽ tập trung vào việc tối ưu hóa hiệu suất và độ tin cậy, đảm bảo bạn có thể khai thác tối đa sức mạnh GPU của mình.
Điều Kiện Tiên Quyết
Trước khi bắt đầu, hãy đảm bảo bạn đã chuẩn bị đầy đủ các yếu tố sau:
- Máy chủ Proxmox đã được cấu hình hoàn chỉnh.
- GPU passthrough đã được thiết lập thành công (tham khảo hướng dẫn cấu hình trước đó).
- File ISO Ubuntu Server LTS đã được tải lên bộ nhớ Proxmox.
- Tài nguyên máy ảo đã được phân bổ phù hợp (số lõi CPU, dung lượng RAM).
- Kết nối mạng ổn định đến máy chủ Proxmox.
Giai Đoạn 1: Tạo Máy Ảo Proxmox – Cấu Hình Quan Trọng Cho AI
Truy cập vào bảng điều khiển Proxmox của bạn và nhấp vào nút \”Create VM\” (Tạo máy ảo). Hãy xem xét kỹ từng tab, vì các cài đặt ở đây sẽ ảnh hưởng trực tiếp đến tính ổn định và khả năng nhận diện GPU của máy ảo.
General (Tổng Quan)
Nhập tên máy ảo mô tả rõ ràng (ví dụ: “ubuntu-ai-server”) để dễ dàng quản lý. Proxmox sẽ tự động gán ID máy ảo, bạn có thể để mặc định.
OS (Hệ Điều Hành)
Chọn \”Linux\” làm loại hệ điều hành, sau đó chọn file ISO Ubuntu Server LTS đã tải lên. Giữ nguyên mục “Type” (Loại) là Linux – Proxmox sẽ tự động phát hiện bản phân phối.
System (Hệ Thống) – Cực Kỳ Quan Trọng Cho GPU Passthrough Hiện Đại
Đây là bước quan trọng nhất để đảm bảo GPU hoạt động ổn định. Hãy đặt \”BIOS\” thành \”OVMF (UEFI)\”. Các GPU NVIDIA hiện đại yêu cầu firmware UEFI để khởi tạo chính xác. Không sử dụng SeaBIOS, vì nó có thể gây ra lỗi và không ổn định khi sử dụng GPU passthrough.
Chọn ô “Add EFI disk” (Thêm ổ đĩa EFI) và phân bổ dung lượng 1 GB. Nếu không, máy ảo sẽ không khởi động được với UEFI. Đặt \”Machine\” (Máy) thành \”q35\” (mặc định của Proxmox) và \”SCSI Controller\” (Bộ điều khiển SCSI) thành \”VirtIO SCSI\” để tối ưu hóa hiệu suất lưu trữ.
CPU (Bộ Xử Lý) – Tập Lệnh AVX/AVX2 Quan Trọng
Phân bổ 4-8 lõi CPU tùy thuộc vào CPU máy chủ và khối lượng công việc. Điều chỉnh số lượng lõi theo nhu cầu sử dụng. Đặt \”Type\” (Loại) thành “host”. Đây là yêu cầu bắt buộc.
Loại CPU “host” cho phép truyền trực tiếp các tập lệnh của CPU vật lý của bạn – bao gồm AVX và AVX2 – đến máy ảo. Điều này rất cần thiết cho các thư viện AI được tối ưu hóa (PyTorch, TensorFlow, v.v.). Nếu không có loại CPU “host”, hiệu suất của các tác vụ AI sẽ giảm đáng kể.
Memory (Bộ Nhớ) – Cài Đặt Quan Trọng Nhất Cho Độ Ổn Định
Phân bổ một lượng RAM cố định (ví dụ: 32 GB). Điều chỉnh dung lượng RAM dựa trên tổng dung lượng RAM khả dụng của máy chủ và quy mô khối lượng công việc dự kiến. Đây là nơi bạn cần đưa ra quyết định quan trọng về tính ổn định.
Bỏ chọn “Ballooning device” (Thiết bị Ballooning). Đây là yêu cầu bắt buộc. Tính năng ballooning cho phép Proxmox tự động thu nhỏ hoặc mở rộng RAM của máy ảo. Trong quá trình huấn luyện hoặc suy luận AI cường độ cao, việc thay đổi kích thước bộ nhớ động có thể gây ra hiện tượng chậm trễ, lỗi bộ nhớ cache và thậm chí là sự cố hoàn toàn. Các tác vụ AI yêu cầu phân bổ bộ nhớ ổn định và có thể dự đoán được.
Network (Mạng)
Để nguyên các cài đặt mặc định. Proxmox sẽ tự động gán một card mạng ảo và DHCP sẽ cung cấp địa chỉ IP.
Confirm (Xác Nhận)
Xem lại tất cả các thiết lập trên tab xác nhận. Nhấp vào \”Finish\” (Hoàn tất) để tạo máy ảo.
Giai Đoạn 2: Cài Đặt Hệ Điều Hành và Khởi Động Lần Đầu
Nhấp vào \”Start\” (Bắt đầu) để khởi động máy ảo. Mở tab \”Console\” trong Proxmox để theo dõi quá trình khởi động. Trình cài đặt Ubuntu sẽ xuất hiện trong vài giây.
Làm theo các hướng dẫn cài đặt tiêu chuẩn: ngôn ngữ, bố cục bàn phím, cấu hình mạng và thiết lập lưu trữ. Khi đến màn hình \”Storage configuration\” (Cấu hình lưu trữ), hãy chấp nhận mặc định – sử dụng toàn bộ ổ đĩa ảo mà Proxmox đã tạo.
Nhập tên máy chủ cho máy ảo của bạn (ví dụ: “ai-server”) và tạo tài khoản người dùng với mật khẩu mạnh. Bạn sẽ sử dụng tài khoản này cho công việc hàng ngày.
Quan trọng trong quá trình cài đặt: Khi màn hình \”Select software\” (Chọn phần mềm) xuất hiện, hãy đảm bảo hộp \”OpenSSH server\” (Máy chủ OpenSSH) được ĐÁNH DẤU. Điều này rất quan trọng. Nó cho phép bạn kết nối từ xa với máy ảo qua SSH mà không cần dựa vào bảng điều khiển của Proxmox, vốn có thể chậm và rắc rối cho việc phát triển hàng ngày.
Hãy để quá trình cài đặt hoàn tất và cho phép máy ảo tự động khởi động lại.
Giai Đoạn 3: Dọn Dẹp Sau Cài Đặt – Những Việc Cần Làm
Sau khi máy ảo khởi động và hiển thị lời nhắc đăng nhập, hãy đăng nhập bằng thông tin đăng nhập người dùng mà bạn đã tạo.
Chạy ngay các lệnh sau:
sudo apt update && sudo apt upgrade -y
Thao tác này cập nhật kho gói phần mềm và cài đặt bất kỳ bản vá bảo mật nào có sẵn. Quá trình này mất từ 1 đến 3 phút, tùy thuộc vào tuổi đời của hệ thống.
Tiếp theo, hãy cài đặt ba tiện ích thiết yếu:
sudo apt install qemu-guest-agent neofetch htop -y
Dưới đây là chức năng của từng thành phần:
- qemu-guest-agent cho phép Proxmox giám sát địa chỉ IP, mức sử dụng CPU và mức tiêu thụ bộ nhớ của máy ảo theo thời gian thực. Quan trọng hơn, nó cho phép thực hiện các lệnh tắt máy sạch từ Proxmox thay vì khởi động lại cứng. Việc tắt máy không sạch có thể khiến bộ nhớ GPU ở trạng thái không ổn định, có khả năng làm hỏng các tác vụ huấn luyện đang hoạt động.
- neofetch hiển thị thông tin hệ thống – hữu ích để nhanh chóng xác minh phiên bản và thông số kỹ thuật Ubuntu của bạn.
- htop là một trình giám sát tiến trình tương tác hiển thị mức sử dụng CPU và bộ nhớ theo thời gian thực – vô cùng hữu ích để gỡ lỗi xung đột tài nguyên trong quá trình xử lý các tác vụ AI.
Sau khi cài đặt hoàn tất, hãy khởi động lại máy ảo:
sudo reboot
Sau khi khởi động, hãy kiểm tra xem QEMU Guest Agent có đang chạy hay không:
sudo systemctl status qemu-guest-agent
Bạn sẽ thấy trạng thái hoạt động (đang chạy). Nếu không, hãy khởi động lại:
sudo systemctl restart qemu-guest-agent
Quay lại giao diện Proxmox và làm mới chế độ xem phần cứng của máy ảo. Bây giờ bạn sẽ thấy địa chỉ IP của máy ảo được hiển thị trong mục “IPs” thay vì “N/A”. Điều này xác nhận rằng tác nhân khách đang giao tiếp với Proxmox.
Giai Đoạn 4: Cài Đặt Trình Điều Khiển NVIDIA
Đây là thời điểm quyết định. Nếu tính năng truyền GPU được cấu hình chính xác trên máy chủ Proxmox của bạn, GPU của bạn sẽ được nhận diện ở đây. Nếu không thành công, bạn cần xem lại cấu hình IOMMU và danh sách đen của máy chủ.
Phương pháp dễ nhất và đáng tin cậy nhất cho Ubuntu Server là công cụ ubuntu-drivers tích hợp sẵn, công cụ này tự động phát hiện GPU của bạn và cài đặt trình điều khiển phù hợp.
Chạy:
sudo ubuntu-drivers list
Lệnh này sẽ hiển thị tất cả các trình điều khiển NVIDIA có sẵn cho phần cứng của bạn. Bạn sẽ thấy kết quả tương tự như sau:
nvidia-driver-470 nvidia-driver-550 nvidia-driver-570 nvidia-driver-570-open
Đối với các tác vụ AI hiện đại, nên ưu tiên các phiên bản trình điều khiển mã nguồn mở (những trình điều khiển có hậu tố -open). Chúng tránh được các vấn đề liên quan đến lỗi mô-đun kernel và cung cấp độ ổn định tuyệt vời. Tuy nhiên, nếu GPU của bạn không hỗ trợ trình điều khiển mã nguồn mở, các phiên bản độc quyền cũng hoạt động tốt.
Cài đặt trình điều khiển được đề xuất tự động:
sudo ubuntu-drivers autoinstall
Quá trình này sẽ phát hiện phần cứng của bạn và cài đặt trình điều khiển ổn định phù hợp nhất. Quá trình mất từ 2 đến 5 phút. Bạn sẽ thấy các thông báo của trình biên dịch khi mô-đun kernel được xây dựng và chèn vào kernel đang chạy.
Sau khi hoàn tất, khởi động lại máy ảo để tải mô-đun kernel mới:
sudo reboot
Sau khi khởi động lại, hãy chạy lệnh huyền thoại:
nvidia-smi
Nếu cấu hình truyền GPU trực tiếp được thực hiện chính xác, bạn sẽ thấy kết quả tương tự như sau:
+---------------------------------------------------------------------------------+ | NVIDIA-SMI 570.169 Driver Version: 570.169 CUDA Version: 12.8 | |-----------------------------------------+------------------------+-------------| | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | |===========================================================================================| | 0 NVIDIA GeForce RTX 9090 Off | 00:10.0 Off | N/A | | 0% 38C P8 15W / 575W | 2MiB / 32607MiB | 0% Default | +-------------------------+------------------------+-------------| Processes: GPU GiB Type Process name GPU Memory | GPU-Util Compute M. | |===========================|===========================| | No running processes found | +---------------------------+-----------+
Những Điều Cần Kiểm Tra
- Tên GPU: Hiển thị kiểu GPU của bạn (RTX 5090, RTX 4090, A100, v.v.). Điều này xác nhận GPU của bạn đã được truyền thành công.
- Phiên bản trình điều khiển: Hiển thị phiên bản trình điều khiển đã cài đặt. Nếu bạn thấy điều này, quá trình cài đặt trình điều khiển đã thành công.
- Phiên bản CUDA: Hiển thị phiên bản CUDA được trình điều khiển này hỗ trợ (ví dụ: 12.8). Điều này rất quan trọng đối với các framework AI – PyTorch và TensorFlow hãy kiểm tra khả năng tương thích CUDA.
- Bộ nhớ: Hiển thị tổng bộ nhớ GPU khả dụng (ví dụ: 32607 MiB = ~32 GB). Điều này xác nhận toàn bộ VRAM có thể truy cập được bởi máy ảo.
Nếu Lệnh nvidia-smi Thất Bại
Nếu bạn thấy “Không tìm thấy thiết bị nào” hoặc lỗi trình điều khiển, quá trình truyền GPU không hoạt động. Quay lại máy chủ Proxmox của bạn và kiểm tra:
- IOMMU đã được bật trong cấu hình GRUB của máy chủ.
- GPU của bạn không nằm trong danh sách đen (kiểm tra
/etc/modprobe.d/blacklist.conf). - GPU đã được gán chính xác trong tab thiết bị PCI của máy ảo.
- Mẫu GPU của bạn được hỗ trợ bởi trình điều khiển NVIDIA (GPU quá cũ hoặc quá mới đôi khi gặp sự cố).
Giám Sát GPU Thời Gian Thực (Tùy Chọn)
Để giám sát liên tục việc sử dụng GPU, hãy cài đặt:
sudo apt install nvtop
Sau đó chạy lệnh:
nvtop
Điều này cung cấp giao diện giống như bảng điều khiển hiển thị bộ nhớ GPU, mức sử dụng và các tiến trình đang chạy trong thời gian thực. Nó vô cùng hữu ích trong quá trình phát triển và gỡ lỗi.
Những Gì Bạn Đã Xây Dựng
Giờ đây bạn đã có một máy chủ Ubuntu ổn định, được tăng tốc bằng GPU, sẵn sàng cho việc phát triển AI. Hệ thống có bộ nhớ cố định (không bị phình to), truyền CPU đúng cách với các tập lệnh AVX/AVX2 và nhận diện GPU đã được xác minh. Đây là nền tảng vững chắc để chạy các LLM, huấn luyện mô hình hoặc thực hiện các tác vụ suy luận.
GPU của bạn không còn là một phần cứng không hoạt động nằm trong máy chủ Proxmox nữa. Nó đang hoạt động, được nhận diện và sẵn sàng tăng tốc công việc cho máy ảo của bạn.
Bước Tiếp Theo
Nhưng một động cơ mạnh mẽ mà không có nhiên liệu thì vô dụng. Trong giai đoạn tiếp theo, bạn sẽ cài đặt Ollama – cách đơn giản nhất để tải xuống và chạy bất kỳ LLM mã nguồn mở nào trên hệ thống của bạn mà không cần phải vật lộn với việc cài đặt CUDA Toolkit, môi trường ảo Python hoặc các tệp cấu hình phức tạp.
Với Ollama, bạn sẽ hoàn tất quá trình xác minh bằng nvidia-smi và chạy mô hình Llama 7 tỷ tham số chỉ trong vòng chưa đầy 15 phút. Không còn rắc rối về phụ thuộc. Không còn xung đột phiên bản. Chỉ cần suy luận LLM tức thì.
Phần khó khăn đã được giải quyết. Giờ đến phần thú vị: thực sự sử dụng thiết lập AI của bạn.
Từ khóa chính: Ubuntu Server trên Proxmox: Hướng dẫn cài đặt AI GPU NVIDIA cực nhanh
\”>