ΠΠ°Π·ΠΎΠ²ΡΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΎ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ: ΠΏΠΎΠ½ΡΡΠΈΡ, ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ
ΠΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ β ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΠ’-ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅. ΠΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅, ΡΠΊΠΎΠ½ΠΎΠΌΡ ΡΠ΅ΡΡΡΡΡ ΠΈ ΠΏΠΎΠ²ΡΡΠ°Ρ Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ.
Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ, Π²ΠΊΠ»ΡΡΠ°Ρ Linux, Windows, macOS, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, VMware ESXi, Proxmox VE, XenServer) ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΌΠ°ΡΠΈΠ½Π°ΠΌΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
-
Π Linux Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Ρ ΡΠ²ΡΠ·ΠΊΠ° KVM + QEMU + libvirt, Π° ΡΠ°ΠΊΠΆΠ΅ LXC/LXD Π΄Π»Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
-
Π Windows Π²ΡΡΡΠΎΠ΅Π½ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ Hyper-V, ΠΊΠΎΡΠΎΡΡΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΡ ΡΡΠ΅Π΄Π°Ρ ΠΈ ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡΡ .
-
Π macOS Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Virtualization.framework, Π° ΡΠ°Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Parallels ΠΈ VirtualBox.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ β ΠΊΡΠ°ΡΠΊΠΈΠΉ, Π½ΠΎ Π΅ΠΌΠΊΠΈΠΉ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΠΏΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΠΏΠΎΠ½ΡΡΠΈΡΠΌ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Ρ Π°ΠΊΡΠ΅Π½ΡΠΎΠΌ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅.
π§ ΠΡΠ½ΠΎΠ²Ρ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ
Hypervisor (Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ)
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΌΠ°ΡΠΈΠ½Π°ΠΌΠΈ. ΠΡΠ²Π°Π΅Ρ Π΄Π²ΡΡ ΡΠΈΠΏΠΎΠ²:
-
Type 1 (bare-metal) β ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°ΠΏΡΡΠΌΡΡ Π½Π° βΠΆΠ΅Π»Π΅Π·Π΅β (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, VMware ESXi, Xen, Hyper-V).
-
Type 2 (hosted) β ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π²Π½ΡΡΡΠΈ ΠΠ‘, ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, VirtualBox, VMware Workstation).
VM (Virtual Machine)
ΠΠΎΠ»Π½ΠΎΡΠ΅Π½Π½Π°Ρ, ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΠ‘, ΡΠΌΡΠ»ΠΈΡΡΠ΅ΠΌΡΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ, ΠΏΠ°ΠΌΡΡΡΡ ΠΈ CPU. ΠΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ VM β ΡΡΠΎ ΠΎΠ±ΡΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, ΠΏΡΠΎΡΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ.
vCPU (Virtual CPU)
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ VM. ΠΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ vCPU Π½Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΄ΡΠ° ΠΈΠ»ΠΈ ΠΏΠΎΡΠΎΠΊΠΈ.
βοΈ ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½
CPU Pinning
ΠΠ°ΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Π·Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠ΄ΡΠ°ΠΌΠΈ. ΠΡΠΎ ΡΠ½ΠΈΠΆΠ°Π΅Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ.
Huge Pages
ΠΠ°ΠΌΡΡΡ Π² Linux ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌΠΈ ΠΏΠΎ 4 KB. Huge Pages β ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ (2 MB ΠΈΠ»ΠΈ 1 GB), ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΊΠΎΡΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΡΠ½ΠΈΠΆΠ°ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° TLB.
NUMA (Non-Uniform Memory Access)
ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΊΠ°ΠΆΠ΄ΡΠΉ CPU ΠΈΠΌΠ΅Π΅Ρ βΡΠ²ΠΎΡβ ΠΏΠ°ΠΌΡΡΡ. ΠΠ»Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ VM Π»ΡΡΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡ vCPU ΠΈ RAM Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ NUMA-ΡΠ·Π»Π°.
π§© Π£ΡΡΡΠΎΠΉΡΡΠ²Π° Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° ΠΈ ΠΏΡΠΎΠ±ΡΠΎΡ
SR-IOV (Single Root I/O Virtualization)
ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΡΡΡΡΠΎΠΉΡΡΠ²Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΊΠ°ΡΡΠ΅) ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ (VF), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΡΡΠΌΡΡ Π½Π°Π·Π½Π°ΡΠΈΡΡ VM.
-
PF (Physical Function) β ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ.
-
VF (Virtual Function) β Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ βΠ΄ΠΎΡΠ΅ΡΠ½Π΅Π΅β ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ.
PCI Passthrough
ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ VM ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΠΌ Π½Π°ΠΏΡΡΠΌΡΡ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΠΎΠΉ, Π΄ΠΈΡΠΊΠΎΠΌ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΊΠ°ΡΡΠΎΠΉ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ VFIO ΠΈ IOMMU.
VirtIO
ΠΠ°Π±ΠΎΡ ΠΏΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² Π΄Π»Ρ Π΄ΠΈΡΠΊΠΎΠ², ΡΠ΅ΡΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ². ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΡ ΡΠ°Π±ΠΎΡΡ VM Π·Π° ΡΡΡΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠΎΠΌ.
πΎ ΠΠΈΡΠΊΠΈ ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ Π΄ΠΈΡΠΊΠΈ
-
qcow2β ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΆΠ°ΡΠΈΠ΅, ΡΠ½Π°ΠΏΡΠΎΡΡ, ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅. -
rawβ ΠΏΡΠΎΡΡΠΎΠΉ ΠΈ Π±ΡΡΡΡΡΠΉ, Π½ΠΎ Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ.
Thin Provisioning
ΠΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, Π±Π΅Π· ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ°.
Snapshots
ΠΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΈΡΠΊΠ° ΠΈΠ»ΠΈ Π²ΡΠ΅ΠΉ VM Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
VirtIO Disk
ΠΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π΄ΠΈΡΠΊΠΎΠ².
π Π‘Π΅ΡΠ΅Π²ΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ
Π’ΠΈΠΏΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ VM:
-
Bridge β VM Π½Π°ΠΏΡΡΠΌΡΡ Π² ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ΅ΡΠΈ.
-
NAT β VM Π·Π° NAT, Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΡ Π΅ΡΡΡ, Π½ΠΎ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π°.
-
Macvtap / Macvlan β ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ MAC ΠΈ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ΅ΡΠΈ.
Tap-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΡΠΎΠ²Π½Ρ L2, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ VM ΠΊ bridge.
VirtIO Net
ΠΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ.
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ
Π§Π°ΡΡΠΎ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ dnsmasq Π΄Π»Ρ DHCP, DNS, TFTP (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, libvirt).
PXE Boot
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π·Π°Π³ΡΡΠ·ΠΊΠΈ VM ΠΏΠΎ ΡΠ΅ΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
9p / VirtFS
ΠΡΠΎΡΡΠΎΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΠ°ΡΠΈΠ½Π³Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Ρ ΠΎΡΡΠΎΠΌ ΠΈ VM.
π§° ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΈ ΡΠ΅ΡΠ²ΠΈΡΡ
KVM
ΠΠΎΠ΄ΡΠ»Ρ ΡΠ΄ΡΠ° Linux, ΠΏΡΠ΅Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π² Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ. Π Π°Π±ΠΎΡΠ°Π΅Ρ Ρ QEMU.
QEMU
ΠΠΌΡΠ»ΡΡΠΎΡ ΠΈ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΎΡ, ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ KVM Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ.
libvirt
Π€ΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ virsh, virt-manager, API.
Cloud-init
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ VM: ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, SSH, hostname, ΡΠ΅ΡΡ ΠΈ Π΄Ρ.
π ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ β ΡΡΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΡΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΠ‘ Π²Π½ΡΡΡΠΈ Π΄ΡΡΠ³ΠΎΠΉ. ΠΡΠΎ ΡΠ΅Π»Π°Ρ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ², ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΈ ΡΡΠΈΠ»ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π³ΠΈΠ±ΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ, ΠΏΠΎΠ²ΡΡΠ°ΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ².