LXD рдЪреА рдореВрд▓рднреВрдд рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ - рд▓рд┐рдирдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд╕рд┐рд╕реНрдЯрдо

LXD рдЪреА рдореВрд▓рднреВрдд рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ - рд▓рд┐рдирдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд╕рд┐рд╕реНрдЯрдо

рдПрд▓рдПрдХреНрд╕рдбреА рдкреБрдвреАрд▓ рдкрд┐рдвреАрдЪреЗ рд╕рд┐рд╕реНрдЯрдо рдХрдВрдЯреЗрдирд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЖрд╣реЗ, рдореНрд╣рдгреВрди рддреЗ рдореНрд╣рдгрддрд╛рдд рд╕реНрддреНрд░реЛрдд. рд╣реЗ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдорд╢реАрди рдкреНрд░рдорд╛рдгреЗрдЪ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлреЗрд╕ рджреЗрддреЗ, рдкрд░рдВрддреБ рддреНрдпрд╛рдРрд╡рдЬреА рд▓рд┐рдирдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд╡рд╛рдкрд░рддреЗ.

LXD рдХреЛрд░ рдПрдХ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдбрд┐рдорди рдЖрд╣реЗ (рд░реВрдЯ рдЕрдзрд┐рдХрд╛рд░рд╛рдВрд╕рд╣ рдЪрд╛рд▓рдгрд╛рд░реА рд╕реЗрд╡рд╛) рдЬреА рд╕реНрдерд╛рдирд┐рдХ рдпреБрдирд┐рдХреНрд╕ рд╕реЙрдХреЗрдЯрджреНрд╡рд╛рд░реЗ, рддрд╕реЗрдЪ рдпреЛрдЧреНрдп рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдЕрд╕рд▓реНрдпрд╛рд╕ рдиреЗрдЯрд╡рд░реНрдХрджреНрд╡рд╛рд░реЗ REST API рдкреНрд░рджрд╛рди рдХрд░рддреЗ. рдХреНрд▓рд╛рдпрдВрдЯ, рдЬрд╕реЗ рдХреА LXD рд╕рд╣ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗрд▓реЗ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЯреВрд▓, рдпрд╛ REST API рджреНрд╡рд╛рд░реЗ рд╡рд┐рдирдВрддреА рдХрд░рддрд╛рдд. рдпрд╛рдЪрд╛ рдЕрд░реНрде рдЕрд╕рд╛ рдХреА рддреБрдореНрд╣реА рд╕реНрдерд╛рдирд┐рдХ рд╣реЛрд╕реНрдЯ рдХрд┐рдВрд╡рд╛ рд░рд┐рдореЛрдЯ рд╣реЛрд╕реНрдЯрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдд рдЕрд╕рд▓рд╛рдд рддрд░реАрд╣реА, рд╕рд░реНрд╡рдХрд╛рд╣реА рд╕рдорд╛рди рдХрд╛рд░реНрдп рдХрд░рддреЗ.

рдпрд╛ рд▓реЗрдЦрд╛рдд рдЖрдореНрд╣реА LXD рдЪреНрдпрд╛ рд╕рдВрдХрд▓реНрдкрдирд╛рдВрд╡рд░ рддрдкрд╢реАрд▓рд╡рд╛рд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдгрд╛рд░ рдирд╛рд╣реА, рдЖрдореНрд╣реА рдХрдВрдЯреЗрдирд░рдЪреНрдпрд╛ рд╕рдорд╛рдВрддрд░ QEMU рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдорд╢реАрдирд╕рд╛рдареА рд╕рдорд░реНрдердирд╛рдЪреНрдпрд╛ LXD рдЪреНрдпрд╛ рдирд╡реАрдирддрдо рдЖрд╡реГрддреНрддреНрдпрд╛рдВрдордзреНрдпреЗ рдЕрд▓реАрдХрдбреАрд▓ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдгрд╛рдд рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдЙрдкрд▓рдмреНрдз рдХреНрд╖рдорддрд╛рдВрдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░рдгрд╛рд░ рдирд╛рд╣реА. рддреНрдпрд╛рдРрд╡рдЬреА, рдЖрдореНрд╣реА рдлрдХреНрдд рдХрдВрдЯреЗрдирд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдирд╛рдЪреНрдпрд╛ рдореВрд▓рднреВрдд рдЧреЛрд╖реНрдЯреА рд╢рд┐рдХреВ - рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рд╕реЗрдЯ рдХрд░рдгреЗ, рдиреЗрдЯрд╡рд░реНрдХрд┐рдВрдЧ рдХрд░рдгреЗ, рдХрдВрдЯреЗрдирд░ рдЪрд╛рд▓рд╡рдгреЗ, рд╕рдВрд╕рд╛рдзрди рдорд░реНрдпрд╛рджрд╛ рд▓рд╛рдЧреВ рдХрд░рдгреЗ рдЖрдгрд┐ рд╕реНрдиреЕрдкрд╢реЙрдЯ рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рдпрдЪреЗ рдЬреЗрдгреЗрдХрд░реБрди рддреБрдореНрд╣рд╛рд▓рд╛ LXD рдЪреА рдореВрд▓рднреВрдд рдорд╛рд╣рд┐рддреА рдорд┐рд│реЗрд▓ рдЖрдгрд┐ Linux рд╡рд░ рдХрдВрдЯреЗрдирд░ рд╡рд╛рдкрд░рддрд╛ рдпреЗрддреАрд▓.

рд╕рдВрдкреВрд░реНрдг рдорд╛рд╣рд┐рддреАрд╕рд╛рдареА, рдХреГрдкрдпрд╛ рдЕрдзрд┐рдХреГрдд рд╕реНрд░реЛрдд рдкрд╣рд╛:

рдиреЕрд╡реНрд╣рд┐рдЧреЗрд╢рди

рд╕реНрдерд╛рдкрдирд╛ LXD ^

рдЙрдмрдВрдЯреВ рд╡рд┐рддрд░рдгрд╛рдВрд╡рд░ LXD рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ ^

рдЙрдмрдВрдЯреВ 19.10 рд╡рд┐рддрд░рдг рдкреЕрдХреЗрдЬрдордзреНрдпреЗ lxd рд╡рд░ рдкреНрд░рд╕рд╛рд░рдг рдЖрд╣реЗ рд╕реНрдиреЕрдк рдкреЕрдХреЗрдЬ:

apt search lxd

lxd/eoan 1:0.7 all
  Transitional package - lxd -> snap (lxd)

рдпрд╛рдЪрд╛ рдЕрд░реНрде рджреЛрди рдкреЕрдХреЗрдЬреЗрд╕ рдПрдХрд╛рдЪ рд╡реЗрд│реА рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддреАрд▓, рдПрдХ рд╕рд┐рд╕реНрдЯрдо рдкреЕрдХреЗрдЬ рдореНрд╣рдгреВрди рдЖрдгрд┐ рджреБрд╕рд░реЗ рд╕реНрдиреЕрдк рдкреЕрдХреЗрдЬ рдореНрд╣рдгреВрди. рдкреНрд░рдгрд╛рд▓реАрд╡рд░ рджреЛрди рдкреЕрдХреЗрдЬреЗрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реНрдпрд╛рдиреЗ рдХрд╛рд╣реА рд╕рдорд╕реНрдпрд╛ рдирд┐рд░реНрдорд╛рдг рд╣реЛрдК рд╢рдХрддрд╛рдд рдЬреЗрдереЗ рд╕реНрдиреЕрдк рдкреЕрдХреЗрдЬ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХрд╛рдиреЗ рд╕реНрдиреЕрдк рдкреЕрдХреЗрдЬ рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реНрдпрд╛рд╕ рд╕рд┐рд╕реНрдЯрдо рдкреЕрдХреЗрдЬ рдЕрдирд╛рде рд╣реЛрдК рд╢рдХрддреЗ.

рдкреЕрдХреЗрдЬ рд╢реЛрдзрд╛ lxd рд╕реНрдиреЕрдк рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреНрдпреЗ рддреБрдореНрд╣реА рдЦрд╛рд▓реАрд▓ рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛:

snap find lxd

Name             Version        Summary
lxd              3.21           System container manager and API
lxd-demo-server  0+git.6d54658  Online software demo sessions using LXD
nova             ocata          OpenStack Compute Service (nova)
nova-hypervisor  ocata          OpenStack Compute Service - KVM Hypervisor (nova)
distrobuilder    1.0            Image builder for LXC and LXD
fabrica          0.1            Build snaps by simply pointing a web form to...
satellite        0.1.2          Advanced scalable Open source intelligence platform

рдЖрдЬреНрдЮрд╛ рдЪрд╛рд▓рд╡реВрди list рдЖрдкрдг рдкреЕрдХреЗрдЬ рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░реВ рд╢рдХрддрд╛ lxd рдЕрджреНрдпрд╛рдк рд╕реНрдерд╛рдкрд┐рдд рдирд╛рд╣реА:

snap list

Name  Version    Rev   Tracking  Publisher   Notes
core  16-2.43.3  8689  stable    canonicalтЬУ  core

LXD рд╣реЗ рд╕реНрдиреЕрдк рдкреЕрдХреЗрдЬ рдЕрд╕реВрдирд╣реА, рддреЗ рд╕рд┐рд╕реНрдЯрдо рдкреЕрдХреЗрдЬрджреНрд╡рд╛рд░реЗ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ lxd, рдЬреЗ рд╕рд┐рд╕реНрдЯрдордордзреНрдпреЗ рд╕рдВрдмрдВрдзрд┐рдд рдЧрдЯ рддрдпрд╛рд░ рдХрд░реЗрд▓, рдЖрд╡рд╢реНрдпрдХ рдЙрдкрдпреБрдХреНрддрддрд╛ /usr/bin рдЖрдгрд┐ рдпрд╛рдкреНрд░рдорд╛рдгреЗ.

sudo apt update
sudo apt install lxd

рдкреЕрдХреЗрдЬ рд╕реНрдиреЕрдк рдкреЕрдХреЗрдЬ рдореНрд╣рдгреВрди рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗ рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░реВрдпрд╛:

snap list

Name  Version    Rev    Tracking  Publisher   Notes
core  16-2.43.3  8689   stable    canonicalтЬУ  core
lxd   3.21       13474  stable/тАж  canonicalтЬУ  -

рдЖрд░реНрдХ рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдгрд╛рдВрд╡рд░ LXD рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ ^

рд╕рд┐рд╕реНрдЯрдорд╡рд░ LXD рдкреЕрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢ рдЪрд╛рд▓рд╡рд╛рд╡реЗ рд▓рд╛рдЧрддреАрд▓, рдкреНрд░рдердо рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреНрдпреЗ рдЙрдкрд▓рдмреНрдз рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд┐рд╕реНрдЯрдорд╡рд░реАрд▓ рдкреЕрдХреЗрдЬреЗрд╕рдЪреА рд╕реВрдЪреА рдЕрджреНрдпрддрдирд┐рдд рдХрд░реЗрд▓, рджреБрд╕рд░рд╛ рдереЗрдЯ рдкреЕрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрд▓:

sudo pacman -Syyu && sudo pacman -S lxd

рдкреЕрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, рдирд┐рдпрдорд┐рдд рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рджреНрд╡рд╛рд░реЗ LXD рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреЗ рд╕рд┐рд╕реНрдЯрдо рдЧрдЯрд╛рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЬрд╛рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ lxd:

sudo usermod -a -G lxd user1

рдЪрд▓рд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░реВрдпрд╛ user1 рдЧрдЯрд╛рдд рдЬреЛрдбрд▓реЗ lxd:

id -Gn user1

user1 adm dialout cdrom floppy sudo audio dip video plugdev netdev lxd

рдЬрд░ рдЧрдЯ lxd рд╕реВрдЪреАрдордзреНрдпреЗ рджреГрд╢реНрдпрдорд╛рди рдирд╛рд╣реА, рдирдВрддрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕рддреНрд░ рдкреБрдиреНрд╣рд╛ рд╕рдХреНрд░рд┐рдп рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рддреНрдпрд╛рдЪ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдВрддрд░реНрдЧрдд рд▓реЙрдЧ рдЖрдЙрдЯ рдЖрдгрд┐ рд▓реЙрдЧ рдЗрди рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдордзреНрдпреЗ рд╕рдХреНрд░рд┐рдп рдХрд░рд╛ systemd рд╕рд┐рд╕реНрдЯрдо рд╕реНрдЯрд╛рд░реНрдЯрдЕрдкрд╡рд░ LXD рд╕реЗрд╡рд╛ рд▓реЛрдб рдХрд░рдд рдЖрд╣реЗ:

sudo systemctl enable lxd

рдЪрд▓рд╛ рд╕реЗрд╡рд╛ рд╕реБрд░реВ рдХрд░реВрдпрд╛:

sudo systemctl start lxd

рд╕реЗрд╡реЗрдЪреА рд╕реНрдерд┐рддреА рддрдкрд╛рд╕рдд рдЖрд╣реЗ:

sudo systemctl status lxd

рд╕реНрдЯреЛрд░реЗрдЬ LXD (рд╕реНрдЯреЛрд░реЗрдЬ) ^

