Chithunzi cha LXD ndiye woyang'anira chidebe chotsatira cham'badwo wotsatira, ikutero gwero. Amapereka mawonekedwe ogwiritsira ntchito ofanana ndi makina enieni, koma amagwiritsa ntchito zotengera za Linux m'malo mwake.
Mtengo wapatali wa magawo LXD ndi daemon yamwayi (ntchito yomwe ikuyenda ndi maufulu a mizu) yomwe imapereka REST API kudzera pa socket ya unix, komanso kudzera pa netiweki ngati kasinthidwe koyenera kayikidwa. Makasitomala, monga chida cholamula choperekedwa ndi LXD, amapempha kudzera mu REST API iyi. Izi zikutanthauza kuti kaya mukupeza wolandila wamba kapena wolandila kutali, zonse zimagwira ntchito mofanana.
M'nkhaniyi, sitikhala mwatsatanetsatane pamalingaliro a LXD; sitingaganizire mphamvu zonse zomwe zafotokozedwa muzolemba, kuphatikizapo kukhazikitsidwa kwaposachedwa kwa LXD yothandizira makina a QEMU ofanana ndi zotengera. M'malo mwake, tingophunzira zoyambira pakuwongolera ziwiya - kukhazikitsa maiwe osungira, ma network, kuyendetsa chidebe, kugwiritsa ntchito malire azinthu, komanso momwe mungagwiritsire ntchito zithunzithunzi kuti mutha kumvetsetsa bwino za LXD ndikugwiritsa ntchito zotengera pa Linux.
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
Poyendetsa lamulo list mukhoza kuonetsetsa kuti phukusi lxd sichinayikidwebe:
snap list
Name Version Rev Tracking Publisher Notes
core 16-2.43.3 8689 stable canonicalβ core
Ngakhale kuti LXD ndi phukusi lachidule, liyenera kukhazikitsidwa kudzera mu phukusi ladongosolo lxd, yomwe idzapanga gulu lofananira mu dongosolo, zofunikira zofunika mu /usr/bin ndi zina zotero.
Lamulo lotsatirali likuwonetsa mndandanda wa zonse Dziwe Losungira mu LXD yosungirako:
lxc storage list
+---------+-------------+--------+--------------------------------+---------+
| NAME | DESCRIPTION | DRIVER | SOURCE | USED BY |
+---------+-------------+--------+--------------------------------+---------+
| hddpool | | btrfs | /dev/loop1 | 2 |
+---------+-------------+--------+--------------------------------+---------+
| ssdpool | | btrfs | /var/lib/lxd/disks/ssdpool.img | 4 |
+---------+-------------+--------+--------------------------------+---------+
Kuti muwone mndandanda wazonse Yosungirako Volume mu osankhidwa Dziwe Losungira amatumikira timu 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 |
+-----------+----------------------------------+-------------+---------+
Komanso, ngati kwa Dziwe Losungira Mukapanga, fayilo ya BTRFS idasankhidwa, kenako pezani mndandanda Yosungirako Volume kapena kugonjetsedwa pakutanthauzira kwa BTRFS, mutha kugwiritsa ntchito zida zamafayilo awa:
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
Thamangani lamulo lxc init ndipo lowetsani mayankho a mafunso pambuyo pa colon monga momwe zasonyezedwera mu chitsanzo pansipa kapena musinthe malinga ndi mikhalidwe yanu:
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]:
Mu sitepe yapitayi tinapanga Dziwe Losungira amene anapatsidwa dzina ssdpool ndi fayilo yomwe ili pa dongosolo langa pa /var/lib/lxd/disks/ssdpool.img. Adilesi yamafayilo iyi ikufanana ndi ma SSD akuthupi pa PC yanga.
Zochita zotsatirazi, kukulitsa kumvetsetsa kwa ntchito yomwe idasewera Dziwe Losungira m'malo osungirako, tidzapanga yachiwiri Dziwe Losungira yomwe idzakhala pamtundu wina wa disk, HDD. Vuto ndiloti LXD sikukulolani kuti mupange Dziwe Losungira kunja kwa adilesi /var/lib/lxd/disks/ ndipo ngakhale maulalo ophiphiritsa sangagwire ntchito, onani yankho la wopanga. Titha kudumpha izi pakuyambitsa / kupanga Dziwe Losungira pofotokoza mtengo wake ngati chipangizo chotchinga m'malo mwa njira yopita ku fayilo ya loopback pofotokoza izi mu kiyi source.
Kuchokera mndandanda mungapeze kuti chipangizo ali /dev/loop1 loopback wapamwamba m'gulu /mnt/work/lxd/hddpool.img, ndi mu chipangizo /dev/loop0 loopback wapamwamba m'gulu /var/lib/lxd/disks/ssdpool.img zomwe zimagwirizana ndi zosasintha Dziwe Losungira.
Lamulo lotsatirali limapanga latsopano Dziwe Losungira mu LXD kutengera fayilo ya loopback yomwe tangokonzekera. LXD ipanga fayilo ya loopback /mnt/work/lxd/hddpool.img mu chipangizocho /dev/loop1 pa fayilo ya BTRFS:
Zotengera Zamwayi - awa ndi matumba omwe njira zokhala ndi UID ndi GID zimayenderana ndi eni ake omwe ali pamakina olandila. Mwachitsanzo, ndondomeko yomwe ikuyenda mu chidebe chokhala ndi UID ya 0 ili ndi ufulu wopeza wofanana ndi ndondomeko ya makina osungira omwe ali ndi UID ya 0. Mwa kuyankhula kwina, wogwiritsa ntchito mizu muchotengera ali ndi ufulu wonse osati mu chidebe, komanso pa dongosolo khamu ngati iye angakhoze kupita kunja kwa chidebe a akutali namespace.
Zotengera zopanda mwayi - awa ndi matumba omwe njira zake zimakhala za eni ake a UID ndi GID okhala ndi manambala kuyambira 0 mpaka 65535, koma pamakina ochitira mwiniwakeyo amabisika pogwiritsa ntchito ma bits a SubUID ndi SubGID, motsatana. Mwachitsanzo, wogwiritsa ntchito UID = 0 mu chidebe adzawoneka pamakina olandila ngati SubUID + UID. Izi zimateteza makina ochitira alendo chifukwa ngati njira iliyonse mu chidebe imatha kuthawa malo ake akutali, imatha kuyankhulana ndi makina osungira monga njira yosadziwika, UID / GID yapamwamba kwambiri.
Mwachikhazikitso, zotengera zomwe zangopangidwa kumene zili ndi mwayi wopanda pake chifukwa chake tiyenera kufotokozera SubUID ndi SubGID.
Tiyeni tipange mafayilo awiri osinthira momwe tidzakhazikitsira chigoba cha SubUID ndi SubGID, motsatana:
Popeza tidayambitsa kale ma netiweki pogwiritsa ntchito wizard yoyambira lxd init ndipo adapanga chipangizo cha netiweki lxdbr0, ndiye m'chigawo chino tingodziwana ndi maukonde mu LXD ndi momwe mungapangire chosinthira (mlatho) pogwiritsa ntchito lamulo la kasitomala.
Chithunzi chotsatirachi chikuwonetsa momwe switch (mlatho) imalumikizira wolandila ndi zotengera mu netiweki:
Zotengera zimatha kulumikizana kudzera pa netiweki ndi zotengera zina kapena malo omwe zotengerazi zimatumizidwa. Kuti muchite izi, muyenera kulumikiza makhadi a netiweki omwe ali ndi makina osinthira. Tipanga masinthidwe kaye, ndipo mawonekedwe a netiweki a chidebe adzalumikizidwa m'mitu yotsatira, chidebecho chikapangidwa.
Lamulo lotsatirali limapanga kusinthana ndi subnet 10.0.5.0/24 ndi IPv4 adilesi 10.0.5.1/24, komanso zikuphatikizapo ipv4.nat kotero kuti zotengera zitha kulowa pa intaneti kudzera mwa wolandirayo pogwiritsa ntchito ntchito ya NAT:
Chidebe chilichonse mu LXD chili ndi masinthidwe ake ndipo chimatha kuchikulitsa ndi masinthidwe olengezedwa padziko lonse lapansi otchedwa masinthidwe mbiri. Kugwiritsa ntchito machunidwe ku chidebe kumakhala ndi mtundu wa cascade, chitsanzo chotsatirachi chikuwonetsa izi:
Muchitsanzo ichi, mbiri zitatu zapangidwa mu dongosolo la LXD: default, hddpool ΠΈ hostfs. Mbiri zonse zitatu zimagwiritsidwa ntchito pachidebe chomwe chili ndi masinthidwe am'deralo (dera la imvi). Mbiri default ali ndi chipangizo root yomwe ili ndi parameter pool ndizofanana ndi ssdpool, koma chifukwa cha mawonekedwe a cascade kasinthidwe kachitidwe, titha kugwiritsa ntchito mbiri pachidebe hddpool yomwe ili ndi parameter pool idzachotsa gawo lomwelo kuchokera pambiri default ndipo chidebe chidzalandira kasinthidwe kachipangizo root ndi parameter pool ofanana hddpool, ndi mbiri hostfs amangowonjezera chipangizo chatsopano ku chidebe.
lxc profile list
+---------+---------+
| NAME | USED BY |
+---------+---------+
| default | 1 |
+---------+---------+
| hddroot | 0 |
+---------+---------+
| ssdroot | 1 |
+---------+---------+
Mndandanda wathunthu wa malamulo omwe alipo ogwirira ntchito ndi mbiri angapezeke powonjezera fungulo --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
Mbiri yosinthira yosasinthika default alibe kasinthidwe khadi maukonde kwa chidebe ndi onse amene analengedwa kumene alibe maukonde, kwa iwo m`pofunika kulenga m`dera (odzipereka) zipangizo maukonde ndi lamulo losiyana, koma tikhoza kupanga padziko lonse Intaneti chipangizo kasinthidwe. mbiri yomwe idzagawidwa pakati pa zotengera zonse pogwiritsa ntchito mbiriyi. Mwanjira iyi, atangolamula kuti apange chidebe chatsopano, adzakhala ndi netiweki yokhala ndi intaneti. Nthawi yomweyo, palibe zoletsa; nthawi zonse titha kupanga chida chapaintaneti chapafupi ngati kuli kofunikira.
Lamulo lotsatirali lidzawonjezera chipangizocho ku mbiri yokonzekera eth0 mtundu nic olumikizidwa ku netiweki lxdbr0:
lxc profile device add default eth0 nic network=lxdbr0 name=eth0
Ndikofunikira kudziwa kuti popeza tidawonjezera chipangizochi pazithunzi zosinthira, ngati tidatchula adilesi ya IP pazida, ndiye kuti zotengera zonse zomwe zigwiritse ntchito mbiriyi zidzagawana adilesi ya IP yomweyo. Ngati pakufunika kupanga chidebe chokhala ndi adilesi ya IP yosasunthika yoperekedwa kwa chidebecho, ndiye kuti muyenera kupanga kasinthidwe ka chipangizo cha netiweki pamlingo wa chidebe (kusintha kwanuko) ndi adilesi ya IP, osati pamlingo wambiri.
Tiyeni tiwone mbiri yake:
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: []
alpine3 - Chizindikiro (chidziwitso) chafotokozedwa pa chithunzi chomwe chidakwezedwa m'malo osungirako. Ngati alias sanalengedwe pa chithunzichi, ndiye kuti mutha kutchula chithunzicho ndi chake Zojambulajambula zomwe zikuwonetsedwa mu tebulo.
alp - Amakhazikitsa chizindikiritso cha chidebecho
Ngati tiyesa kukhazikitsa adilesi ya IP ya chipangizo cha intaneti eth0 gulu lxc config device set alp cholinga chokonzekera chidebe, ndiye tidzalandira cholakwika chomwe chidzanene kuti chipangizocho kulibe chifukwa chipangizocho eth0 chomwe chimagwiritsidwa ntchito ndi chidebecho ndi cha mbiri default:
lxc config device set alp eth0 ipv4.address 10.0.5.5
Error: The device doesn't exist
Titha kukhazikitsa adilesi ya IP yokhazikika eth0 zida zomwe zili mumbiri, koma zikhala chimodzimodzi pazotengera zonse zomwe zigwiritse ntchito mbiriyi. Chifukwa chake, tiyeni tiwonjezere chipangizo choperekedwa ku chidebecho:
lxc config device add alp eth0 nic name=eth0 nictype=bridged parent=lxdbr0 ipv4.address=10.0.5.5
Kuti mupereke malamulo mu chidebe mwachindunji, kudutsa maukonde a netiweki, gwiritsani ntchito lamulo lxc exec yomwe imapanga malamulo mu chidebe popanda kuyambitsa chipolopolo cha dongosolo. Ngati mukufuna kupereka lamulo mu chipolopolo pogwiritsa ntchito zipolopolo monga zosinthika, zolozera mafayilo (chitoliro), ndi zina zotero, ndiye kuti muyenera kutsegula chipolopolocho ndikupereka lamulo ngati kiyi, mwachitsanzo:
lxc exec alp -- /bin/sh -c "echo $HOME"
Lamuloli linagwiritsa ntchito khalidwe lapadera lothawa kwa khalidwe lapadera $ kuti kusintha $HOME sichinamasuliridwe pa makina osungira, koma chinatanthauziridwa mkati mwa chidebecho.
Kuwonjezera zoletsa zimenezi limits.read, limits.write tithanso kuchepetsa kuchuluka kwa malo a disk omwe amadyedwa ndi chidebe (chimagwira ntchito ndi ZFS kapena BTRFS):
lxc config device set alp root size=2GB
Pambuyo unsembe, mu chizindikiro devices.root.size Titha kutsimikizira malire omwe adayikidwa:
lxc config show alp
...
devices:
root:
path: /
pool: hddpool
size: 2GB
type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""
Kuti muwone ma quotas a disk omwe agwiritsidwa ntchito titha kupeza kuchokera ku lamulo 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
Ngakhale kuti takhazikitsa malire a chipangizo muzu wa chidebe kwa 2GB, dongosolo zida monga df sindiwona chiletso ichi. Kuti tichite izi, tipanga mayeso ang'onoang'ono ndikupeza momwe zimagwirira ntchito.