Tạo máy ảo trên Proxmox là quá trình tạo và cấu hình một máy ảo trên nền tảng ảo hóa Proxmox VE. Proxmox VE là một hệ thống ảo hóa dựa trên Linux, cho phép bạn tạo và quản lý nhiều máy ảo trên một máy chủ vật lý.
- Node: Chọn nút (node) nào trên cụm Proxmox sẽ chứa máy ảo mới. Bạn có thể chọn một trong các nút có sẵn trong cụm.
- VM ID: Mã số duy nhất định danh cho máy ảo. Đây là một số nguyên dương và không trùng lặp trong cụm Proxmox.
- Name: Tên của máy ảo. Đây là tên mà bạn muốn gắn với máy ảo để dễ dàng nhận biết và quản lý.
- Start at boot: Lựa chọn này xác định liệu máy ảo có tự động khởi động cùng hệ thống Proxmox khi khởi động lại hay không.
- Resource Pool: Chọn Resource Pool (nhóm tài nguyên) nếu bạn muốn máy ảo thuộc về một nhóm tài nguyên cụ thể. Resource Pool giúp quản lý tài nguyên một cách linh hoạt và phân chia chúng cho các máy ảo.
- Start/Shutdown order: Xác định thứ tự khởi động và tắt máy ảo trong cụm Proxmox. Bạn có thể cấu hình máy ảo để khởi động hoặc tắt trước hoặc sau các máy ảo khác.
- Startup delay: Độ trễ giữa việc khởi động các máy ảo. Bạn có thể thiết lập thời gian chờ giữa các máy ảo bắt đầu khởi động.
- Shutdown timeout: Thời gian chờ tắt máy ảo trước khi Proxmox buộc tắt máy ảo bằng cách đóng nguồn.
- Use CD/DVD disc image file (iso) (Storage, ISO image): Cho phép bạn sử dụng một tập tin hình ảnh đĩa CD/DVD (ISO) đã lưu trữ trên hệ thống lưu trữ của Proxmox. Bạn có thể chọn một tập tin ISO từ kho lưu trữ và sử dụng nó như một đĩa ảo trong máy ảo.
- Use physical CD/DVD Drive: Cho phép bạn sử dụng ổ đĩa CD/DVD vật lý trên máy chủ Proxmox. Khi tùy chọn này được chọn, máy ảo có thể truy cập và sử dụng đĩa CD/DVD từ ổ đĩa vật lý trên máy chủ.
- Do not use any media: Lựa chọn này chỉ định rằng máy ảo sẽ không sử dụng bất kỳ phương tiện nào, bao gồm đĩa CD/DVD ảo hoặc vật lý.
- Guest OS (Type, Version): Chọn loại và phiên bản hệ điều hành của máy ảo. Điều này giúp Proxmox tùy chỉnh các cài đặt và khả năng tương thích với hệ điều hành được chọn. Bạn có thể chọn loại hệ điều hành như Linux, Windows, BSD và chọn phiên bản cụ thể của nó.
- Graphic card: Cho phép gắn một card đồ họa ảo vào máy ảo để hỗ trợ hiển thị đồ họa nâng cao và khả năng 3D trong máy ảo.
- Machine: Định nghĩa một loại máy ảo cụ thể hoặc mô hình phần cứng ảo để cung cấp các tính năng và hỗ trợ phần cứng tương thích với máy ảo.
- Firmware BIOS: Cho phép bạn chọn phiên bản và cấu hình BIOS ảo cho máy ảo. Điều này ảnh hưởng đến quá trình khởi động và cấu hình của máy ảo.
- SCSI Controller: Định nghĩa một bộ điều khiển SCSI ảo cho máy ảo. Bộ điều khiển này giúp kết nối các thiết bị SCSI ảo như ổ đĩa, ổ cứng và các thiết bị lưu trữ khác vào máy ảo.
- Qemu Agent: Cho phép giao tiếp và tương tác với máy ảo thông qua Qemu Agent. Qemu Agent cung cấp các tính năng như sao lưu, khôi phục, giám sát và giao tiếp với hệ điều hành máy ảo.
- Add TPM: Thêm hỗ trợ TPM (Trusted Platform Module) vào máy ảo. TPM là một chip phần cứng được sử dụng để bảo mật và mã hóa dữ liệu trong máy tính, đảm bảo tính toàn vẹn và an ninh của hệ thống. Việc thêm TPM vào máy ảo giúp cung cấp tính năng bảo mật bổ sung.
- Bus/Device: Xác định giao diện và thiết bị ảo được gắn kết với máy ảo, ví dụ như IDE, SCSI, SATA.
- SCSI Controller: Chọn loại bộ điều khiển SCSI ảo để kết nối ổ đĩa và các thiết bị lưu trữ khác với máy ảo.
- Storage: Chọn kho lưu trữ ảo để gắn kết với ổ đĩa hoặc thiết bị lưu trữ.
- Disk size (GiB): Xác định kích thước ổ đĩa ảo được cấp phát cho máy ảo, được tính bằng đơn vị gigabyte (GiB).
- Format: Chọn định dạng ổ đĩa ảo, ví dụ như QCOW2, RAW, VMDK, …
- Cache: Xác định cách lưu trữ cache cho ổ đĩa ảo, bao gồm các tùy chọn như None (không lưu cache), Write back (lưu cache vào bộ nhớ đệm trước khi ghi vào ổ đĩa), Write through (ghi trực tiếp vào ổ đĩa mà không lưu cache).
- Discard: Cho phép hoặc vô hiệu hóa tính năng loại bỏ (discard) dữ liệu không sử dụng trên ổ đĩa ảo.
- I/O thread: Xác định số luồng I/O sử dụng cho ổ đĩa ảo.
- SSD emulation: Kích hoạt chế độ giả lập ổ đĩa SSD, cho phép sử dụng các tính năng tối ưu hóa dành cho ổ đĩa rắn (SSD).
- Read-only: Thiết lập ổ đĩa ảo chỉ cho phép đọc.
- Backup: Đặt cờ cho phép hoặc vô hiệu hóa việc sao lưu ổ đĩa ảo.
- Skip replication: Xác định xem liệu dữ liệu trên ổ đĩa ảo có được sao chép (replicate) hay không.
- Async IO: Chọn chế độ I/O bất đồng bộ, cho phép thực hiện các thao tác I/O không đồng bộ trên ổ đĩa ảo.
- Sockets: Xác định số lượng socket CPU ảo được gán cho máy ảo.
- Cores: Xác định số lượng core CPU ảo được gán cho máy ảo.
- VCPUs: Xác định tổng số lượng VCPU (Virtual CPU) ảo được gán cho máy ảo, được tính bằng tổng số lượng sockets và cores.
- CPU limit: Đặt giới hạn tài nguyên CPU cho máy ảo, giới hạn này có thể là một giá trị tuyệt đối hoặc được xác định theo tỷ lệ phần trăm.
- CPU Affinity: Xác định CPU vật lý cụ thể được gán cho máy ảo, giới hạn máy ảo chạy trên các CPU nhất định.
- Type: Chọn kiểu CPU ảo, ví dụ như “kvm64” hoặc “host”.
- Total cores: Hiển thị tổng số lượng cores CPU vật lý có sẵn trên máy chủ.
- CPU units: Đặt ưu tiên tài nguyên CPU cho máy ảo, chỉ định số điểm ưu tiên tài nguyên CPU.
- Enable NUMA: Bật hoặc tắt tính năng NUMA (Non-Uniform Memory Access), cho phép máy ảo tương tác với bộ nhớ một cách hiệu quả trên các nút NUMA.
- Extra CPU Flags: Cho phép thêm các cờ (flags) CPU bổ sung, như SSE4.2, AES, AVX, … để tăng khả năng tương thích và hiệu suất của máy ảo.
- Memory (MiB): Xác định lượng bộ nhớ ảo được cung cấp cho máy ảo, tính bằng đơn vị megabyte (MiB).
- Minimum memory (MiB): Đặt lượng bộ nhớ tối thiểu mà máy ảo cần để hoạt động, đảm bảo rằng máy ảo không sẽ không bị giới hạn quá mức và có đủ bộ nhớ để thực hiện các tác vụ.
- Shares: Xác định ưu tiên tài nguyên bộ nhớ cho máy ảo trong môi trường chia sẻ. Giá trị càng cao, máy ảo nhận được sự ưu tiên cao hơn khi cung cấp tài nguyên bộ nhớ.
- Ballooning Device: Chức năng giảm bộ nhớ của máy ảo bằng cách thu hồi bộ nhớ không sử dụng và chuyển nó cho các máy ảo khác. Ballooning device giúp tối ưu sử dụng tài nguyên bộ nhớ trong môi trường ảo hóa.
No network device: Không kết nối mạng cho máy ảo.
Bridge: Kết nối máy ảo với một bridge network trên host vật lý. Điều này cho phép máy ảo truy cập vào mạng ngoài.
VLAN Tag: Xác định VLAN ID cho giao diện mạng của máy ảo khi sử dụng VLAN tagging. Điều này cho phép phân chia mạng thành các mạng con riêng biệt.
Firewall: Xác định cấu hình tường lửa cho giao diện mạng của máy ảo, quy định các quy tắc cho việc đi vào và đi ra.
Disconnect: Tắt kết nối mạng cho máy ảo.
MTU: Xác định kích thước Maximum Transmission Unit (MTU) cho giao diện mạng của máy ảo. Điều này xác định kích thước tối đa của gói tin mạng mà máy ảo có thể gửi hoặc nhận.
Model: Xác định loại card mạng ảo được sử dụng bởi máy ảo.
MAC address: Địa chỉ MAC (Media Access Control) của giao diện mạng của máy ảo. Địa chỉ MAC là một số duy nhất được gán cho card mạng để xác định máy tính trong mạng.
Rate limit (MB/s): Giới hạn tốc độ truyền/nhận dữ liệu của giao diện mạng của máy ảo theo đơn vị megabyte/giây.
Multiqueue: Kích hoạt tính năng multiqueue cho giao diện mạng của máy ảo, cho phép xử lý đồng thời nhiều hàng đợi mạng và cải thiện hiệu suất mạng.
Phần cuối cùng cho phép bạn review lại các thiết lập, bạn có thể tích vào Start after created để sau khi bấm vào Finish máy ảo sẽ tự khởi động.
Như vậy máy ảo ubuntu1804 đã tạo thành công và sẵn sàng cho việc cài đặt.
Sau khi tạo xong máy ảo, bạn muốn chỉnh sửa lại thiết lập thì có thể chọn máy ảo cần chỉnh sửa sau đó tiến hành thêm, bớt, chỉnh sửa,…
Sau khi thiết lập xong, bấm start máy ảo và cài đặt thôi.
Bạn có thể bấm vào Console để xem màn hình của máy ảo, và đây là màn hình cài đặt Ubuntu 18.04.
Và đây là kết quả sau khi mình cài đặt xong.