рдЗрдирд┐рд╢рд┐рдПрд▓рд╛рдпрдЭреЗрд╢рди рд╕реБрд░реВ рд╣реЛрдгреНрдпрд╛рдкреВрд░реНрд╡реА, LXD рдордзреАрд▓ рд╕реНрдЯреЛрд░реЗрдЬ рддрд╛рд░реНрдХрд┐рдХрд░рд┐рддреНрдпрд╛ рдХрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ рд╣реЗ рд╕рдордЬреВрди рдШреЗрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рд╕реНрдЯреЛрд░реЗрдЬ (рд╕реНрдЯреЛрд░реЗрдЬ) рдмрдирд▓реЗрд▓рд╛ рдПрдХ рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ рдкрд╛рд╕реВрди рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдЬреЗ ZFS, BTRFS, LVM рдХрд┐рдВрд╡рд╛ рд░реЗрдЧреНрдпреБрд▓рд░ рдбрд┐рд░реЗрдХреНрдЯрд░реА рд╕рд╛рд░рдЦреНрдпрд╛ рд╕рдорд░реНрдерд┐рдд рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реАрдВрдкреИрдХреА рдПрдХ рд╡рд╛рдкрд░рддреЗ. рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдЦрдВрдбрд╛рдВрдордзреНрдпреЗ рд╡рд┐рднрд╛рдЧрд▓реЗрд▓реЗ рдЖрд╣реЗ (рд╕реНрдЯреЛрд░реЗрдЬ рд╡реНрд╣реЙрд▓реНрдпреВрдо) рдЬреНрдпрд╛рдордзреНрдпреЗ рдЗрддрд░ рд╣реЗрддреВрдВрд╕рд╛рдареА рдкреНрд░рддрд┐рдорд╛, рдХрдВрдЯреЗрдирд░ рдХрд┐рдВрд╡рд╛ рдбреЗрдЯрд╛ рдЖрд╣реЗ.

  • рдкреНрд░рддрд┐рдорд╛ - рд╣реЗ рд╡рд┐рд╢реЗрд╖рдд: рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдирд▓рд╢рд┐рд╡рд╛рдп рдПрдХрддреНрд░рд┐рдд рдХреЗрд▓реЗрд▓реЗ рд╡рд┐рддрд░рдг рдЖрд╣реЗрдд рдЖрдгрд┐ рдмрд╛рд╣реНрдп рд╕реНрддреНрд░реЛрддрд╛рдВрдХрдбреВрди рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗрдд
  • рдХрдВрдЯреЗрдирд░ - рд╣реЗ рдкреНрд░рддрд┐рдорд╛рдВрдордзреВрди рдЙрдкрдпреЛрдЬрд┐рдд рд╡рд┐рддрд░рдг рдЖрд╣реЗрдд, рд╡рд╛рдкрд░рд╛рд╕рд╛рдареА рддрдпрд╛рд░ рдЖрд╣реЗрдд
  • рд╕реНрдиреЕрдкрд╢реЙрдЯреНрд╕ - рд╣реЗ рдХрдВрдЯреЗрдирд░рдЪреНрдпрд╛ рд╕реНрдерд┐рддреАрдЪреЗ рд╕реНрдиреЕрдкрд╢реЙрдЯ рдЖрд╣реЗрдд рдЬреНрдпрд╛рд╡рд░ рддреБрдореНрд╣реА рдкрд░рдд рдпреЗрдК рд╢рдХрддрд╛

LXD рдЪреА рдореВрд▓рднреВрдд рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ - рд▓рд┐рдирдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд╕рд┐рд╕реНрдЯрдо

LXD рдордзреНрдпреЗ рд╕реНрдЯреЛрд░реЗрдЬ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдХрдорд╛рдВрдб рд╡рд╛рдкрд░рд╛ lxc storage рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣реА рдХреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВрди рдорд┐рд│рд╡реВ рд╢рдХрддрд╛ - lxc storage --help

рдЦрд╛рд▓реАрд▓ рдХрдорд╛рдВрдб рд╕рд░реНрд╡рд╛рдВрдЪреА рдпрд╛рджреА рджрд╛рдЦрд╡рддреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ LXD рд╕реНрдЯреЛрд░реЗрдЬрдордзреНрдпреЗ:

lxc storage list

+---------+-------------+--------+--------------------------------+---------+
|  NAME   | DESCRIPTION | DRIVER |             SOURCE             | USED BY |
+---------+-------------+--------+--------------------------------+---------+
| hddpool |             | btrfs  | /dev/loop1                     | 2       |
+---------+-------------+--------+--------------------------------+---------+
| ssdpool |             | btrfs  | /var/lib/lxd/disks/ssdpool.img | 4       |
+---------+-------------+--------+--------------------------------+---------+

рд╕рд░реНрд╡рд╛рдВрдЪреА рдпрд╛рджреА рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрдЯреЛрд░реЗрдЬ рд╡реНрд╣реЙрд▓реНрдпреВрдо рдирд┐рд╡рдбрд▓реЗрд▓реНрдпрд╛ рдордзреНрдпреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рд╕рдВрдШрд╛рдЪреА рд╕реЗрд╡рд╛ рдХрд░рддреЛ lxc storage volume list:

lxc storage volume list hddpool

+-------+----------------------------------+-------------+---------+
| TYPE  |          NAME                    | DESCRIPTION | USED BY |
+-------+----------------------------------+-------------+---------+
| image | ebd565585223487526ddb3607f515... |             | 1       |
+-------+----------------------------------+-------------+---------+

lxc storage volume list ssdpool

+-----------+----------------------------------+-------------+---------+
|   TYPE    |            NAME                  | DESCRIPTION | USED BY |
+-----------+----------------------------------+-------------+---------+
| container | alp3                             |             | 1       |
+-----------+----------------------------------+-------------+---------+
| container | jupyter                          |             | 1       |
+-----------+----------------------------------+-------------+---------+
| image     | ebd565585223487526ddb3607f515... |             | 1       |
+-----------+----------------------------------+-------------+---------+

рддрд╕реЗрдЪ, рдЬрд░ рд╕рд╛рдареА рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛, BTRFS рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯреАрдо рдирд┐рд╡рдбрд▓реА рд╣реЛрддреА, рдирдВрддрд░ рд╕реВрдЪреА рдорд┐рд│рд╡рд╛ рд╕реНрдЯреЛрд░реЗрдЬ рд╡реНрд╣реЙрд▓реНрдпреВрдо рдХрд┐рдВрд╡рд╛ subvolums BTRFS рдЗрдВрдЯрд░рдкреНрд░рд┐рдЯреЗрд╢рдирдордзреНрдпреЗ, рддреБрдореНрд╣реА рдпрд╛ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдордЪреА рдЯреВрд▓рдХрд┐рдЯ рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛:

sudo btrfs subvolume list -p /var/lib/lxd/storage-pools/hddpool

ID 257 gen 818 parent 5 top level 5 path images/ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3

sudo btrfs subvolume list -p /var/lib/lxd/storage-pools/ssdpool

ID 257 gen 1820 parent 5 top level 5 path images/ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
ID 260 gen 1819 parent 5 top level 5 path containers/jupyter
ID 263 gen 1820 parent 5 top level 5 path containers/alp3

LXD рд╕реБрд░реВ рдХрд░рдд рдЖрд╣реЗ ^

рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЖрдзреА рдЖрдгрд┐ рд╡рд╛рдкрд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА, рддреБрдореНрд╣реА рдиреЗрдЯрд╡рд░реНрдХ рдЖрдгрд┐ рд╕реНрдЯреЛрд░реЗрдЬ рддрдпрд╛рд░ рдЖрдгрд┐ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгрд╛рд░реЗ рд╕рд╛рдорд╛рдиреНрдп LXD рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдпрдЭреЗрд╢рди рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдХрдорд╛рдВрдб рдХреЙрд▓ рдХрд░реВрди рд╕реВрдЪреАрдордзреНрдпреЗ рдЙрдкрд▓рдмреНрдз рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдорд╛рдирдХ рдХреНрд▓рд╛рдпрдВрдЯ рдХрдорд╛рдВрдбрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди рд╣реЗ рдореЕрдиреНрдпреБрдЕрд▓реА рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ lxc --help рдХрд┐рдВрд╡рд╛ рдЗрдирд┐рд╢рд┐рдПрд▓рд╛рдпрдЭреЗрд╢рди рд╡рд┐рдЭрд╛рд░реНрдб рд╡рд╛рдкрд░рдгреЗ lxd init рдХрд╛рд╣реА рдкреНрд░рд╢реНрдирд╛рдВрдЪреА рдЙрддреНрддрд░реЗ.

рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓рд╕рд╛рдареА рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдирд┐рд╡рдбрдд рдЖрд╣реЗ ^

рдЗрдирд┐рд╢рд┐рдПрд▓рд╛рдпрдЭреЗрд╢рди рджрд░рдореНрдпрд╛рди, рдПрд▓рдПрдХреНрд╕рдбреА рдбреАрдлреЙрд▓реНрдЯрд╕рд╛рдареА рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рдХрд╛рд░ рдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╣ рдЕрдиреЗрдХ рдкреНрд░рд╢реНрди рд╡рд┐рдЪрд╛рд░рддреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓. рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░, рддреНрдпрд╛рд╕рд╛рдареА BTRFS рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рдирд┐рд╡рдбрд▓реА рдЬрд╛рддреЗ. рдирд┐рд░реНрдорд┐рддреАрдирдВрддрд░ рджреБрд╕рд░реНрдпрд╛ FS рдордзреНрдпреЗ рдмрджрд▓рдгреЗ рдЕрд╢рдХреНрдп рд╣реЛрдИрд▓. FS рдирд┐рд╡рдбрдгреНрдпрд╛рд╕рд╛рдареА рд╣реЗ рд╕реБрдЪрд╡рд▓реЗ рдЖрд╣реЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рддреБрд▓рдирд╛ рд╕рд╛рд░рдгреА:

рд╡реИрд╢рд┐рд╖реНрдЯреНрдп
рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛
Btrfs
рдПрд▓рд╡реНрд╣реАрдПрдо
ZFS
CEPH

рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдХреЗрд▓реЗрд▓реЗ рдЗрдореЗрдЬ рд╕реНрдЯреЛрд░реЗрдЬ
рдирд╛рд╣реА
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп

рдЕрдиреБрдХреВрд▓ рдЙрджрд╛рд╣рд░рдг рдирд┐рд░реНрдорд┐рддреА
рдирд╛рд╣реА
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп

рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рд╕реНрдиреЕрдкрд╢реЙрдЯ рдирд┐рд░реНрдорд┐рддреА
рдирд╛рд╣реА
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп

рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдкреНрд░рддрд┐рдорд╛ рд╣рд╕реНрддрд╛рдВрддрд░рдг
рдирд╛рд╣реА
рд╣реЛрдп
рдирд╛рд╣реА
рд╣реЛрдп
рд╣реЛрдп

рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдХреЗрд▓реЗрд▓реЗ рдЙрджрд╛рд╣рд░рдг рд╣рд╕реНрддрд╛рдВрддрд░рдг
рдирд╛рд╣реА
рд╣реЛрдп
рдирд╛рд╣реА
рд╣реЛрдп
рд╣реЛрдп

рд▓рд┐рд╣рд┐рд▓реНрдпрд╛рд╡рд░ рдХреЙрдкреА рдХрд░рд╛
рдирд╛рд╣реА
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп

рдмреНрд▓реЙрдХ рдЖрдзрд╛рд░рд┐рдд
рдирд╛рд╣реА
рдирд╛рд╣реА
рд╣реЛрдп
рдирд╛рд╣реА
рд╣реЛрдп

рдЭрдЯрдкрдЯ рдХреНрд▓реЛрдирд┐рдВрдЧ
рдирд╛рд╣реА
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп

рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рдпреЛрдЧреНрдп рд╕реНрдЯреЛрд░реЗрдЬ рдбреНрд░рд╛рдпрд╡реНрд╣рд░
рд╣реЛрдп
рд╣реЛрдп
рдирд╛рд╣реА
рдирд╛рд╣реА
рдирд╛рд╣реА

рдЬреБрдиреНрдпрд╛ рд╕реНрдиреЕрдкрд╢реЙрдЯрдордзреВрди рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рд╛ (рдирд╡реАрдирддрдо рдирд╛рд╣реА)
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп
рдирд╛рд╣реА
рд╣реЛрдп

рд╕реНрдЯреЛрд░реЗрдЬ рдХреЛрдЯрд╛
рд╣реЛрдп(*)
рд╣реЛрдп
рд╣реЛрдп
рд╣реЛрдп
рдирд╛рд╣реА

рд╡рд┐рдЭрд╛рд░реНрдб рд╡рд╛рдкрд░реВрди рдиреЗрдЯрд╡рд░реНрдХ рдЖрдгрд┐ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рд╕реБрд░реВ рдХрд░рдд рдЖрд╣реЗ ^

рдЖрдореНрд╣реА рдкрд╛рд╣реВ рдкреБрдвреАрд▓ рдХрдорд╛рдВрдб рдЗрдирд┐рд╢рд┐рдПрд▓рд╛рдпрдЭреЗрд╢рди рд╡рд┐рдЭрд╛рд░реНрдб рд╡рд╛рдкрд░реВрди рд╕реЛрдкреНрдпрд╛ рдкреНрд░рд╢реНрдирд╛рдВрдЪреА рдЙрддреНрддрд░реЗ рджреЗрдКрди LXD рдЪреЗ рдореБрдЦреНрдп рдШрдЯрдХ рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реБрдЪрд╡рддреЗ.

рдХрдорд╛рдВрдб рдЪрд╛рд▓рд╡рд╛ lxc init рдЖрдгрд┐ рдЦрд╛рд▓реА рджрд┐рд▓реЗрд▓реНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдд рджрд╛рдЦрд╡рд▓реНрдпрд╛рдкреНрд░рдорд╛рдгреЗ рдХреЛрд▓рди рдирдВрддрд░рдЪреНрдпрд╛ рдкреНрд░рд╢реНрдирд╛рдВрдЪреА рдЙрддреНрддрд░реЗ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдХрд░рд╛ рдХрд┐рдВрд╡рд╛ рддреБрдордЪреНрдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдиреБрд╕рд╛рд░ рдмрджрд▓рд╛:

lxd init

Would you like to use LXD clustering? (yes/no) [default=no]: 
Do you want to configure a new storage pool? (yes/no) [default=yes]: 
Name of the new storage pool [default=default]: ssdpool         
Name of the storage backend to use (lvm, btrfs, dir) [default=btrfs]: 
Create a new BTRFS pool? (yes/no) [default=yes]: 
Would you like to use an existing block device? (yes/no) [default=no]: 
Size in GB of the new loop device (1GB minimum) [default=15GB]: 10GB
Would you like to connect to a MAAS server? (yes/no) [default=no]: 
Would you like to create a new local network bridge? (yes/no) [default=yes]: 
What should the new bridge be called? [default=lxdbr0]: 
What IPv4 address should be used? (CIDR subnet notation, тАЬautoтАЭ or тАЬnoneтАЭ) [default=auto]: 10.0.5.1/24
Would you like LXD to NAT IPv4 traffic on your bridge? [default=yes]: 
What IPv6 address should be used? (CIDR subnet notation, тАЬautoтАЭ or тАЬnoneтАЭ) [default=auto]: none
Would you like LXD to be available over the network? (yes/no) [default=no]: 
Would you like stale cached images to be updated automatically? (yes/no) [default=yes] no
Would you like a YAML "lxd init" preseed to be printed? (yes/no) [default=no]: 

рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рддрдпрд╛рд░ рдХрд░рдгреЗ ^

рдорд╛рдЧреАрд▓ рдЪрд░рдгрд╛рдд рдЖрдореНрд╣реА рддрдпрд╛рд░ рдХреЗрд▓реЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдЬреНрдпрд╛рд▓рд╛ рдирд╛рд╡ рджреЗрдгреНрдпрд╛рдд рдЖрд▓реЗ ssdpool рдЖрдгрд┐ рдЬреНрдпрд╛рдЪреА рдлрд╛рдИрд▓ рдорд╛рдЭреНрдпрд╛ рд╕рд┐рд╕реНрдЯрдорд╡рд░ рдпреЗрдереЗ рдЖрд╣реЗ /var/lib/lxd/disks/ssdpool.img. рд╣рд╛ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрддреНрддрд╛ рдорд╛рдЭреНрдпрд╛ PC рдордзреАрд▓ рднреМрддрд┐рдХ SSD рдбреНрд░рд╛рдЗрд╡реНрд╣рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗ.

рджреНрд╡рд╛рд░реЗ рдЦреЗрд│рд▓реЗрд▓реНрдпрд╛ рднреВрдорд┐рдХреЗрдЪреА рд╕рдордЬ рд╡рд╛рдврд╡рдгреНрдпрд╛рд╕рд╛рдареА рдкреБрдвреАрд▓ рдХреНрд░рд┐рдпрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреНрдпреЗ, рдЖрдореНрд╣реА рджреБрд╕рд░рд╛ рддрдпрд╛рд░ рдХрд░реВ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдЬреЗ рднреМрддрд┐рдХрд░рд┐рддреНрдпрд╛ рд╡реЗрдЧрд│реНрдпрд╛ рдкреНрд░рдХрд╛рд░рдЪреНрдпрд╛ рдбрд┐рд╕реНрдХ, HDD рд╡рд░ рд╕реНрдерд┐рдд рдЕрд╕реЗрд▓. рд╕рдорд╕реНрдпрд╛ рдЕрд╢реА рдЖрд╣реЗ рдХреА LXD рддреБрдореНрд╣рд╛рд▓рд╛ рддрдпрд╛рд░ рдХрд░реВ рджреЗрдд рдирд╛рд╣реА рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдкрддреНрддреНрдпрд╛рдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░ /var/lib/lxd/disks/ рдЖрдгрд┐ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рджреБрд╡реЗ рджреЗрдЦреАрд▓ рдХрд╛рд░реНрдп рдХрд░рдгрд╛рд░ рдирд╛рд╣реАрдд, рд╡рд┐рдХрд╕рдХрд╛рдЪрд╛ рдкреНрд░рддрд┐рд╕рд╛рдж рдкрд╣рд╛. рдЗрдирд┐рд╢рд┐рдПрд▓рд╛рдпрдЭреЗрд╢рди/рдлреЙрд░реНрдореЗрдЯрд┐рдВрдЧ рджрд░рдореНрдпрд╛рди рдЖрдореНрд╣реА рд╣реА рдорд░реНрдпрд╛рджрд╛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░реВ рд╢рдХрддреЛ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓рдЪреНрдпрд╛ рдорд╛рд░реНрдЧрд╛рдРрд╡рдЬреА рдмреНрд▓реЙрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдореНрд╣рдгреВрди рдореВрд▓реНрдп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВрди рд╣реЗ рдХреА рдордзреНрдпреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВрди source.

рддрд░, рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рддреБрдореНрд╣рд╛рд▓рд╛ рддреБрдордЪреНрдпрд╛ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдорд╡рд░ рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓ рдХрд┐рдВрд╡рд╛ рд╡рд┐рджреНрдпрдорд╛рди рд╡рд┐рднрд╛рдЬрди рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдЬреЗ рддреЗ рд╡рд╛рдкрд░реЗрд▓. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рдПрдХ рдлрд╛рдИрд▓ рддрдпрд╛рд░ рдХрд░реВ рдЖрдгрд┐ рд╡рд╛рдкрд░реВ рдЬреНрдпрд╛рдЪрд╛ рдЖрдХрд╛рд░ рдЖрдореНрд╣реА 10GB рдкрд░реНрдпрдВрдд рдорд░реНрдпрд╛рджрд┐рдд рдХрд░реВ:

dd if=/dev/zero of=/mnt/work/lxd/hddpool.img bs=1MB count=10000

10000+0 records in
10000+0 records out
10000000000 bytes (10 GB, 9,3 GiB) copied, 38,4414 s, 260 MB/s

рдЪрд▓рд╛ рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓рд▓рд╛ рдлреНрд░реА рд▓реВрдкрдмреЕрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рд╢реА рдХрдиреЗрдХреНрдЯ рдХрд░реВрдпрд╛:

sudo losetup --find --show /mnt/work/lxd/hddpool.img

/dev/loop1

рдХрд┐рд▓реНрд▓реА рдзрдиреНрдпрд╡рд╛рдж --show рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░ рд╕реНрдХреНрд░реАрдирд╡рд░ рдЖрдкрд▓реА рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓ рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдЪреЗ рдирд╛рд╡ рдкрд░рдд рдпреЗрддреЗ. рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕, рдЖрдордЪреНрдпрд╛ рдХреНрд░рд┐рдпрд╛ рдпреЛрдЧреНрдп рдЖрд╣реЗрдд рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдореНрд╣реА рдпрд╛ рдкреНрд░рдХрд╛рд░рдЪреНрдпрд╛ рд╕рд░реНрд╡ рд╡реНрдпрд╕реНрдд рдЙрдкрдХрд░рдгрд╛рдВрдЪреА рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реВ рд╢рдХрддреЛ:

losetup -l

NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE                      DIO LOG-SEC
/dev/loop1         0      0         0  0 /mnt/work/lxd/hddpool.img        0     512
/dev/loop0         0      0         1  0 /var/lib/lxd/disks/ssdpool.img   0     512

рд╕реВрдЪреАрдордзреВрди рдЖрдкрдг рд╢реЛрдзреВ рд╢рдХрддрд╛ рдХреА рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдордзреНрдпреЗ рдЖрд╣реЗ /dev/loop1 рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ /mnt/work/lxd/hddpool.img, рдЖрдгрд┐ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдордзреНрдпреЗ /dev/loop0 рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ /var/lib/lxd/disks/ssdpool.img рдЬреЗ рдбреАрдлреЙрд▓реНрдЯрд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓.

рдЦрд╛рд▓реАрд▓ рдХрдорд╛рдВрдб рдирд╡реАрди рддрдпрд╛рд░ рдХрд░рддреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдЖрдореНрд╣реА рдиреБрдХрддреЗрдЪ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓рд╡рд░ рдЖрдзрд╛рд░рд┐рдд LXD рдордзреНрдпреЗ. LXD рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓ рдлреЙрд░рдореЕрдЯ рдХрд░реЗрд▓ /mnt/work/lxd/hddpool.img рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдордзреНрдпреЗ /dev/loop1 BTRFS рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдорд╕рд╛рдареА:

lxc storage create hddpool btrfs size=10GB source=/dev/loop1

рдЪрд▓рд╛ рд╕рд░реНрд╡рд╛рдВрдЪреА рдпрд╛рджреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реВрдпрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рд╕реНрдХреНрд░реАрди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА:

lxc storage list

+---------+-------------+--------+--------------------------------+---------+
|  NAME   | DESCRIPTION | DRIVER |             SOURCE             | USED BY |
+---------+-------------+--------+--------------------------------+---------+
| hddpool |             | btrfs  | /dev/loop1                     | 0       |
+---------+-------------+--------+--------------------------------+---------+
| ssdpool |             | btrfs  | /var/lib/lxd/disks/ssdpool.img | 0       |
+---------+-------------+--------+--------------------------------+---------+

рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдЖрдХрд╛рд░ рд╡рд╛рдврд╡рдгреЗ ^

рдирд┐рд░реНрдорд┐рддреА рдирдВрддрд░ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕, рддреЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ. рдЪреНрдпрд╛ рд╕рд╛рдареА рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ BTRFS рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдорд╡рд░ рдЖрдзрд╛рд░рд┐рдд, рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢ рдЪрд╛рд▓рд╡рд╛:

sudo truncate -s +5G /mnt/work/lxd/hddpool.img
sudo losetup -c /dev/loop1
sudo btrfs filesystem resize max /var/lib/lxd/storage-pools/hddpool

рд▓реВрдкрдмреЕрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рд╕реНрд▓реЙрдЯрдордзреНрдпреЗ рд▓реВрдкрдмреЕрдХ рдлрд╛рдЗрд▓рдЪреА рд╕реНрд╡рдпрдВ рдЕрдВрддрд░реНрднреВрдд рдХрд░рдгреЗ ^

рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдо рд░реАрдмреВрдЯ рдХрд░рддрд╛рдирд╛ рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рдЫреЛрдЯреА рд╕рдорд╕реНрдпрд╛ рдЖрд╣реЗ, рдлрд╛рдЗрд▓ /mnt/work/lxd/hddpool.img рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░ "рдЙрдбрдгреЗ" рд╣реЛрдИрд▓ /dev/loop1 рдЖрдгрд┐ LXD рд╕реЗрд╡рд╛ рд▓реЛрдб рдХрд░рддрд╛рдирд╛ рдХреНрд░реЕрд╢ рд╣реЛрдИрд▓ рдХрд╛рд░рдг рддреА рдпрд╛ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдордзреНрдпреЗ рджрд┐рд╕рдгрд╛рд░ рдирд╛рд╣реА. рдпрд╛ рд╕рдорд╕реНрдпреЗрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдПрдХ рд╕рд┐рд╕реНрдЯрдо рд╕реЗрд╡рд╛ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ рдЬреА рд╣реА рдлрд╛рдЗрд▓ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдордзреНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░реЗрд▓ /dev/loop1 рдЬреЗрд╡реНрд╣рд╛ рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдо рдмреВрдЯ рд╣реЛрддреЗ.

рдЪрд▓рд╛ рддрдпрд╛рд░ рдХрд░реВрдпрд╛ рдпреБрдирд┐рдЯ рджрд╕реНрддрд╛рд╡реЗрдЬрд╛рдЪрд╛ рдкреНрд░рдХрд╛рд░ рд╕реЗрд╡рд╛ ╨▓ /etc/systemd/system/ SystemD рдЖрд░рдВрднреАрдХрд░рдг рдкреНрд░рдгрд╛рд▓реАрд╕рд╛рдареА:

cat << EOF | sudo tee -a /etc/systemd/system/lxd-hddpool.service
[Unit]
Description=Losetup LXD Storage Pool (hddpool)
After=local-fs.target

[Service]
Type=oneshot
ExecStart=/sbin/losetup /dev/loop1 /mnt/work/lxd/hddpool.img
RemainAfterExit=true

[Install]
WantedBy=local-fs.target
EOF

рд╕реЗрд╡рд╛ рд╕рдХреНрд░рд┐рдп рдХрд░рд╛:

sudo systemctl enable lxd-hddpool

Created symlink /etc/systemd/system/local-fs.target.wants/lxd-hddpool.service тЖТ /etc/systemd/system/lxd-hddpool.service.

рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдо рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, рдЖрдореНрд╣реА рд╕реЗрд╡реЗрдЪреА рд╕реНрдерд┐рддреА рддрдкрд╛рд╕рддреЛ:

systemctl status lxd-hddpool.service 

тЧП lxd-hddpool.service - Losetup LXD Storage Pool (hddpool)
     Loaded: loaded (/etc/systemd/system/lxd-hddpool.service; enabled; vendor preset: disabled)
     Active: active (exited) since Wed 2020-04-08 03:43:53 MSK; 1min 37s ago
    Process: 711 ExecStart=/sbin/losetup /dev/loop1 /mnt/work/lxd/hddpool.img (code=exited, status=0/SUCCESS)
   Main PID: 711 (code=exited, status=0/SUCCESS)

╨░╨┐╤А 08 03:43:52 manjaro systemd[1]: Starting Losetup LXD Storage Pool (hddpool)...
╨░╨┐╤А 08 03:43:53 manjaro systemd[1]: Finished Losetup LXD Storage Pool (hddpool).

рдЖрдЙрдЯрдкреБрдЯрд╡рд░реВрди рдЖрдкрдг рд╕рд░реНрд╡реНрд╣рд┐рд╕ рд╕реНрдЯреЗрдЯ рдЕрд╕рд▓реНрдпрд╛рдЪреЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрддреЛ рд╕рдХреНрд░рд┐рдп, рдПрдХрд╛ рдЖрджреЗрд╢рд╛рд╡рд░реВрди рдЖрдордЪреНрдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдкреВрд░реНрдг рдЭрд╛рд▓реА рдЕрд╕реВрдирд╣реА, рдкрд░реНрдпрд╛рдпрд╛рдиреЗ рдЖрдореНрд╣рд╛рд▓рд╛ рд╣реЗ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджрд┐рд▓реА RemainAfterExit=true.

рд╕реБрд░рдХреНрд╖рд┐рддрддрд╛. рдХрдВрдЯреЗрдирд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ ^

рд╕рд░реНрд╡ рдХрдВрдЯреЗрдирд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рдпрдЬрдорд╛рди рдкреНрд░рдгрд╛рд▓реАрд╡рд░ рдХрд░реНрдирд▓ рд╡рд╛рдкрд░реВрди рд╡реЗрдЧрд│реНрдпрд╛ рдкрджреНрдзрддреАрдиреЗ рдЪрд╛рд▓рдд рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдордордзреНрдпреЗ рдХрдВрдЯреЗрдирд░ рдкреНрд░рдХреНрд░рд┐рдпреЗрдЪреНрдпрд╛ рдкреНрд░рд╡реЗрд╢рд╛рдЪреЗ рд╕рдВрд░рдХреНрд╖рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, LXD рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддреЗ, рдЬреЗрдереЗ:

  • рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрдВрдЯреЗрдирд░ - рд╣реЗ рдХрдВрдЯреЗрдирд░ рдЖрд╣реЗрдд рдЬреНрдпрд╛рдд UID рдЖрдгрд┐ GID рд╕рд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдордЪреНрдпрд╛ рдорд╛рд▓рдХрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗрдд. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, 0 рдЪреНрдпрд╛ UID рд╕рд╣ рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рдЪрд╛рд▓рдгрд╛рд▒реНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрд▓рд╛ 0 рдЪреНрдпрд╛ UID рд╕рд╣ рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдорд╡рд░реАрд▓ рдкреНрд░рдХреНрд░рд┐рдпреЗрд╕рд╛рд░рдЦреЗрдЪ рд╕рд░реНрд╡ рдкреНрд░рд╡реЗрд╢ рдЕрдзрд┐рдХрд╛рд░ рдЖрд╣реЗрдд. рджреБрд╕рд▒реНрдпрд╛ рд╢рдмреНрджрд╛рдВрдд, рдХрдВрдЯреЗрдирд░рдордзреАрд▓ рд░реВрдЯ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рд▓рд╛ рдХреЗрд╡рд│ рд╕рд░реНрд╡ рдЕрдзрд┐рдХрд╛рд░ рдирд╛рд╣реАрдд. рдХрдВрдЯреЗрдирд░, рдкрд░рдВрддреБ рдпрдЬрдорд╛рди рдкреНрд░рдгрд╛рд▓реАрд╡рд░ рджреЗрдЦреАрд▓ рдЬрд░ рддреЛ рдХрдВрдЯреЗрдирд░рдЪреНрдпрд╛ рд╡реЗрдЧрд│реНрдпрд╛ рдиреЗрдорд╕реНрдкреЗрд╕рдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░ рдЬрд╛рдК рд╢рдХрддреЛ.

  • рдЕрдирдкреНрд░рд┐рд╡реНрд╣рд┐рд▓реЗрдЬреНрдб рдХрдВрдЯреЗрдирд░реНрд╕ - рд╣реЗ рдЕрд╕реЗ рдХрдВрдЯреЗрдирд░ рдЖрд╣реЗрдд рдЬреНрдпрд╛рдордзреНрдпреЗ 0 рддреЗ 65535 рдХреНрд░рдорд╛рдВрдХрд╛рд╕рд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ UID рдЖрдгрд┐ GID рдЪреНрдпрд╛ рдорд╛рд▓рдХрд╛рдЪреНрдпрд╛ рдЖрд╣реЗрдд, рдкрд░рдВрддреБ рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдорд╕рд╛рдареА рдорд╛рд▓рдХрд╛рд╕ рдЕрдиреБрдХреНрд░рдореЗ рдЬреЛрдбрд▓реЗрд▓реЗ SubUID рдЖрдгрд┐ SubGID рдмрд┐рдЯреНрд╕ рд╡рд╛рдкрд░реВрди рдореБрдЦрд╡рдЯрд╛ рдШрд╛рддрд▓реЗрд▓рд╛ рдЖрд╣реЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ UID=0 рдЕрд╕рд▓реЗрд▓рд╛ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдпрдЬрдорд╛рди рдкреНрд░рдгрд╛рд▓реАрд╡рд░ рджрд┐рд╕рддреЛ SubUID + UID. рд╣реЗ рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдордЪреЗ рд╕рдВрд░рдХреНрд╖рдг рдХрд░рддреЗ рдХрд╛рд░рдг рдХрдВрдЯреЗрдирд░рдордзреАрд▓ рдХреЛрдгрддреАрд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рддреНрдпрд╛рдЪреНрдпрд╛ рд╡реЗрдЧрд│реНрдпрд╛ рдиреЗрдорд╕реНрдкреЗрд╕рдордзреВрди рдмрд╛рд╣реЗрд░ рдкрдбрдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЕрд╕рд▓реНрдпрд╛рд╕, рддреА рдХреЗрд╡рд│ рдЕрдЬреНрдЮрд╛рдд, рдЦреВрдк рдЙрдЪреНрдЪ UID/GID рдЕрд╕рд▓реЗрд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореНрд╣рдгреВрди рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдорд╢реА рд╕рдВрд╡рд╛рдж рд╕рд╛рдзреВ рд╢рдХрддреЗ.

рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░, рдирд╡реНрдпрд╛рдиреЗ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХрдВрдЯреЗрдирд░реНрд╕рдирд╛ рдЕрдирдкреНрд░рд┐рд╡реНрд╣рд┐рд▓реЗрдЬреНрдб рд╕реНрдЯреЗрдЯрд╕ рдЖрд╣реЗ рдЖрдгрд┐ рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рд╕рдмрдпреВрдЖрдпрдбреА рдЖрдгрд┐ рд╕рдмрдЬреАрдЖрдпрдбреА рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдЪрд▓рд╛ рджреЛрди рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдИрд▓реНрд╕ рдмрдирд╡реВ рдЬреНрдпрд╛рдордзреНрдпреЗ рдЖрдкрдг рдЕрдиреБрдХреНрд░рдореЗ SubUID рдЖрдгрд┐ SubGID рд╕рд╛рдареА рдореБрдЦрд╡рдЯрд╛ рд╕реЗрдЯ рдХрд░реВ:

sudo touch /etc{/subuid,/subgid}
sudo usermod --add-subuids 1000000-1065535 root 
sudo usermod --add-subgids 1000000-1065535 root

рдмрджрд▓ рд▓рд╛рдЧреВ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, LXD рд╕реЗрд╡рд╛ рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ:

sudo systemctl restart lxd

рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрд╡рд┐рдЪ рддрдпрд╛рд░ рдХрд░рдгреЗ ^

рдЖрдореНрд╣реА рдкреВрд░реНрд╡реА рдЗрдирд┐рд╢рд┐рдПрд▓рд╛рдпрдЭреЗрд╢рди рд╡рд┐рдЭрд╛рд░реНрдб рд╡рд╛рдкрд░реВрди рдиреЗрдЯрд╡рд░реНрдХ рд╕реБрд░реВ рдХреЗрд▓реНрдпрд╛рдореБрд│реЗ lxd init рдЖрдгрд┐ рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рддрдпрд╛рд░ рдХреЗрд▓реЗ lxdbr0, рдирдВрддрд░ рдпрд╛ рд╡рд┐рднрд╛рдЧрд╛рдд рдЖрдкрдг LXD рдордзреАрд▓ рдиреЗрдЯрд╡рд░реНрдХрд┐рдВрдЧ рдЖрдгрд┐ рдХреНрд▓рд╛рдпрдВрдЯ рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВрди рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рд╕реНрд╡рд┐рдЪ (рдмреНрд░рд┐рдЬ) рдХрд╕реЗ рддрдпрд╛рд░ рдХрд░рд╛рд╡реЗ рдпрд╛рдмрджреНрджрд▓ рдлрдХреНрдд рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдК.

рд╕реНрд╡рд┐рдЪ (рдмреНрд░рд┐рдЬ) рд╣реЛрд╕реНрдЯ рдЖрдгрд┐ рдХрдВрдЯреЗрдирд░рд▓рд╛ рдиреЗрдЯрд╡рд░реНрдХрдордзреНрдпреЗ рдХрд╕реЗ рдЬреЛрдбрддреЗ рд╣реЗ рдЦрд╛рд▓реАрд▓ рдЪрд┐рддреНрд░ рджрд╛рдЦрд╡рддреЗ:

LXD рдЪреА рдореВрд▓рднреВрдд рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ - рд▓рд┐рдирдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд╕рд┐рд╕реНрдЯрдо

рдХрдВрдЯреЗрдирд░ рдЗрддрд░ рдХрдВрдЯреЗрдирд░ рдХрд┐рдВрд╡рд╛ рдЬреНрдпрд╛ рд╣реЛрд╕реНрдЯрд╡рд░ рд╣реЗ рдХрдВрдЯреЗрдирд░ рд╕рд░реНрд╡реНрд╣ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд рддреНрдпрд╛рдВрдЪреНрдпрд╛рд╢реА рдиреЗрдЯрд╡рд░реНрдХрджреНрд╡рд╛рд░реЗ рд╕рдВрд╡рд╛рдж рд╕рд╛рдзреВ рд╢рдХрддрд╛рдд. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдХрдВрдЯреЗрдирд░рдЪреНрдпрд╛ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛рд░реНрдбрд╛рдВрдирд╛ рдЖрднрд╛рд╕реА рд╕реНрд╡рд┐рдЪрд╕рд╣ рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ. рдЖрдореНрд╣реА рдкреНрд░рдердо рдПрдХ рд╕реНрд╡рд┐рдЪ рддрдпрд╛рд░ рдХрд░реВ, рдЖрдгрд┐ рдХрдВрдЯреЗрдирд░рдЪреЗ рдиреЗрдЯрд╡рд░реНрдХ рдЗрдВрдЯрд░рдлреЗрд╕ рдХрдВрдЯреЗрдирд░ рд╕реНрд╡рддрдГ рддрдпрд╛рд░ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░, рддреНрдпрд╛рдирдВрддрд░рдЪреНрдпрд╛ рдЕрдзреНрдпрд╛рдпрд╛рдВрдордзреНрдпреЗ рд▓рд┐рдВрдХ рдХреЗрд▓реЗ рдЬрд╛рддреАрд▓.

рдЦрд╛рд▓реАрд▓ рдХрдорд╛рдВрдб рд╕рдмрдиреЗрдЯрд╕рд╣ рд╕реНрд╡рд┐рдЪ рддрдпрд╛рд░ рдХрд░рддреЗ 10.0.5.0/24 рдЖрдгрд┐ IPv4 рдкрддреНрддрд╛ 10.0.5.1/24, рдЖрдгрд┐ рджреЗрдЦреАрд▓ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ ipv4.nat рдЬреЗрдгреЗрдХрд░реВрди рдХрдВрдЯреЗрдирд░ NAT рд╕реЗрд╡рд╛ рд╡рд╛рдкрд░реВрди рд╣реЛрд╕реНрдЯрджреНрд╡рд╛рд░реЗ рдЗрдВрдЯрд░рдиреЗрдЯрд╡рд░ рдкреНрд░рд╡реЗрд╢ рдХрд░реВ рд╢рдХрддреАрд▓:

lxc network create lxdbr0 ipv4.address=10.0.5.1/24 ipv4.nat=true ipv6.address=none

LXD рдордзреНрдпреЗ рдЙрдкрд▓рдмреНрдз рдиреЗрдЯрд╡рд░реНрдХ рдЙрдкрдХрд░рдгрд╛рдВрдЪреА рд╕реВрдЪреА рддрдкрд╛рд╕рдд рдЖрд╣реЗ:

lxc network list

+--------+----------+---------+-------------+---------+
|  NAME  |   TYPE   | MANAGED | DESCRIPTION | USED BY |
+--------+----------+---------+-------------+---------+
| eno1   | physical | NO      |             | 0       |
+--------+----------+---------+-------------+---------+
| lxdbr0 | bridge   | YES     |             | 0       |
+--------+----------+---------+-------------+---------+

рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдгрд╛рдЪреЗ рдорд╛рдирдХ рд╕рд╛рдзрди рд╡рд╛рдкрд░реВрди рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ рд╣реЗ рджреЗрдЦреАрд▓ рддреБрдореНрд╣реА рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрддрд╛ - ip link рдХрд┐рдВрд╡рд╛ ip addr:

ip addr

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether bc:ee:7b:5a:6b:44 brd ff:ff:ff:ff:ff:ff
    altname enp0s25
    inet6 fe80::9571:11f3:6e0c:c07b/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: lxdbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether c2:38:90:df:cb:59 brd ff:ff:ff:ff:ff:ff
    inet 10.0.5.1/24 scope global lxdbr0
       valid_lft forever preferred_lft forever
    inet6 fe80::c038:90ff:fedf:cb59/64 scope link 
       valid_lft forever preferred_lft forever
5: veth3ddab174@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master lxdbr0 state UP group default qlen 1000
    link/ether ca:c3:5c:1d:22:26 brd ff:ff:ff:ff:ff:ff link-netnsid 0

рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓ ^

LXD рдордзреАрд▓ рдкреНрд░рддреНрдпреЗрдХ рдХрдВрдЯреЗрдирд░рдЪреЗ рд╕реНрд╡рддрдГрдЪреЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдЕрд╕рддреЗ рдЖрдгрд┐ рддреЗ рдЬрд╛рдЧрддрд┐рдХ рд╕реНрддрд░рд╛рд╡рд░ рдШреЛрд╖рд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╣ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░реВ рд╢рдХрддреЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓. рдХрдВрдЯреЗрдирд░рд╡рд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓ рд▓рд╛рдЧреВ рдХрд░рддрд╛рдирд╛ рдХреЕрд╕реНрдХреЗрдб рдореЙрдбреЗрд▓ рдЕрд╕рддреЗ, рдЦрд╛рд▓реАрд▓ рдЙрджрд╛рд╣рд░рдг рд╣реЗ рджрд░реНрд╢рд╡рддреЗ:

LXD рдЪреА рдореВрд▓рднреВрдд рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ - рд▓рд┐рдирдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд╕рд┐рд╕реНрдЯрдо

рдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдд, LXD рдкреНрд░рдгрд╛рд▓реАрдордзреНрдпреЗ рддреАрди рдкреНрд░реЛрдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд: default, hddpool ╨╕ hostfs. рд╕рд░реНрд╡ рддреАрди рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╕реНрдерд╛рдирд┐рдХ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди (рд░рд╛рдЦрд╛рдбреА рдХреНрд╖реЗрддреНрд░) рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдХрдВрдЯреЗрдирд░рд╡рд░ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд. рдкреНрд░реЛрдлрд╛рдЗрд▓ default рдПрдХ рдЙрдкрдХрд░рдг рдЖрд╣реЗ root рдЬреНрдпрд╛рдд рдкреЕрд░рд╛рдореАрдЯрд░ рдЖрд╣реЗ pool рдЪреНрдпрд╛ рдмрд░реЛрдмрд░ рдЖрд╣реЗ ssdpool, рдкрд░рдВрддреБ рдХреЕрд╕реНрдХреЗрдб рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдНрдкреНрд▓рд┐рдХреЗрд╢рди рдореЙрдбреЗрд▓рдмрджреНрджрд▓ рдзрдиреНрдпрд╡рд╛рдж, рдЖрдореНрд╣реА рдХрдВрдЯреЗрдирд░рд╡рд░ рдкреНрд░реЛрдлрд╛рдЗрд▓ рд▓рд╛рдЧреВ рдХрд░реВ рд╢рдХрддреЛ hddpool рдЬреНрдпрд╛рдд рдкреЕрд░рд╛рдореАрдЯрд░ рдЖрд╣реЗ pool рдкреНрд░реЛрдлрд╛рдЗрд▓рд╡рд░реВрди рд╕рдорд╛рди рдкреЕрд░рд╛рдореАрдЯрд░ рдУрд╡реНрд╣рд░рд░рд╛рдЗрдб рдХрд░реЗрд▓ default рдЖрдгрд┐ рдХрдВрдЯреЗрдирд░рд▓рд╛ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░рд╛рдкреНрдд рд╣реЛрдИрд▓ root рдкреЕрд░рд╛рдореАрдЯрд░рд╕рд╣ pool рд╕рдорд╛рди hddpool, рдЖрдгрд┐ рдкреНрд░реЛрдлрд╛рдЗрд▓ hostfs рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рдлрдХреНрдд рдПрдХ рдирд╡реАрди рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдЬреЛрдбрддреЗ.

