Initial commit
This commit is contained in:
103
skills/proxmox/references/vm-lxc.md
Normal file
103
skills/proxmox/references/vm-lxc.md
Normal file
@@ -0,0 +1,103 @@
|
||||
# VM vs LXC Reference
|
||||
|
||||
## Decision Matrix
|
||||
|
||||
### Use VM (QEMU/KVM) When
|
||||
|
||||
- Running Windows or non-Linux OS
|
||||
- Need full kernel isolation
|
||||
- Running untrusted workloads
|
||||
- Complex hardware passthrough needed
|
||||
- Different kernel version required
|
||||
- GPU passthrough required
|
||||
|
||||
### Use LXC When
|
||||
|
||||
- Running Linux services
|
||||
- Need lightweight, fast startup
|
||||
- Comfortable with shared kernel
|
||||
- Want better density/performance
|
||||
- Simple application containers
|
||||
- Development environments
|
||||
|
||||
## QEMU/KVM VMs
|
||||
|
||||
Full hardware virtualization with any OS support.
|
||||
|
||||
### Hardware Configuration
|
||||
|
||||
| Setting | Options | Recommendation |
|
||||
|---------|---------|----------------|
|
||||
| CPU type | host, kvm64, custom | `host` for performance |
|
||||
| Boot | UEFI, BIOS | UEFI for modern OS |
|
||||
| Display | VNC, SPICE, NoVNC | NoVNC for web access |
|
||||
|
||||
### Storage Controllers
|
||||
|
||||
| Type | Performance | Use Case |
|
||||
|------|-------------|----------|
|
||||
| VirtIO | Fastest | Linux, Windows with drivers |
|
||||
| SCSI | Fast | General purpose |
|
||||
| SATA | Moderate | Compatibility |
|
||||
| IDE | Slow | Legacy OS |
|
||||
|
||||
### Network Adapters
|
||||
|
||||
| Type | Performance | Use Case |
|
||||
|------|-------------|----------|
|
||||
| VirtIO | Fastest | Linux, Windows with drivers |
|
||||
| E1000 | Good | Compatibility |
|
||||
| RTL8139 | Slow | Legacy OS |
|
||||
|
||||
### Features
|
||||
|
||||
- Snapshots (requires compatible storage)
|
||||
- Templates for rapid cloning
|
||||
- Live migration (requires shared storage)
|
||||
- Hardware passthrough (GPU, USB, PCI)
|
||||
|
||||
## LXC Containers
|
||||
|
||||
OS-level virtualization with shared kernel.
|
||||
|
||||
### Container Types
|
||||
|
||||
| Type | Security | Use Case |
|
||||
|------|----------|----------|
|
||||
| Unprivileged | Higher (recommended) | Production workloads |
|
||||
| Privileged | Lower | Docker-in-LXC, NFS mounts |
|
||||
|
||||
### Resource Controls
|
||||
|
||||
- CPU cores and limits
|
||||
- Memory hard/soft limits
|
||||
- Disk I/O throttling
|
||||
- Network bandwidth limits
|
||||
|
||||
### Storage Options
|
||||
|
||||
- Bind mounts from host
|
||||
- Volume storage
|
||||
- ZFS datasets
|
||||
|
||||
### Features
|
||||
|
||||
- Fast startup (seconds)
|
||||
- Lower memory overhead
|
||||
- Higher density per host
|
||||
- Templates from Proxmox repo
|
||||
|
||||
## Migration Considerations
|
||||
|
||||
### VM Migration Requirements
|
||||
|
||||
- Shared storage (Ceph, NFS, iSCSI)
|
||||
- Same CPU architecture
|
||||
- Compatible Proxmox versions
|
||||
- Network connectivity between nodes
|
||||
|
||||
### LXC Migration Requirements
|
||||
|
||||
- Shared storage for live migration
|
||||
- Same architecture
|
||||
- Unprivileged preferred for portability
|
||||
Reference in New Issue
Block a user