рдЙрдкрд▓рдмреНрдз рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓рдЪреА рд╕реВрдЪреА рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА, рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢ рд╡рд╛рдкрд░рд╛:

lxc profile list

+---------+---------+
|  NAME   | USED BY |
+---------+---------+
| default | 1       |
+---------+---------+
| hddroot | 0       |
+---------+---------+
| ssdroot | 1       |
+---------+---------+

рдкреНрд░реЛрдлрд╛рдЗрд▓рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЙрдкрд▓рдмреНрдз рдХрдорд╛рдВрдбрдЪреА рд╕рдВрдкреВрд░реНрдг рдпрд╛рджреА рдХреА рдЬреЛрдбреВрди рдорд┐рд│рд╡рддрд╛ рдпреЗрддреЗ --help:

lxc profile --help

Description:
  Manage profiles

Usage:
  lxc profile [command]

Available Commands:
  add         Add profiles to instances
  assign      Assign sets of profiles to instances
  copy        Copy profiles
  create      Create profiles
  delete      Delete profiles
  device      Manage instance devices
  edit        Edit profile configurations as YAML
  get         Get values for profile configuration keys
  list        List profiles
  remove      Remove profiles from instances
  rename      Rename profiles
  set         Set profile configuration keys
  show        Show profile configurations
  unset       Unset profile configuration keys

рддреБрдордЪреЗ рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдд рдЖрд╣реЗ ^

рдбреАрдлреЙрд▓реНрдЯ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓ default рдХрдВрдЯреЗрдирд░рд╕рд╛рдареА рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛рд░реНрдб рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдирд╛рд╣реА рдЖрдгрд┐ рдирд╡реАрди рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рд╣реА, рддреНрдпрд╛рдВрдЪреНрдпрд╛рд╕рд╛рдареА рд╡реЗрдЧрд│реНрдпрд╛ рдХрдорд╛рдВрдбрд╕рд╣ рд╕реНрдерд╛рдирд┐рдХ (рд╕рдорд░реНрдкрд┐рдд) рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕реЗрд╕ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЖрдореНрд╣реА рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреНрдпреЗ рдЬрд╛рдЧрддрд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рддрдпрд╛рд░ рдХрд░реВ рд╢рдХрддреЛ. рд╣реЗ рдкреНрд░реЛрдлрд╛рдИрд▓ рд╡рд╛рдкрд░реВрди рд╕рд░реНрд╡ рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рд╕рд╛рдорд╛рдпрд┐рдХ рдХреЗрд▓реЗ рдЬрд╛рдгрд╛рд░реЗ рдкреНрд░реЛрдлрд╛рдЗрд▓. рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ, рдирд╡реАрди рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЖрджреЗрд╢рд╛рдирдВрддрд░ рд▓рдЧреЗрдЪ, рддреНрдпрд╛рдВрдЪреНрдпрд╛рдХрдбреЗ рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рд╡реЗрд╢рд╛рд╕рд╣ рдиреЗрдЯрд╡рд░реНрдХ рдЕрд╕реЗрд▓. рддреНрдпрд╛рдЪ рд╡реЗрд│реА, рдХреЛрдгрддреЗрд╣реА рдирд┐рд░реНрдмрдВрдз рдирд╛рд╣реАрдд; рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕ рдЖрдореНрд╣реА рдирдВрддрд░ рдиреЗрд╣рдореА рд╕реНрдерд╛рдирд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рддрдпрд╛рд░ рдХрд░реВ рд╢рдХрддреЛ.

рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рд▓рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓рдордзреНрдпреЗ рдЬреЛрдбреЗрд▓ eth0 рдкреНрд░рдХрд╛рд░ nic рдиреЗрдЯрд╡рд░реНрдХрд╢реА рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗрд▓реЗ lxdbr0:

lxc profile device add default eth0 nic network=lxdbr0 name=eth0

рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрдгреЗ рдорд╣рддреНрддреНрд╡рд╛рдЪреЗ рдЖрд╣реЗ рдХреА рдЖрдореНрд╣реА рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓рдордзреНрдпреЗ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдЬреЛрдбрд▓реЗ рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рдЖрдореНрд╣реА рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдордзреНрдпреЗ рд╕реНрдерд┐рд░ IP рдкрддреНрддрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реНрдпрд╛рд╕, рд╣реЗ рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╡рд╛рдкрд░рдгрд╛рд░реЗ рд╕рд░реНрд╡ рдХрдВрдЯреЗрдирд░ рд╕рдорд╛рди IP рдкрддреНрддрд╛ рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рддреАрд▓. рдХрдВрдЯреЗрдирд░рд╕рд╛рдареА рд╡рд╛рдЯрдк рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реНрдерд┐рд░ IP рдкрддреНрддреНрдпрд╛рд╕рд╣ рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрд╕рд▓реНрдпрд╛рд╕, рдЖрдкрдг IP рдкрддреНрддрд╛ рдкреЕрд░рд╛рдореАрдЯрд░рд╕рд╣ рдХрдВрдЯреЗрдирд░ рд╕реНрддрд░рд╛рд╡рд░ (рд╕реНрдерд╛рдирд┐рдХ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди) рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рддрдпрд╛рд░ рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ, рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╕реНрддрд░рд╛рд╡рд░ рдирд╛рд╣реА.

рдЪрд▓рд╛ рдкреНрд░реЛрдлрд╛рдЗрд▓ рддрдкрд╛рд╕реВрдпрд╛:

lxc profile show default

config: {}
description: Default LXD profile
devices:
  eth0:
    name: eth0
    network: lxdbr0
    type: nic
  root:
    path: /
    pool: ssdpool
    type: disk
name: default
used_by: []

рдпрд╛ рдкреНрд░реЛрдлрд╛рдЗрд▓рдордзреНрдпреЗ рдЖрдкрдг рдкрд╛рд╣реВ рд╢рдХрддреЛ рдХреА рдирд╡реАрди рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдХрдВрдЯреЗрдирд░рд╕рд╛рдареА рджреЛрди рдЙрдкрдХрд░рдгреЗ рддрдпрд╛рд░ рдХреЗрд▓реА рдЬрд╛рддреАрд▓:

  • eth0 - рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдкреНрд░рдХрд╛рд░ nic рд╕реНрд╡рд┐рдЪрд╢реА рдЬреЛрдбрд▓реЗрд▓реЗ (рдиреЗрдЯрд╡рд░реНрдХ рдмреНрд░рд┐рдЬ) lxdbr0
  • root - рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдкреНрд░рдХрд╛рд░ disk рдЬреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рд╡рд╛рдкрд░рддреЗ ssdpool

рдирд╡реАрди рдкреНрд░реЛрдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХрд░рдгреЗ ^

рдкреВрд░реНрд╡реА рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓рд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдХрдВрдЯреЗрдирд░, рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХрд░рд╛ ssdroot рдЬреНрдпрд╛рдордзреНрдпреЗ рдЖрдкрдг рд╕рд╛рд░рдЦреЗ рдЙрдкрдХрд░рдг рдЬреЛрдбреВ disk рдорд╛рдЙрдВрдЯ рдкреЙрдЗрдВрдЯрд╕рд╣ / (рд░реВрдЯ) рдкреВрд░реНрд╡реА рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓рд╛ рд╡рд╛рдкрд░реВрди рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ - ssdpool:

lxc profile create ssdroot
lxc profile device add ssdroot root disk path=/ pool=ssdpool

рддреНрдпрд╛рдЪрдкреНрд░рдорд╛рдгреЗ, рдЖрдореНрд╣реА рдПрдХ рдЙрдкрдХрд░рдг рддрдпрд╛рд░ рдХрд░рддреЛ disk, рдкрд░рдВрддреБ рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд рд╡рд╛рдкрд░рдгреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ - hddpool:

lxc profile create hddroot
lxc profile device add hddroot root disk path=/ pool=hddpool

рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓ рддрдкрд╛рд╕рдд рдЖрд╣реЗ:

lxc profile show ssdroot

config: {}
description: ""
devices:
  root:
    path: /
    pool: ssdpool
    type: disk
name: ssdroot
used_by: []

lxc profile show hddroot

config: {}
description: ""
devices:
  root:
    path: /
    pool: hddpool
    type: disk
name: hddroot
used_by: []

рдкреНрд░рддрд┐рдорд╛ рднрд╛рдВрдбрд╛рд░ ^

рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдирд▓ рдирд╕рд▓реЗрд▓реНрдпрд╛ рдкреНрд░рддрд┐рдорд╛рдВрдкрд╛рд╕реВрди рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд. рдореНрд╣рдгреВрди, рдХрдВрдЯреЗрдирд░ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдкреВрд░реНрд╡реА, рддреЗ рдпрд╛ рдкреНрд░рддрд┐рдореЗрд╡рд░реВрди рддреИрдирд╛рдд рдХреЗрд▓реЗ рдЬрд╛рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдкреНрд░рддрд┐рдорд╛рдВрдЪрд╛ рд╕реНрддреНрд░реЛрдд рдПрдХ рд╕реНрдерд╛рдирд┐рдХ рднрд╛рдВрдбрд╛рд░ рдЖрд╣реЗ рдЬреНрдпрд╛рдордзреНрдпреЗ рдмрд╛рд╣реНрдп рднрд╛рдВрдбрд╛рд░рд╛рдВрдордзреВрди рдкреНрд░рддрд┐рдорд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд.

рджреВрд░рд╕реНрде рдкреНрд░рддрд┐рдорд╛ рднрд╛рдВрдбрд╛рд░ ^

рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░, LXD рддреАрди рд░рд┐рдореЛрдЯ рд╕реНрддреНрд░реЛрддрд╛рдВрдХрдбреВрди рдкреНрд░рддрд┐рдорд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреЗрд▓реЗ рдЖрд╣реЗ:

  • рдЙрдмрдВрдЯреВ: (рд╕реНрдерд┐рд░ рдЙрдмрдВрдЯреВ рдкреНрд░рддрд┐рдорд╛рдВрд╕рд╛рдареА)
  • ubuntu-рджреИрдирд┐рдХ: (рджреИрдирд┐рдХ рдЙрдмрдВрдЯреВ рдкреНрд░рддрд┐рдорд╛рдВрд╕рд╛рдареА)
  • рдкреНрд░рддрд┐рдорд╛: (рдЗрддрд░ рдбрд┐рд╕реНрдЯреНрд░реЛрдЪреНрдпрд╛ рд╕рдореВрд╣рд╛рд╕рд╛рдареА)

lxc remote list

+-----------------+------------------------------------------+--------+--------+
|      NAME       |                   URL                    | PUBLIC | STATIC |
+-----------------+------------------------------------------+--------+--------+
| images          | https://images.linuxcontainers.org       | YES    | NO     |
+-----------------+------------------------------------------+--------+--------+
| local (default) | unix://                                  | NO     | YES    |
+-----------------+------------------------------------------+--------+--------+
| ubuntu          | https://cloud-images.ubuntu.com/releases | YES    | YES    |
+-----------------+------------------------------------------+--------+--------+
| ubuntu-daily    | https://cloud-images.ubuntu.com/daily    | YES    | YES    |
+-----------------+------------------------------------------+--------+--------+

рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рднрд╛рдВрдбрд╛рд░ ubuntu: рдЦрд╛рд▓реАрд▓ рдкреНрд░рддрд┐рдорд╛ рдЖрд╣реЗрдд:

lxc image -c dasut list ubuntu: | head -n 11

+----------------------------------------------+--------------+----------+------------+
|                   DESCRIPTION                | ARCHITECTURE |   SIZE   |   TYPE     |
+----------------------------------------------+--------------+----------+------------+
| ubuntu 12.04 LTS amd64 (release) (20150728)  | x86_64       | 153.72MB | CONTAINER  |
+----------------------------------------------+--------------+----------+------------+
| ubuntu 12.04 LTS amd64 (release) (20150819)  | x86_64       | 152.91MB | CONTAINER  |
+----------------------------------------------+--------------+----------+------------+
| ubuntu 12.04 LTS amd64 (release) (20150906)  | x86_64       | 154.69MB | CONTAINER  |
+----------------------------------------------+--------------+----------+------------+
| ubuntu 12.04 LTS amd64 (release) (20150930)  | x86_64       | 153.86MB | CONTAINER  |
+----------------------------------------------+--------------+----------+------------+

рдорд░реНрдпрд╛рджрд┐рдд рд╕рдВрдЦреНрдпреЗрдд рд╕реНрддрдВрдн рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдореНрд╣реА рдкрд░реНрдпрд╛рдп рд╡рд╛рдкрд░рд▓рд╛ -c рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рд╕рд╣ dasut, рдЖрдгрд┐ рдХрдорд╛рдВрдбрд╕рд╣ рд╕реВрдЪреАрдЪреА рд▓рд╛рдВрдмреА рджреЗрдЦреАрд▓ рдорд░реНрдпрд╛рджрд┐рдд рдХреЗрд▓реА head.

рдкреНрд░рддрд┐рдорд╛рдВрдЪреА рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдлрд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ. рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢ рд╕рд░реНрд╡ рдЙрдкрд▓рдмреНрдз рд╡рд┐рддрд░рдг рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░реНрд╕рдЪреА рдпрд╛рджреА рдХрд░реЗрд▓ рдЕрд▓реНрдкрд╛рдЗрди рд▓рд┐рдирдХреНрд╕:

lxc image -c ldast list images:alpine/3.11

+------------------------------+--------------------------------------+--------------+
|            ALIAS             |             DESCRIPTION              | ARCHITECTURE |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11 (3 more)         | Alpine 3.11 amd64 (20200220_13:00)   | x86_64       |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/arm64 (1 more)   | Alpine 3.11 arm64 (20200220_13:00)   | aarch64      |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/armhf (1 more)   | Alpine 3.11 armhf (20200220_13:00)   | armv7l       |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/i386 (1 more)    | Alpine 3.11 i386 (20200220_13:01)    | i686         |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/ppc64el (1 more) | Alpine 3.11 ppc64el (20200220_13:00) | ppc64le      |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/s390x (1 more)   | Alpine 3.11 s390x (20200220_13:00)   | s390x        |
+------------------------------+--------------------------------------+--------------+

рд╕реНрдерд╛рдирд┐рдХ рдкреНрд░рддрд┐рдорд╛ рднрд╛рдВрдбрд╛рд░ ^

рдХрдВрдЯреЗрдирд░ рд╡рд╛рдкрд░рдгреЗ рд╕реБрд░реВ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреНрд▓реЛрдмрд▓ рд░рд┐рдкреЙрдЭрд┐рдЯрд░реАрдордзреВрди рд╕реНрдерд╛рдирд┐рдХ рдЗрдореЗрдЬрдордзреНрдпреЗ рдЬреЛрдбрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ local:. рдЖрддрд╛ рд╕реНрдерд╛рдирд┐рдХ рднрд╛рдВрдбрд╛рд░ рд░рд┐рдХрд╛рдореЗ рдЖрд╣реЗ, рдХрдорд╛рдВрдб рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░реЗрд▓ lxc image list. рдЬрд░ рдкрджреНрдзрдд list рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВ рдирдХрд╛, рдирдВрддрд░ рд╕реНрдерд╛рдирд┐рдХ рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рд╡рд╛рдкрд░рд▓реА рдЬрд╛рдИрд▓ - local:

lxc image list local:

+-------+-------------+--------+-------------+--------------+------+------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCHITECTURE | TYPE | SIZE |
+-------+-------------+--------+-------------+--------------+------+------+

рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреАрд▓ рдкреНрд░рддрд┐рдорд╛ рдЦрд╛рд▓реАрд▓ рдкрджреНрдзрддреА рд╡рд╛рдкрд░реВрди рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд:

рд╕рдВрдШ
рд╡рд░реНрдгрди

lxc рдкреНрд░рддрд┐рдорд╛ рдКрд░реНрдл
рдкреНрд░рддрд┐рдорд╛ рдЙрдкрдирд╛рдо рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рдХреЙрдкреА рдХрд░рд╛
рд╕рд░реНрд╡реНрд╣рд░ рджрд░рдореНрдпрд╛рди рдкреНрд░рддрд┐рдорд╛ рдХреЙрдкреА рдХрд░рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рд╣рдЯрд╡рд╛
рдкреНрд░рддрд┐рдорд╛ рд╣рдЯрд╡рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рд╕реБрдзрд╛рд░рдгреЗ
рдкреНрд░рддрд┐рдорд╛ рдЧреБрдгрдзрд░реНрдо рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рдирд┐рд░реНрдпрд╛рдд
рдкреНрд░рддрд┐рдорд╛ рдирд┐рд░реНрдпрд╛рдд рдЖрдгрд┐ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рдЖрдпрд╛рдд рдХрд░рд╛
рдкреНрд░рддрд┐рдорд╛ рд╕реНрдЯреЛрдЕрд░рдордзреНрдпреЗ рдкреНрд░рддрд┐рдорд╛ рдЖрдпрд╛рдд рдХрд░рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рдорд╛рд╣рд┐рддреА
рдкреНрд░рддрд┐рдорд╛рдВрдмрджреНрджрд▓ рдЙрдкрдпреБрдХреНрдд рдорд╛рд╣рд┐рддреА рджрд░реНрд╢рд╡рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рдпрд╛рджреА
рдЪрд┐рддреНрд░рд╛рдВрдЪреА рдпрд╛рджреА рдХрд░рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рд░реАрдлреНрд░реЗрд╢ рдХрд░рд╛
рдкреНрд░рддрд┐рдорд╛ рд░рд┐рдлреНрд░реЗрд╢ рдХрд░рд╛

lxc рдкреНрд░рддрд┐рдорд╛ рд╢реЛ
рдкреНрд░рддрд┐рдорд╛ рдЧреБрдгрдзрд░реНрдо рджрд░реНрд╢рд╡рд╛

рдЬрд╛рдЧрддрд┐рдХ рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреВрди рдкреНрд░рддрд┐рдорд╛ рд╕реНрдерд╛рдирд┐рдХ рднрд╛рдВрдбрд╛рд░рд╛рдд рдХреЙрдкреА рдХрд░рд╛ images::

lxc image copy images:alpine/3.11/amd64 local: --alias=alpine3

Image copied successfully!

рд╕реНрдерд╛рдирд┐рдХ рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреНрдпреЗ рд╕рдзреНрдпрд╛ рдЙрдкрд▓рдмреНрдз рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдкреНрд░рддрд┐рдорд╛рдВрдЪреА рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реВрдпрд╛ local::

lxc image -c lfdatsu list local:

+---------+--------------+------------------------------------+--------------+
|  ALIAS  | FINGERPRINT  |            DESCRIPTION             | ARCHITECTURE |
+---------+--------------+------------------------------------+--------------+
| alpine3 | 73a3093d4a5c | Alpine 3.11 amd64 (20200220_13:00) | x86_64       |
+---------+--------------+------------------------------------+--------------+

LXD рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди ^

рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рджреА рдореЛрдб рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, LXD рдиреЙрди-рдЗрдВрдЯрд░реЕрдХреНрдЯрд┐рд╡реНрд╣ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдЗрдиреНрд╕реНрдЯреЙрд▓реЗрд╢рди рдореЛрдбрд▓рд╛ рджреЗрдЦреАрд▓ рд╕рдорд░реНрдерди рджреЗрддреЗ, рдЬреЗрд╡реНрд╣рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди YAML рдлрд╛рдЗрд▓рдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕реНрд╡рд░реВрдк рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрд╛рдЪ рд╡реЗрд│реА рд╕рдВрдкреВрд░реНрдг рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ, рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд▓рд╛ рдорд╛рдЧреЗ рдЯрд╛рдХреВрди. рдиреЗрдЯрд╡рд░реНрдХ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди, рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЗрддреНрдпрд╛рджрд┐рдВрд╕рд╣ рдпрд╛ рд▓реЗрдЦрд╛рдд рд╡рд░ рдЪрд░реНрдЪрд╛ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЕрдиреЗрдХ рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рджреА рдХрдорд╛рдВрдбреНрд╕рдкреИрдХреА. рдЖрдореНрд╣реА рд╣реЗ рдХреНрд╖реЗрддреНрд░ рдпреЗрдереЗ рдХрд╡реНрд╣рд░ рдХрд░рдгрд╛рд░ рдирд╛рд╣реА, рддреБрдореНрд╣реА рддреЗ рд╕реНрд╡рддрдГ рддрдкрд╛рд╕реВ рд╢рдХрддрд╛. рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдг рдордзреНрдпреЗ.

рдкреБрдвреАрд▓ рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рджреА рдЖрджреЗрд╢ lxc config рдЬреЗ рдЖрдкрдг рдкрд╛рд╣рдгрд╛рд░ рдЖрд╣реЛрдд рддреЗ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╕реНрдерд╛рдирд┐рдХ рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреНрдпреЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреЗрд▓реЗрд▓реНрдпрд╛ рдкреНрд░рддрд┐рдорд╛ рдЧреНрд▓реЛрдмрд▓ рд░рд┐рдкреЙрдЭрд┐рдЯрд░реАрдЬрдордзреВрди рдЖрдкреЛрдЖрдк рдЕрдкрдбреЗрдЯ рдХреЗрд▓реНрдпрд╛ рдЬрд╛рдд рдирд╛рд╣реАрдд рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢рд╛рд╕рд╣ рд╣реЗ рд╡рд░реНрддрди рд╕рдХреНрд╖рдо рдХрд░реВ рд╢рдХрддреЛ:

lxc config set images.auto_update_cached=false

рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрдгрд┐ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ ^

рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрдорд╛рдВрдб рд╡рд╛рдкрд░рд╛ lxc init рдЬреНрдпрд╛рдордзреНрдпреЗ рдореВрд▓реНрдпреЗ рдкрд╛рд╕ рдХреЗрд▓реА рдЬрд╛рддрд╛рдд ╤А╨╡╨┐╨╛╨╖╨╕╤В╨╛╤А╨╕╨╣:╨╛╨▒╤А╨░╨╖ рдЖрдгрд┐ рдирдВрддрд░ рдХрдВрдЯреЗрдирд░рд╕рд╛рдареА рдЗрдЪреНрдЫрд┐рдд рдЖрдпрдбреА. рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рд╕реНрдерд╛рдирд┐рдХ рдореНрд╣рдгреВрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реА рдЬрд╛рдК рд╢рдХрддреЗ local: рддрд╕реЗрдЪ рдХреЛрдгрддреЗрд╣реА рдЬрд╛рдЧрддрд┐рдХ рдЖрд╣реЗ. рдЬрд░ рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╕реЗрд▓, рддрд░ рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рд╕реНрдерд╛рдирд┐рдХ рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рдкреНрд░рддрд┐рдорд╛ рд╢реЛрдзрдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рд▓реА рдЬрд╛рддреЗ. рдЬрд░ рдЗрдореЗрдЬ рдЧреНрд▓реЛрдмрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реАрдордзреВрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реА рдЕрд╕реЗрд▓, рддрд░ рдкреНрд░рддрд┐рдорд╛ рдкреНрд░рдердо рд╕реНрдерд╛рдирд┐рдХ рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреНрдпреЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреЗрд▓реА рдЬрд╛рдИрд▓ рдЖрдгрд┐ рдирдВрддрд░ рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рд▓реА рдЬрд╛рдИрд▓.

рдЖрдкрд▓рд╛ рдкрд╣рд┐рд▓рд╛ рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЦрд╛рд▓реАрд▓ рдХрдорд╛рдВрдб рдЪрд╛рд▓рд╡реВ:

lxc init alpine3 alp --storage=hddpool --profile=default --profile=hddroot

рдЖрдкрдг рдпреЗрдереЗ рдХреНрд░рдорд╛рдиреЗ рд╡рд╛рдкрд░рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдХрдорд╛рдВрдб рдХреА рдкрд╛рд╣реВ рдпрд╛:

  • alpine3 тАФ рд╕реНрдерд╛рдирд┐рдХ рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреНрдпреЗ рдкреВрд░реНрд╡реА рдЕрдкрд▓реЛрдб рдХреЗрд▓реЗрд▓реНрдпрд╛ рдкреНрд░рддрд┐рдореЗрд╕рд╛рдареА рдЙрдкрдирд╛рдо (рдЙрд░реНрдл) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рд╛. рдпрд╛ рдкреНрд░рддрд┐рдореЗрд╕рд╛рдареА рдЙрдкрдирд╛рд╡ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдирд╕рд▓реНрдпрд╛рд╕, рдЖрдкрдг рдиреЗрд╣рдореА рдкреНрд░рддрд┐рдореЗрдЪрд╛ рд╕рдВрджрд░реНрдн рдШреЗрдК рд╢рдХрддрд╛ рдлрд┐рдВрдЧрд░рдкреНрд░рд┐рдВрдЯ рдЬреЗ рдЯреЗрдмрд▓рдордзреНрдпреЗ рджрд╛рдЦрд╡рд▓реЗ рдЖрд╣реЗ.
  • alp тАФ рдХрдВрдЯреЗрдирд░рд╕рд╛рдареА рдЕрднрд┐рдЬреНрдЮрд╛рдкрдХ рд╕реЗрдЯ рдХрд░рддреЗ
  • --storage тАФ рд╣реА рдХреА рдХреЛрдгрддреНрдпрд╛ рдордзреНрдпреЗ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдПрдХ рдХрдВрдЯреЗрдирд░ рддрдпрд╛рд░ рдХреЗрд▓рд╛ рдЬрд╛рдИрд▓
  • --profile тАФ рдпрд╛ рдХреА рдХреЕрд╕реНрдХреЗрдб рдкреВрд░реНрд╡реА рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓рдордзреВрди рдХрдВрдЯреЗрдирд░рд╡рд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд▓рд╛рдЧреВ рдХрд░рддрд╛рдд

рдЖрдореНрд╣реА рдХрдВрдЯреЗрдирд░ рд▓реЙрдиреНрдЪ рдХрд░рддреЛ, рдЬреЛ рд╡рд┐рддрд░рдгрд╛рдЪреА рдЗрдирд┐рдЯ рд╕рд┐рд╕реНрдЯрдо рд▓рд╛рдБрдЪ рдХрд░рдгреНрдпрд╛рд╕ рдкреНрд░рд╛рд░рдВрдн рдХрд░рддреЛ:

lxc start alp

рддреБрдореНрд╣реА рдХрдорд╛рдВрдб рджреЗрдЦреАрд▓ рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛ lxc launch рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рдВрдШ рдПрдХрддреНрд░ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ lxc init ╨╕ lxc start рдПрдХрд╛ рдСрдкрд░реЗрд╢рдирдордзреНрдпреЗ.

рдХрдВрдЯреЗрдирд░рдЪреА рд╕реНрдерд┐рддреА рддрдкрд╛рд╕рдд рдЖрд╣реЗ:

lxc list -c ns46tb
+------+---------+------------------+------+-----------+--------------+
| NAME |  STATE  |       IPV4       | IPV6 |   TYPE    | STORAGE POOL |
+------+---------+------------------+------+-----------+--------------+
| alp  | RUNNING | 10.0.5.46 (eth0) |      | CONTAINER | hddpool      |
+------+---------+------------------+------+-----------+--------------+

рдХрдВрдЯреЗрдирд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рддрдкрд╛рд╕рдд рдЖрд╣реЗ:

lxc config show alp

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200326_13:39)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200326_13:39"
  image.type: squashfs
  volatile.base_image: ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
  volatile.eth0.host_name: vethb1fe71d8
  volatile.eth0.hwaddr: 00:16:3e:5f:73:3e
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.idmap: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.power: RUNNING
devices:
  root:
    path: /
    pool: hddpool
    type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""

рд╡рд┐рднрд╛рдЧрд╛рдд profiles рдЖрдореНрд╣реА рдЦрд╛рддреНрд░реА рдХрд░реВ рд╢рдХрддреЛ рдХреА рд╣рд╛ рдХрдВрдЯреЗрдирд░ рджреЛрди рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╡рд╛рдкрд░рддреЛ - default ╨╕ hddroot. рд╡рд┐рднрд╛рдЧрд╛рдд devices рдЖрдореНрд╣реА рдлрдХреНрдд рдПрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рд╢реЛрдзреВ рд╢рдХрддреЛ рдХрд╛рд░рдг рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╕реНрддрд░рд╛рд╡рд░ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рд╣реЛрддреЗ default. рдХрдВрдЯреЗрдирд░рджреНрд╡рд╛рд░реЗ рд╡рд╛рдкрд░рд▓реЗрд▓реА рд╕рд░реНрд╡ рдЙрдкрдХрд░рдгреЗ рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХ рдХреА рдЬреЛрдбрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ --expanded:

lxc config show alp --expanded

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200326_13:39)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200326_13:39"
  image.type: squashfs
  volatile.base_image: ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
  volatile.eth0.host_name: vethb1fe71d8
  volatile.eth0.hwaddr: 00:16:3e:5f:73:3e
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.idmap: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.power: RUNNING
devices:
  eth0:
    name: eth0
    network: lxdbr0
    type: nic
  root:
    path: /
    pool: hddpool
    type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""

рд╕реНрдерд┐рд░ IP рдкрддреНрддрд╛ рд╕реЗрдЯ рдХрд░рдд рдЖрд╣реЗ ^

рдЖрдореНрд╣реА рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рд╕рд╛рдареА IP рдкрддреНрддрд╛ рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХреЗрд▓реНрдпрд╛рд╕ eth0 рд╕рдВрдШ lxc config device set alp рдХрдВрдЯреЗрдирд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╛рдареА рдЕрднрд┐рдкреНрд░реЗрдд рдЖрд╣реЗ, рдирдВрддрд░ рдЖрдореНрд╣рд╛рд▓рд╛ рдПрдХ рддреНрд░реБрдЯреА рдкреНрд░рд╛рдкреНрдд рд╣реЛрдИрд▓ рдЬреА рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдЕрд╕реНрддрд┐рддреНрд╡рд╛рдд рдирд╕рд▓реНрдпрд╛рдЪрд╛ рдЕрд╣рд╡рд╛рд▓ рджреЗрдИрд▓ рдХрд╛рд░рдг рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ eth0 рдЬреЗ рдХрдВрдЯреЗрдирд░рджреНрд╡рд╛рд░реЗ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ рддреЗ рдкреНрд░реЛрдлрд╛рдЗрд▓рдЪреЗ рдЖрд╣реЗ default:

lxc config device set alp eth0 ipv4.address 10.0.5.5

Error: The device doesn't exist

рдЖрдореНрд╣реА рдЕрд░реНрдерд╛рддрдЪ рдПрдХ рд╕реНрдерд┐рд░ IP рдкрддреНрддрд╛ рд╕реЗрдЯ рдХрд░реВ рд╢рдХрддреЛ eth0 рдкреНрд░реЛрдлрд╛рдЗрд▓рдордзреАрд▓ рдбрд┐рд╡реНтАНрд╣рд╛рдЗрд╕реЗрд╕, рдкрд░рдВрддреБ рд╣реЗ рдкреНрд░реЛрдлрд╛рдИрд▓ рд╡рд╛рдкрд░рдгрд╛рд░реНтАНрдпрд╛ рд╕рд░реНрд╡ рдХрдВрдЯреЗрдирд░рд╕рд╛рдареА рддреЗ рд╕рдорд╛рди рдЕрд╕реЗрд▓. рдореНрд╣рдгреВрди, рдХрдВрдЯреЗрдирд░рд▓рд╛ рд╕рдорд░реНрдкрд┐рдд рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдЬреЛрдбреВрдпрд╛:

lxc config device add alp eth0 nic name=eth0 nictype=bridged parent=lxdbr0 ipv4.address=10.0.5.5

рдордЧ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдХрдВрдЯреЗрдирд░ рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ:

lxc restart alp

рдЖрддрд╛ рдХрдВрдЯреЗрдирд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкрд╛рд╣рд┐рд▓реНрдпрд╛рд╕, рдЖрдореНрд╣рд╛рд▓рд╛ рдкрд░реНрдпрд╛рдп рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА --expanded рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА eth0, рдЖрдореНрд╣реА рддреЗ рдХрдВрдЯреЗрдирд░ рд╕реНрддрд░рд╛рд╡рд░ рддрдпрд╛рд░ рдХреЗрд▓реНрдпрд╛рдореБрд│реЗ рдЖрдгрд┐ рдкреНрд░реЛрдлрд╛рдЗрд▓рд╡рд░реВрди рддреНрдпрд╛рдЪ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рд╡рд░ рдХреЕрд╕реНрдХреЗрдб рдХреЗрд▓реЗ default:

lxc config show alp

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200326_13:39)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200326_13:39"
  image.type: squashfs
  volatile.base_image: ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
  volatile.eth0.host_name: veth2a1dc59d
  volatile.eth0.hwaddr: 00:16:3e:0e:e2:71
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.idmap: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.power: RUNNING
devices:
  eth0:
    ipv4.address: 10.0.5.5
    name: eth0
    nictype: bridged
    parent: lxdbr0
    type: nic
  root:
    path: /
    pool: hddpool
    type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""

рдХрдВрдЯреЗрдирд░ рдХрд╛рдврдд рдЖрд╣реЗ ^

рдХрдВрдЯреЗрдирд░ рдХрд╛рдврдгреНрдпрд╛рд╕рд╛рдареА, рдХрдорд╛рдВрдб рд╡рд╛рдкрд░рд╛ lxc delete, рдкрд░рдВрддреБ рдХрдВрдЯреЗрдирд░ рдХрд╛рдвреВрди рдЯрд╛рдХрдгреНрдпрд╛рдкреВрд░реНрд╡реА, рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВрди рддреЗ рдерд╛рдВрдмрд╡рд┐рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ lxc stop:

lxc stop alp

lxc list

+------+---------+-------------------+------+-----------+-----------+
| NAME |  STATE  |       IPV4        | IPV6 |   TYPE    | SNAPSHOTS |
+------+---------+-------------------+------+-----------+-----------+
| alp  | STOPPED | 10.0.5.10 (eth0)  |      | CONTAINER | 0         |
+------+---------+-------------------+------+-----------+-----------+

рдЖрдореНрд╣реА рдкрдбрддрд╛рд│рдгреА рдХреЗрд▓реНрдпрд╛рдирдВрддрд░ рдХрдВрдЯреЗрдирд░рдЪреА рдЕрд╡рд╕реНрдерд╛ рдЭрд╛рд▓реА рдЖрд╣реЗ рдерд╛рдВрдмрд▓реЗ, рддреЗ рдХрд╛рдврд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓:

lxc delete alp

рдХрдВрдЯреЗрдирд░ рдкреНрд░рд╡реЗрд╢ ^

рдереЗрдЯ рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдиреЗрдЯрд╡рд░реНрдХ рдХрдиреЗрдХреНрд╢рдиреНрд╕ рдмрд╛рдпрдкрд╛рд╕ рдХрд░реВрди, рдХрдорд╛рдВрдб рд╡рд╛рдкрд░рд╛ lxc exec рдЬреЗ рд╕рд┐рд╕реНрдЯрдо рд╢реЗрд▓ рд▓рд╛рдБрдЪ рди рдХрд░рддрд╛ рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддреЗ. рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд╢реЗрд▓ рдкреЕрдЯрд░реНрди рдЬрд╕реЗ рдХреА рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕, рдлрд╛рдЗрд▓ рд░реАрдбрд╛рдпрд░реЗрдХреНрд╢рди (рдкрд╛рдИрдк) рдЗрддреНрдпрд╛рджреА рд╡рд╛рдкрд░реВрди рд╢реЗрд▓рдордзреНрдпреЗ рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рд╛рдпрдЪреА рдЕрд╕реЗрд▓, рддрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рд╢реЗрд▓ рд▓рд╛рдБрдЪ рдХрд░рдгреЗ рдЖрдгрд┐ рдХреА рдореНрд╣рдгреВрди рдХрдорд╛рдВрдб рдкрд╛рд╕ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде:

lxc exec alp -- /bin/sh -c "echo $HOME"

рдХрдорд╛рдВрдбрдиреЗ рд╡рд┐рд╢реЗрд╖ рдПрд╕реНрдХреЗрдк рдХреЕрд░реЗрдХреНрдЯрд░ рд╡рд╛рдкрд░рд▓реЗ рд╡рд┐рд╢реЗрд╖ рдкрд╛рддреНрд░рд╛рд╕рд╛рдареА $ рдЬреЗрдгреЗрдХрд░реВрди рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ $HOME рд╣реЛрд╕реНрдЯ рдорд╢реАрдирд╡рд░ рддреНрдпрд╛рдЪрд╛ рдЕрд░реНрде рд▓рд╛рд╡рд▓рд╛ рдЧреЗрд▓рд╛ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдлрдХреНрдд рдХрдВрдЯреЗрдирд░рдЪреНрдпрд╛ рдЖрдд рдЕрд░реНрде рд▓рд╛рд╡рд▓рд╛ рдЧреЗрд▓рд╛.

рд╕рдВрд╡рд╛рджрд╛рддреНрдордХ рд╢реЗрд▓ рдореЛрдб рд╕реБрд░реВ рдХрд░рдгреЗ рдЖрдгрд┐ рдирдВрддрд░ рд╣реЙрдЯрдХреА рдЪрд╛рд▓рд╡реВрди рд╕рддреНрд░ рд╕рдорд╛рдкреНрдд рдХрд░рдгреЗ рджреЗрдЦреАрд▓ рд╢рдХреНрдп рдЖрд╣реЗ CTRL+D:

lxc exec alp -- /bin/sh

рдХрдВрдЯреЗрдирд░ рд╕рдВрд╕рд╛рдзрди рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди ^

LXD рдордзреНрдпреЗ, рддреБрдореНрд╣реА рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдЪрд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдЪ рд╡рд╛рдкрд░реВрди рдХрдВрдЯреЗрдирд░ рд╕рдВрд╕рд╛рдзрдиреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрддрд╛. рдХрдВрдЯреЗрдирд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рдЪреА рд╕рдВрдкреВрд░реНрдг рдпрд╛рджреА рдЖрдврд│реВ рд╢рдХрддреЗ рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдг рдордзреНрдпреЗ.

RAM рд╕рдВрд╕рд╛рдзрди рдорд░реНрдпрд╛рджрд╛ ^

рдкреЕрд░рд╛рдореАрдЯрд░ limits.memory рдХрдВрдЯреЗрдирд░рд╕рд╛рдареА рдЙрдкрд▓рдмреНрдз RAM рдЪреЗ рдкреНрд░рдорд╛рдг рдорд░реНрдпрд╛рджрд┐рдд рдХрд░рддреЗ. рдореВрд▓реНрдп рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдЖрдгрд┐ рдПрдХ рдЖрд╣реЗ рдЙрдкрд▓рдмреНрдз рдкреНрд░рддреНрдпрдп.

рдХрдВрдЯреЗрдирд░рдЪреА RAM рдорд░реНрдпрд╛рджрд╛ 256 MB рд╡рд░ рд╕реЗрдЯ рдХрд░реВрдпрд╛:

lxc config set alp limits.memory 256MB

рддрд╕реЗрдЪ, рдореЗрдорд░реА рдорд░реНрдпрд╛рджрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЗрддрд░ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдЖрд╣реЗрдд:

  • limits.memory.enforce
  • limits.memory.hugepages
  • limits.memory.swap
  • limits.memory.swap.priority

рд╕рдВрдШ lxc config show рд╕реЗрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд▓рд╛рдЧреВ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рдВрд╕рд╛рдзрди рдорд░реНрдпрд╛рджреЗрд╕рд╣ рд╕рдВрдкреВрд░реНрдг рдХрдВрдЯреЗрдирд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдгреНрдпрд╛рд╕ рддреБрдореНрд╣рд╛рд▓рд╛ рдЕрдиреБрдорддреА рджреЗрддреЗ:

lxc config show alp

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200220_13:00)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200220_13:00"
  image.type: squashfs
  limits.memory: 256MB
  volatile.base_image: 73a3093d4a5ce0148fd84b95369b3fbecd19a537ddfd2e2d20caa2eef0e8fd60
  volatile.eth0.host_name: veth75b6df07
  volatile.eth0.hwaddr: 00:16:3e:a1:e7:46
  volatile.idmap.base: "0"
  volatile.idmap.current: '[]'
  volatile.idmap.next: '[]'
  volatile.last_state.idmap: '[]'
  volatile.last_state.power: RUNNING
devices: {}
ephemeral: false
profiles:
- default
stateful: false
description: ""

CPU рд╕рдВрд╕рд╛рдзрди рдорд░реНрдпрд╛рджрд╛ ^

CPU рд╕рдВрд╕рд╛рдзрдиреЗ рдорд░реНрдпрд╛рджрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреЗ рдЕрдиреЗрдХ рдорд╛рд░реНрдЧ рдЖрд╣реЗрдд. рдирд┐рд░реНрдмрдВрдзрд╛рдВрдЪреЗ рдкреНрд░рдХрд╛рд░:

  • limit.cpu - рдХрдВрдЯреЗрдирд░рд▓рд╛ рдПрдХ рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ CPU рдХреЛрд░рд╢реА рдЬреЛрдбрддреЗ
  • limits.cpu.allowance - рд╡реЗрд│ рдорд░реНрдпрд╛рджрд╛ рд╕рдВрдкрд▓реНрдпрд╛рд╡рд░ рдПрдХрддрд░ CFS рд╢реЗрдбреНрдпреБрд▓рд░ рдХреЛрдЯрд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ, рдХрд┐рдВрд╡рд╛ рдЯрдХреНрдХреЗрд╡рд╛рд░реА рдЙрддреНрддреАрд░реНрдг рдЭрд╛рд▓реНрдпрд╛рд╡рд░ рдпреБрдирд┐рд╡реНрд╣рд░реНрд╕рд▓ CPU рд╕рдВрд╕рд╛рдзрди рд╕рд╛рдорд╛рдпрд┐рдХрд░рдг рдпрдВрддреНрд░рдгрд╛
  • limits.cpu.priority - рдкреНрд░реЛрд╕реЗрд╕рд░рдЪрд╛ рд╕рдВрдЪ рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рдгрд╛рд░реНтАНрдпрд╛ рдПрдХрд╛рдзрд┐рдХ рдШрдЯрдирд╛рдВрдирд╛ рдкреНрд░реЛрд╕реЗрд╕рд░рдЪреА рд╕рдорд╛рди рдЯрдХреНрдХреЗрд╡рд╛рд░реА рдирд┐рдпреБрдХреНрдд рдХреЗрд▓реА рдЬрд╛рддреЗ рддреЗрд╡реНрд╣рд╛ рд╢реЗрдбреНрдпреБрд▓рд░ рдкреНрд░рд╛рдзрд╛рдиреНрдп

lxc config set alp limits.cpu.allowance 40%

lxc config show alp

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200220_13:00)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200220_13:00"
  image.type: squashfs
  limits.cpu.allowance: 40%
  limits.memory: 256MB
  volatile.base_image: 73a3093d4a5ce0148fd84b95369b3fbecd19a537ddfd2e2d20caa2eef0e8fd60
  volatile.eth0.host_name: veth75b6df07
  volatile.eth0.hwaddr: 00:16:3e:a1:e7:46
  volatile.idmap.base: "0"
  volatile.idmap.current: '[]'
  volatile.idmap.next: '[]'
  volatile.last_state.idmap: '[]'
  volatile.last_state.power: RUNNING
devices: {}
ephemeral: false
profiles:
- default
stateful: false
description: ""

рдбрд┐рд╕реНрдХ рд╕реНрдкреЗрд╕ рдорд░реНрдпрд╛рджрд╛ ^

рдЕрд╢рд╛ рдирд┐рд░реНрдмрдВрдзрд╛рдВрд╡реНрдпрддрд┐рд░рд┐рдХреНрдд limits.read, limits.write рдЖрдореНрд╣реА рдХрдВрдЯреЗрдирд░рджреНрд╡рд╛рд░реЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ рдбрд┐рд╕реНрдХ рд╕реНрдкреЗрд╕рдЪреЗ рдкреНрд░рдорд╛рдг рджреЗрдЦреАрд▓ рдорд░реНрдпрд╛рджрд┐рдд рдХрд░реВ рд╢рдХрддреЛ (рдХреЗрд╡рд│ ZFS рдХрд┐рдВрд╡рд╛ BTRFS рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рддреЗ):

lxc config device set alp root size=2GB

рд╕реНрдерд╛рдкрдиреЗрдирдВрддрд░, рдкреЕрд░рд╛рдореАрдЯрд░рдордзреНрдпреЗ devices.root.size рдЖрдореНрд╣реА рд╕реЗрдЯ рдорд░реНрдпрд╛рджрд╛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрддреЛ:

lxc config show alp
...
devices:
  root:
    path: /
    pool: hddpool
    size: 2GB
    type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""

рд╡рд╛рдкрд░рд▓реЗрд▓реЗ рдбрд┐рд╕реНрдХ рдХреЛрдЯрд╛ рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдкрдг рдХрдорд╛рдВрдбрдордзреВрди рдорд┐рд│рд╡реВ рд╢рдХрддреЛ lxc info:

lxc info alp
...
Resources:
  Processes: 5
  Disk usage:
    root: 1.05GB
  CPU usage:
    CPU usage (in seconds): 1
  Memory usage:
    Memory (current): 5.46MB
  Network usage:
    eth0:
      Bytes received: 802B
      Bytes sent: 1.59kB
      Packets received: 4
      Packets sent: 14
    lo:
      Bytes received: 0B
      Bytes sent: 0B
      Packets received: 0
      Packets sent: 0

рдЖрдореНрд╣реА рдХрдВрдЯреЗрдирд░рдЪреНрдпрд╛ рд░реВрдЯ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рдЪреА рдорд░реНрдпрд╛рджрд╛ 2GB рдкрд░реНрдпрдВрдд рд╕реЗрдЯ рдХреЗрд▓реА рдЖрд╣реЗ рд╣реЗ рдЕрд╕реВрдирд╣реА, рд╕рд┐рд╕реНрдЯрдо рдЙрдкрдпреБрдХреНрддрддрд╛ рдЬрд╕реЗ рдХреА df рд╣реЗ рдирд┐рд░реНрдмрдВрдз рджрд┐рд╕рдгрд╛рд░ рдирд╛рд╣реАрдд. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рдПрдХ рд▓рд╣рд╛рди рдЪрд╛рдЪрдгреА рдШреЗрдК рдЖрдгрд┐ рддреЗ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ рддреЗ рд╢реЛрдзреВ.

рддреНрдпрд╛рдЪрдордзреНрдпреЗ 2 рдирд╡реАрди рд╕рдорд╛рди рдХрдВрдЯреЗрдирд░ рдмрдирд╡реВ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ (hddpool):

lxc init alpine3 alp1 --storage=hddpool --profile=default --profile=hddroot
lxc init alpine3 alp2 --storage=hddpool --profile=default --profile=hddroot

lxc list
+------+---------+------------------+------+-----------+-----------+
| NAME |  STATE  |       IPV4       | IPV6 |   TYPE    | SNAPSHOTS |
+------+---------+------------------+------+-----------+-----------+
| alp1 | RUNNING | 10.0.5.46 (eth0) |      | CONTAINER | 0         |
+------+---------+------------------+------+-----------+-----------+
| alp2 | RUNNING | 10.0.5.30 (eth0) |      | CONTAINER | 0         |
+------+---------+------------------+------+-----------+-----------+

рдПрдХрд╛ рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ 1GB рдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХрд░реВрдпрд╛:

lxc exec alp1 -- dd if=/dev/urandom of=file.img bs=1M count=1000

рдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХреЗрд▓реА рдЖрд╣реЗ рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░реВрдпрд╛:

lxc exec alp1 -- ls -lh
total 1000M  
-rw-r--r--    1 root     root     1000.0M Mar 27 10:16 file.img

рдЬрд░ рдЖрдкрдг рджреБрд╕рд▒реНрдпрд╛ рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рдкрд╛рд╣рд┐рд▓реЗ рддрд░ рддреНрдпрд╛рдЪ рдард┐рдХрд╛рдгреА рдлрд╛рдЗрд▓рдЪреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рддрдкрд╛рд╕рд╛, рддрд░ рд╣реА рдлрд╛рдИрд▓ рддреЗрдереЗ рдирд╕реЗрд▓, рдЬреА рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрд╣реЗ, рдХрд╛рд░рдг рдХрдВрдЯреЗрдирд░ рд╕реНрд╡рддрдГрдЪ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд. рд╕реНрдЯреЛрд░реЗрдЬ рд╡реНрд╣реЙрд▓реНрдпреВрдо рддреНрдпрд╛рдЪ рдордзреНрдпреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓:

lxc exec alp2 -- ls -lh
total 0

рдкрдг рддреНрдпрд╛рддреВрди рдирд┐рд░реНрдорд╛рдг рд╣реЛрдгрд╛рд▒реНрдпрд╛ рдореВрд▓реНрдпрд╛рдВрдЪреА рддреБрд▓рдирд╛ рдХрд░реВрдпрд╛ df рдПрдХрд╛ рдЖрдгрд┐ рджреБрд╕рд▒реНрдпрд╛ рдХрдВрдЯреЗрдирд░рд╡рд░:

lxc exec alp1 -- df -hT
Filesystem           Type            Size      Used Available Use% Mounted on
/dev/loop1           btrfs           9.3G   1016.4M      7.8G  11% /
...

lxc exec alp2 -- df -hT
Filesystem           Type            Size      Used Available Use% Mounted on
/dev/loop1           btrfs           9.3G   1016.4M      7.8G  11% /
...

рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ /dev/loop1 рд░реВрдЯ рд╡рд┐рднрд╛рдЬрди рдореНрд╣рдгреВрди рдЖрд░реЛрд╣рд┐рдд рд╕реНрдЯреЛрд░реЗрдЬ рдкреВрд▓ рдЬреЗ рд╣реЗ рдХрдВрдЯреЗрдирд░ рд╡рд╛рдкрд░рддрд╛рдд, рддреНрдпрд╛рдореБрд│реЗ рддреЗ рддреНрдпрд╛рдЪреЗ рд╡реНрд╣реЙрд▓реНрдпреВрдо рджреЛрдирдордзреНрдпреЗ рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рддрд╛рдд.

рд╕рдВрд╕рд╛рдзрдирд╛рдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рдЪреА рдЖрдХрдбреЗрд╡рд╛рд░реА ^

рдЖрдкрдг рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВрди рдХрдВрдЯреЗрдирд░рд╕рд╛рдареА рд╕рдВрд╕рд╛рдзрди рд╡рд╛рдкрд░ рдЖрдХрдбреЗрд╡рд╛рд░реА рдкрд╛рд╣реВ рд╢рдХрддрд╛:

lxc info alp

Name: alp
Location: none
Remote: unix://
Architecture: x86_64
Created: 2020/04/08 18:05 UTC
Status: Running
Type: container
Profiles: default, hddroot
Pid: 19219
Ips:
  eth0: inet    10.0.5.5        veth2a1dc59d
  eth0: inet6   fe80::216:3eff:fe0e:e271        veth2a1dc59d
  lo:   inet    127.0.0.1
  lo:   inet6   ::1
Resources:
  Processes: 5
  Disk usage:
    root: 495.62kB
  CPU usage:
    CPU usage (in seconds): 1
  Memory usage:
    Memory (current): 4.79MB
  Network usage:
    eth0:
      Bytes received: 730B
      Bytes sent: 1.59kB
      Packets received: 3
      Packets sent: 14
    lo:
      Bytes received: 0B
      Bytes sent: 0B
      Packets received: 0
      Packets sent: 0

рд╕реНрдиреЕрдкрд╢реЙрдЯрд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреЗ ^

LXD рдордзреНрдпреЗ рд╕реНрдиреЕрдкрд╢реЙрдЯ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреНрдпрд╛рдкрд╛рд╕реВрди рдХрдВрдЯреЗрдирд░ рд╕реНрдерд┐рддреА рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рдЖрд╣реЗ.

рд╕реНрдиреЕрдкрд╢реЙрдЯ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢ рдЪрд╛рд▓рд╡рд╛:

lxc snapshot alp snapshot1

рд╕рдВрдШ lxc snapshot рдХреЛрдгрддреАрд╣реА рдЪрд╛рд╡реА рдЙрдкрд▓рдмреНрдз рдирд╛рд╣реА list, рдореНрд╣рдгреВрди, рд╕реНрдиреЕрдкрд╢реЙрдЯреНрд╕рдЪреА рд╕реВрдЪреА рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣рд╛рд▓рд╛ рдХрдВрдЯреЗрдирд░рдмрджреНрджрд▓ рд╕рд╛рдорд╛рдиреНрдп рдорд╛рд╣рд┐рддреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдгрд╛рд░реА рдХрдорд╛рдВрдб рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ:

lxc info alp
...
...
Snapshots:
  snapshot1 (taken at 2020/04/08 18:18 UTC) (stateless)

рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВрди рддреБрдореНрд╣реА рд╕реНрдиреЕрдкрд╢реЙрдЯрдордзреВрди рдХрдВрдЯреЗрдирд░ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░реВ рд╢рдХрддрд╛ lxc restore рдХрдВрдЯреЗрдирд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдгреЗ рдЬреНрдпрд╛рд╕рд╛рдареА рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдИрд▓ рдЖрдгрд┐ рд╕реНрдиреЕрдкрд╢реЙрдЯ рдЙрдкрдирд╛рдо:

lxc restore alp snapshot1

рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢ рд╕реНрдиреЕрдкрд╢реЙрдЯ рд╣рдЯрд╡рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рд▓рд╛ рдЬрд╛рддреЛ. рдХреГрдкрдпрд╛ рд▓рдХреНрд╖рд╛рдд рдШреНрдпрд╛ рдХреА рдХрдорд╛рдВрдб рд╕рд┐рдВрдЯреЕрдХреНрд╕ рдЗрддрд░ рд╕рд░реНрд╡рд╛рдВрд╕рд╛рд░рдЦреЗ рдирд╛рд╣реА; рдпреЗрдереЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдХрдВрдЯреЗрдирд░рдЪреНрдпрд╛ рдирд╛рд╡рд╛рдирдВрддрд░ рдлреЙрд░рд╡рд░реНрдб рд╕реНрд▓реЕрд╢ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдЬрд░ рд╕реНрд▓реЕрд╢ рд╡рдЧрд│рд▓рд╛ рдЕрд╕реЗрд▓, рддрд░ рд╕реНрдиреЕрдкрд╢реЙрдЯ рд╣рдЯрд╡рдгреНрдпрд╛рдЪреНрдпрд╛ рдЖрджреЗрд╢рд╛рдЪрд╛ рдХрдВрдЯреЗрдирд░ рд╣рдЯрд╡рдгреНрдпрд╛рдЪреНрдпрд╛ рдЖрджреЗрд╢рд╛рдЪрд╛ рдЕрд░реНрде рд▓рд╛рд╡рд▓рд╛ рдЬрд╛рддреЛ!

lxc delete alp/snapshot1

рд╡рд░реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рдордзреНрдпреЗ, рдЖрдореНрд╣реА рддрдерд╛рдХрдерд┐рдд рд╕реНрдЯреЗрдЯрд▓реЗрд╕ рд╕реНрдиреЕрдкрд╢реЙрдЯреНрд╕ рдкрд╛рд╣рд┐рд▓реЗ. LXD рдордзреНрдпреЗ рдЖрдгрдЦреА рдПрдХ рдкреНрд░рдХрд╛рд░рдЪреЗ рд╕реНрдиреЕрдкрд╢реЙрдЯ рдЖрд╣реЗрдд - рд╕реНрдЯреЗрдЯрдлреБрд▓, рдЬреЗ рдХрдВрдЯреЗрдирд░рдордзреАрд▓ рд╕рд░реНрд╡ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдВрдЪреА рд╕рджреНрдп рд╕реНрдерд┐рддреА рд╡рд╛рдЪрд╡рддреЗ. рд╕реНрдЯреЗрдЯрдлреБрд▓ рд╕реНрдиреЕрдкрд╢реЙрдЯрд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреЗрдХ рдордиреЛрд░рдВрдЬрдХ рдЖрдгрд┐ рдЙрдкрдпреБрдХреНрдд рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ рдЖрд╣реЗрдд.

рдЕрдЬреВрди рдХрд╛рдп? ^

  • Python рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрд╕рд╛рдареА рдПрдХ рдореЙрдбреНрдпреВрд▓ рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ PyLXD рдЬреЗ LXD рд▓рд╛ API рдкреНрд░рджрд╛рди рдХрд░рддреЗ

рдЕрдкрдбреЗрдЯ 10.04.2020/15/00 XNUMX:XNUMX: рдиреЗрд╡реНрд╣рд┐рдЧреЗрд╢рди рдЬреЛрдбрд▓реЗ

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