I-LXD ngumphathi wesikhongozeli sesizukulwana esilandelayo, isitsho ke
Undoqo weLXD lilungelo ledaemon (inkonzo esebenza ngamalungelo engcambu) ebonelela nge REST API ngokugqitha kwi socket ye unix yobulali, ngokunjalo ngokugqitha kumsebenzi womnatha ukuba uqwalaselo olufanelekileyo lufakiwe. Abathengi, njengesixhobo somgca womyalelo esibonelelwe nge-LXD, benza izicelo ngale REST API. Oku kuthetha ukuba nokuba ufikelela kumamkeli wendawo okanye umamkeli okude, yonke into isebenza ngokufanayo.
Kweli nqaku asiyi kuhlala ngokweenkcukacha kwiikhonsepthi ze-LXD, asiyi kuqwalasela zonke izakhono ezikhoyo ezichazwe kumaxwebhu, kuquka ukuphunyezwa kwamva nje kwiinguqulelo zamva nje ze-LXD zenkxaso ye-QEMU koomatshini benyani ngokuhambelana nezikhongozeli. Endaweni yoko, siya kufunda iziseko zolawulo lwesikhongozeli-ukuseta amachibi okugcina, uthungelwano, ukuqhuba isikhongozeli, ukusebenzisa imida yemithombo, kunye nendlela yokusebenzisa iziqwengana ukuze ube nokuqonda okusisiseko kwe-LXD kwaye usebenzise izikhongozeli kwiLinux.
Ngolwazi olupheleleyo, nceda ujonge kumthombo osemthethweni:
Ukuhambahamba
Ukufakela i-LXD Ugcino LXD (Ugcino) Ukuqalisa i-LXD Ukudala nokulawula isikhongozeli
Ukufakela i-LXD ^
Ukufakela i-LXD kunikezelo lwe-Ubuntu ^
Kwi-Ubuntu 19.10 iphakheji yokusabalalisa lxd
inosasazo
apt search lxd
lxd/eoan 1:0.7 all
Transitional package - lxd -> snap (lxd)
Oku kuthetha ukuba iipakethe ezimbini ziya kufakwa kanye, enye njengempahla yenkqubo kwaye enye njengepakethe ye-snap. Ukufakela iipakethe ezimbini kwisixokelelwano kunokudala ingxaki apho inkqubo yempahla inokuba yinkedama ukuba iphakheji ye-snap isusiwe ngumphathi wepakethe ye-snap.
Fumana ipakethe lxd
kwindawo yokugcina i-snap ungasebenzisa lo myalelo ulandelayo:
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
Ngokuqhuba umyalelo list
ungaqiniseka ukuba iphakheji lxd
ayikafakwa:
snap list
Name Version Rev Tracking Publisher Notes
core 16-2.43.3 8689 stable canonicalβ core
Ngaphandle kwenyani yokuba i-LXD yiphakheji ekhawulezayo, kufuneka ifakwe ngephakheji yenkqubo lxd
, eya kudala iqela elihambelanayo kwinkqubo, izixhobo eziyimfuneko kwi /usr/bin
njalo njalo.
sudo apt update
sudo apt install lxd
Masiqinisekise ukuba ipakethe ifakwe njenge snap package:
snap list
Name Version Rev Tracking Publisher Notes
core 16-2.43.3 8689 stable canonicalβ core
lxd 3.21 13474 stable/β¦ canonicalβ -
Ukufakela i-LXD kwi-Arch Linux unikezelo ^
Ukufakela iphakheji ye-LXD kwisistim, kufuneka usebenzise le miyalelo ilandelayo, eyokuqala iya kuhlaziya uluhlu lweepakethe kwinkqubo ekhoyo kwindawo yokugcina, eyesibini iya kufaka ngqo ipakethe:
sudo pacman -Syyu && sudo pacman -S lxd
Emva kokufaka ipakethe, ukuze ulawule i-LXD ngumsebenzisi oqhelekileyo, kufuneka yongezwe kwiqela lenkqubo lxd
:
sudo usermod -a -G lxd user1
Masiqinisekise umsebenzisi user1
yongezwe kwiqela lxd
:
id -Gn user1
user1 adm dialout cdrom floppy sudo audio dip video plugdev netdev lxd
Ukuba iqela lxd
ayibonakali kuluhlu, ngoko kufuneka uvule iseshoni yomsebenzisi kwakhona. Ukwenza oku, kufuneka uphume kwaye ungene phantsi komsebenzisi ofanayo.
Vula ngaphakathi systemd
ilayisha inkonzo ye-LXD kuqaliso lwesixokelelwano:
sudo systemctl enable lxd
Masiqale inkonzo:
sudo systemctl start lxd
Ukujonga ubume benkonzo:
sudo systemctl status lxd
Ugcino LXD (Ugcino) ^
Phambi kokuba kuqaliswe, kufuneka siqonde ukuba ugcino lwe-LXD lucwangciswe njani ngokusengqiqweni.
Ugcino (yoGcino)
- Imifanekiso - ezi zisasazo ezidityanisiweyo ngokukodwa ngaphandle kwe-Linux kernel kwaye ziyafumaneka kwimithombo yangaphandle
- Izikhongozeli - ezi zihanjiswe ngokusasazwa kwimifanekiso, ilungele ukusetyenziswa
- Izifinyezo - ezi ziziqwengana zesimo sezikhongozeli onokubuyela kuzo
Ukulawula ugcino kwi-LXD, sebenzisa umyalelo lxc storage
isatifikethi onokuthi usifumane ngokuchaza isitshixo - lxc storage --help
Lo myalelo ulandelayo ubonisa uluhlu lwazo zonke Idama lokuGcina kwindawo yokugcina i-LXD:
lxc storage list
+---------+-------------+--------+--------------------------------+---------+
| NAME | DESCRIPTION | DRIVER | SOURCE | USED BY |
+---------+-------------+--------+--------------------------------+---------+
| hddpool | | btrfs | /dev/loop1 | 2 |
+---------+-------------+--------+--------------------------------+---------+
| ssdpool | | btrfs | /var/lib/lxd/disks/ssdpool.img | 4 |
+---------+-------------+--------+--------------------------------+---------+
Ukujonga uluhlu lwazo zonke Umthamo wokuGcina kwekhethiweyo Idama lokuGcina ukhonza iqela 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 |
+-----------+----------------------------------+-------------+---------+
Kwakhona, ukuba Idama lokuGcina Xa udala, inkqubo yefayile ye-BTRFS yakhethwa, emva koko ufumane uluhlu Umthamo wokuGcina okanye iisubvolumes kutoliko lwe-BTRFS, ungasebenzisa izixhobo zale nkqubo yefayile:
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
Ukuqalisa i-LXD ^
Phambi kokudala kunye nokusebenzisa izikhongozeli, kufuneka wenze uqaliso lwe-LXD jikelele oluyila kwaye luqwalasele inethiwekhi kunye nokugcinwa. Oku kunokwenziwa ngesandla usebenzisa imiyalelo esemgangathweni yomxhasi ekhoyo kuluhlu ngokufowunela umyalelo lxc --help
okanye usebenzisa i wizard yokuqalisa lxd init
ukuphendula imibuzo embalwa.
Ukukhetha inkqubo yefayile yePool yoGcino ^
Ngexesha lokuqaliswa, i-LXD ibuza imibuzo emininzi, kuquka ukumisela uhlobo lwesixokelelwano sefayile yokusilela Idama lokuGcina. Ngokungagqibekanga, inkqubo yefayile ye-BTRFS ikhethelwe yona. Akunakwenzeka ukutshintshela kwenye iFS emva kokudalwa. Ukukhetha iFS kuyacetyiswa
uphawu
Uluhlu
Btrfs
LVM
I-ZFS
CEPH
Ugcino lomfanekiso olulungiselelwe
hayi
ewe
ewe
ewe
ewe
Ukwenza umzekelo olungiselelweyo
hayi
ewe
ewe
ewe
ewe
Ukwenziwa kwesnapshot elungiselelweyo
hayi
ewe
ewe
ewe
ewe
Ugqithiso lomfanekiso olulungiselelwe
hayi
ewe
hayi
ewe
ewe
Unikezelo lomzekelo olungiselelweyo
hayi
ewe
hayi
ewe
ewe
Khuphela ekubhaleni
hayi
ewe
ewe
ewe
ewe
Block based
hayi
hayi
ewe
hayi
ewe
I-cloning ekhawulezileyo
hayi
ewe
ewe
ewe
ewe
Umqhubi wogcino olusebenzisekayo ngaphakathi kwesikhongozeli
ewe
ewe
hayi
hayi
hayi
Buyisela ukusuka kwizifinyezo ezindala (hayi zamva nje)
ewe
ewe
ewe
hayi
ewe
Izabelo zokugcina
Ewe(*)
ewe
ewe
ewe
hayi
Ukuqalisa inethiwekhi kunye nePool yoGcino usebenzisa iwizadi ^
Umyalelo olandelayo esiza kuwujonga ucebisa ukuseta amacandelo aphambili e-LXD ngokuphendula imibuzo elula usebenzisa iwizadi yokuqalisa.
Qhuba umyalelo lxc init
kwaye ufake iimpendulo kwimibuzo emva kwekholoni njengoko kubonisiwe kumzekelo ongezantsi okanye uzitshintshe ngokwemiqathango yakho:
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]:
Ukudala iPoli yokuGcina eyongezelelweyo ^
Kwinqanaba langaphambili sidale Idama lokuGcina elathiywa igama ssdpool
kunye nefayile ebekwe kwindlela yam kwi /var/lib/lxd/disks/ssdpool.img
. Le dilesi yesixokelelwano sefayile ihambelana ne drive ye-SSD ebonakalayo kwiPC yam.
La manyathelo alandelayo, ukwandisa ukuqonda indima edlalwe Idama lokuGcina kwindawo yokugcina, siya kudala eyesibini Idama lokuGcina eyakuthi ibekwe ngokwasemzimbeni kudidi olwahlukileyo lwediski, i-HDD. Ingxaki kukuba i-LXD ayikuvumeli ukuba wenze Idama lokuGcina ngaphandle kwedilesi /var/lib/lxd/disks/
kwaye namakhonkco omfuziselo akayi kusebenza, source
.
Ngoko, ngaphambi kokudala Idama lokuGcina Kufuneka uchaze ifayile yeloopback okanye isahlulelo esisele sikhona kwindlela yakho yefayile eya kusisebenzisa. Ukwenza oku, siya kudala kwaye sisebenzise ifayile esiya kuthi sinciphise ubukhulu ukuya kwi-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
Masiqhagamshele ifayile ye-loopback kwisixhobo sasimahla se-loopback:
sudo losetup --find --show /mnt/work/lxd/hddpool.img
/dev/loop1
Enkosi kwisitshixo --show
Ukuphumeza umyalelo kubuyisela kwisikrini igama lesixhobo apho ifayile yethu ye-loopback idityanisiwe. Ukuba kuyimfuneko, sinokubonisa uluhlu lwazo zonke izixhobo ezixakekileyo zolu hlobo ukuqinisekisa ukuba izenzo zethu zichanekile:
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
Kuluhlu unokufumanisa ukuba isixhobo sinakho /dev/loop1
ifayile yeloopback ibandakanyiwe /mnt/work/lxd/hddpool.img
, kunye nesixhobo /dev/loop0
ifayile yeloopback ibandakanyiwe /var/lib/lxd/disks/ssdpool.img
ehambelana nokungagqibekanga Idama lokuGcina.
Lo myalelo ulandelayo wenza omnye omtsha Idama lokuGcina kwi-LXD esekwe kwifayile yeloopback esisanda kuyilungisa. I-LXD iya kufomatha ifayile ye-loopback /mnt/work/lxd/hddpool.img
kwisixhobo /dev/loop1
yendlela yefayile ye-BTRFS:
lxc storage create hddpool btrfs size=10GB source=/dev/loop1
Masibonise uluhlu lwazo zonke Idama lokuGcina kwiscreen:
lxc storage list
+---------+-------------+--------+--------------------------------+---------+
| NAME | DESCRIPTION | DRIVER | SOURCE | USED BY |
+---------+-------------+--------+--------------------------------+---------+
| hddpool | | btrfs | /dev/loop1 | 0 |
+---------+-------------+--------+--------------------------------+---------+
| ssdpool | | btrfs | /var/lib/lxd/disks/ssdpool.img | 0 |
+---------+-------------+--------+--------------------------------+---------+
Ukwandisa ubungakanani bePolisi yokuGcina ^
Emva kokudala Idama lokuGcina, ukuba kuyimfuneko, inokwandiswa. Kuba Idama lokuGcina Ngokusekwe kwinkqubo yefayile yeBTRFS, sebenzisa le miyalelo ilandelayo:
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
Ufakelo oluzenzekelayo lwefayile yeloopback kwindawo yokubeka isixhobo sokubuyisela umva ^
Sinengxaki enye encinci, xa uqalisa kwakhona inkqubo yokusingatha, ifayile /mnt/work/lxd/hddpool.img
iya "kubhabha" ngaphandle kwesixhobo /dev/loop1
kwaye inkonzo ye-LXD iya kuntlitheka xa ilayishwa kuba ayiyi kuyibona kwesi sixhobo. Ukusombulula le ngxaki kufuneka wenze inkonzo yenkqubo eya kufaka le fayile kwisixhobo /dev/loop1
xa inkqubo yenginginya iqala.
Masidale iyunithi uhlobo lwefayile inkonzo Π² /etc/systemd/system/
yeSistimD yokuqalisa inkqubo:
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
Vula inkonzo:
sudo systemctl enable lxd-hddpool
Created symlink /etc/systemd/system/local-fs.target.wants/lxd-hddpool.service β /etc/systemd/system/lxd-hddpool.service.
Emva kokuqalisa kwakhona inkqubo yokusingatha, sijonga ubume benkonzo:
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).
Ukusuka kwimveliso sinokuqinisekisa ukuba imeko yenkonzo esebenzayo, ngaphandle kwenyani yokuba ukuphunyezwa kweskripthi sethu kumyalelo omnye kugqityiwe, ukhetho luye lwasivumela ukuba senze oku. RemainAfterExit=true
.
Ukhuseleko. Amalungelo oMgqomo ^
Kuba zonke iinkqubo zesikhongozeli zisebenza zodwa kwindlela yokusingatha isebenzisa i-kernel yayo, ukukhusela ngakumbi ufikelelo lweenkqubo zesikhongozeli kwinkqubo yokusingatha, i-LXD inikezela ngelungelo lenkqubo, apho:
-
Izikhongozeli ezinelungelo - ezi zikhongozeli apho iinkqubo ezine-UID kunye ne-GID zihambelana nomnini ofanayo kunye nenkqubo yokusingatha. Umzekelo, inkqubo eqhuba kwisikhongozeli esine UID ye 0 inamalungelo ofikelelo afanayo njengenkqubo kwindlela yokusingatha nge UID ka 0. Ngamanye amazwi, umsebenzisi oyingcambu kwisikhongozeli unawo onke amalungelo hayi kuphela isikhongozeli, kodwa nakwindlela yomamkeli ukuba angaya ngaphandle kwesithuba segama esisecaleni sesikhongozeli.
-
Izikhongozeli ezingenalungelo - ezi zizikhongozeli apho iinkqubo zingabanini be-UID kunye ne-GID enenombolo ukusuka ku-0 ukuya ku-65535, kodwa kwinkqubo yokusingatha umniniyo ufihliweyo esebenzisa i-SubUID eyongeziweyo kunye ne-SubGID bits, ngokulandelanayo. Umzekelo, umsebenzisi one-UID=0 kwisikhongozeli uya kubonwa kwindlela yokusingatha njenge
SubUID + UID
. Oku kukhusela isixokelelwano senginginya kuba ukuba nayiphi na inkqubo kwisikhongozeli iyakwazi ukubaleka isithuba sayo samagama esizimeleyo, inokunxibelelana kuphela nenkqubo yenginginya njengenkqubo engaziwayo, ephezulu kakhulu ye-UID/GID.
Ngokungagqibekanga, izikhongozeli ezisandula ukudalwa zinesimo esingafanelekanga kwaye ke kufuneka sichaze i-SubUID kunye ne-SubGID.
Masenze iifayile ezimbini zoqwalaselo apho siyakuseta imaski ye-SubUID kunye ne-SubGID, ngokulandelelanayo:
sudo touch /etc{/subuid,/subgid}
sudo usermod --add-subuids 1000000-1065535 root
sudo usermod --add-subgids 1000000-1065535 root
Ukwenza utshintsho, inkonzo ye-LXD kufuneka iqalwe kwakhona:
sudo systemctl restart lxd
Ukudala iswitshi yenethiwekhi enenyani ^
Ukusukela ukuba ngaphambili saqala umsebenzi womnatha usebenzisa iwizadi yokuqalisa lxd init
kwaye yenza isixhobo sothungelwano lxdbr0, ke kweli candelo sizakuqhelana ngokulula nothungelwano kwi-LXD kunye nendlela yokwenza iswitshi (ibhulorho) usebenzisa umyalelo womxhasi.
Lo mzobo ulandelayo ubonisa indlela iswitshi (ibhulorho) eqhagamshela ngayo umamkeli kunye nezikhongozeli kuthungelwano:
Imigqomo inokunxibelelana ngothungelwano nezinye izikhongozeli okanye umamkeli apho ezi zikhongozeli zihanjiswa khona. Ukwenza oku, kufuneka udibanise amakhadi othungelwano olubonakalayo lwezikhongozeli kunye nokutshintsha okubonakalayo. Siza kudala utshintsho kuqala, kwaye ujongano lwenethiwekhi yesingxobo luya kudityaniswa kwizahluko ezilandelayo, emva kokuba isikhongozeli senziwe ngokwaso.
Lo myalelo ulandelayo wenza iswitshi nge subnet 10.0.5.0/24
kunye nedilesi ye-IPv4 10.0.5.1/24
, kwaye ibandakanya ipv4.nat
ukuze izikhongozeli zikwazi ukufikelela kwi-Intanethi ngomninimzi usebenzisa inkonzo ye-NAT:
lxc network create lxdbr0 ipv4.address=10.0.5.1/24 ipv4.nat=true ipv6.address=none
Ukujonga uluhlu lwezixhobo zenethiwekhi ezikhoyo kwi-LXD:
lxc network list
+--------+----------+---------+-------------+---------+
| NAME | TYPE | MANAGED | DESCRIPTION | USED BY |
+--------+----------+---------+-------------+---------+
| eno1 | physical | NO | | 0 |
+--------+----------+---------+-------------+---------+
| lxdbr0 | bridge | YES | | 0 |
+--------+----------+---------+-------------+---------+
Ungaqinisekisa kwakhona ukuba isixhobo sothungelwano senziwe kusetyenziswa isixhobo esisezantsi sonikezelo lweLinux - ip link
okanye 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
Iprofayile yoqwalaselo ^
Isikhongozeli ngasinye esikwi-LXD sinolungelelwaniso lwaso kwaye sinokuyandisa ngoqwalaselo olubhengezwe kwihlabathi jikelele olubizwa iiprofayili zoqwalaselo. Ukusebenzisa iiprofayili zoqwalaselo kwisikhongozeli kunemodeli ye-cascade, lo mzekelo ulandelayo ubonisa oku:
Kulo mzekelo, iiprofayili ezintathu zenziwe kwinkqubo ye-LXD: default
, hddpool
ΠΈ hostfs
. Zontathu iiprofayili zisetyenziswa kwisikhongozeli esinobumbeko lwendawo (indawo engwevu). Inkangeleko yesimo default
inesixhobo root
eneparameter pool
iyalingana ssdpool
, kodwa ngenxa yemodeli yesicelo soqwalaselo lwe-cascade, sinokufaka iprofayili kwisitya hddpool
eneparameter pool
izakukhupha iparameter efanayo kwiprofayile default
kwaye isikhongozeli siya kufumana uqwalaselo lwesixhobo root
ngeparameter pool
ngokulinganayo hddpool
, kunye neprofayile hostfs
yongeza ngokulula isixhobo esitsha kwisikhongozeli.
Ukubona uluhlu lweeprofayile zoqwalaselo ezikhoyo, sebenzisa lo myalelo ulandelayo:
lxc profile list
+---------+---------+
| NAME | USED BY |
+---------+---------+
| default | 1 |
+---------+---------+
| hddroot | 0 |
+---------+---------+
| ssdroot | 1 |
+---------+---------+
Uluhlu olupheleleyo lwemiyalelo ekhoyo yokusebenza ngeprofayili inokufumaneka ngokudibanisa iqhosha --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
Ukuhlela iprofayile yakho ^
Iprofayile yoqwalaselo oluhlala lukhona default
ayinalo uqwalaselo lwekhadi lomnatha kwisikhongozeli kwaye zonke izikhongozeli ezisanda kwakhiwa azinathungelwano, kubo kuyimfuneko ukwenza izixhobo zenethiwekhi yendawo (ezinikezelweyo) ngomyalelo owahlukileyo, kodwa singenza isixhobo sothungelwano lwehlabathi kuqwalaselo. Iprofayile eya kwabelwana ngayo phakathi kwazo zonke izikhongozeli kusetyenziswa le nkangeleko. Ngale ndlela, ngokukhawuleza emva komyalelo wokudala isitya esitsha, baya kuba nenethiwekhi kunye nokufikelela kwinethiwekhi. Kwangaxeshanye, akukho zithintelo; sinokuhlala sisenza isixhobo sothungelwano sasekhaya kamva ukuba kuyimfuneko.
Lo myalelo ulandelayo uyakongeza isixhobo kwiprofayile yoqwalaselo eth0
uhlobo nic
iqhagamshelwe kwinethiwekhi lxdbr0
:
lxc profile device add default eth0 nic network=lxdbr0 name=eth0
Kubalulekile ukuqaphela ukuba ekubeni ngokwenene songeze isixhobo kwiprofayili yoqwalaselo, ukuba sikhankanye idilesi ye-IP engatshintshiyo kwisixhobo, ke zonke iziqulathi eziza kusebenzisa le profayile ziya kubelana ngedilesi ye-IP efanayo. Ukuba kukho imfuneko yokwenza isitya esinedilesi ye-IP engatshintshiyo eyabelwe isikhongozeli, ngoko ke kufuneka udale uqwalaselo lwesixhobo sothungelwano kwinqanaba lesikhongozeli (ubumbeko lwendawo) kunye neparameter yedilesi ye-IP, kwaye hayi kwinqanaba leprofayile.
Makhe sijonge iprofayile:
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: []
Kule profayile siyabona ukuba kuzo zonke izikhongozeli ezisanda kwenziwa izixhobo ezibini ziya kwenziwa:
eth0
β Uhlobo lwesixhobonic
iqhagamshelwe kwisitshixo (ibhulorho yenethiwekhi)lxdbr0
root
β Uhlobo lwesixhobodisk
esebenzisa ichibi lokugcinassdpool
Ukudala iinkangeleko ezintsha ^
Ukusebenzisa eyenziwe ngaphambili Idama lokuGcina izitya, yenza iprofayile yoqwalaselo ssdroot
apho siyakongeza isixhobo esinje disk
enendawo yokunyuka /
(ingcambu) usebenzisa eyenziwe ngaphambili Idama lokuGcina - ssdpool
:
lxc profile create ssdroot
lxc profile device add ssdroot root disk path=/ pool=ssdpool
Ngokufanayo, senza isixhobo esinje disk
, kodwa kule meko usebenzisa Idama lokuGcina - hddpool
:
lxc profile create hddroot
lxc profile device add hddroot root disk path=/ pool=hddpool
Ijonga iiprofayile zoqwalaselo:
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: []
Uvimba womfanekiso ^
Izikhongozeli zenziwe kwimifanekiso edityaniswe ngokukodwa unikezelo olungenayo i-Linux kernel. Ke ngoko, ngaphambi kokuba usebenzise isikhongozeli, kufuneka sibekwe kulo mfanekiso. Umthombo wemifanekiso nguvimba wendawo apho imifanekiso ikhutshelwa kwiindawo zokugcina zangaphandle.
Iindawo zokugcina imifanekiso ekude ^
Ngokungagqibekanga, i-LXD iqwalaselwe ukufumana imifanekiso kwimithombo emithathu ekude:
- ubuntu: (yemifanekiso ye-Ubuntu ezinzileyo)
- ubuntu-daily: (yemifanekiso yemihla ngemihla ye-Ubuntu)
- imifanekiso: (kwiqela lezinye ii-distros)
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 |
+-----------------+------------------------------------------+--------+--------+
Ngokomzekelo, indawo yokugcina ubuntu:
inale mifanekiso ilandelayo:
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 |
+----------------------------------------------+--------------+----------+------------+
Ukubonisa inani eliqingqiweyo leekholamu sisebenzise ukhetho -c
ngeeparamitha dasut
, kwaye unciphise ubude boluhlu ngomyalelo head
.
Uhluzo luyafumaneka ukubonisa uluhlu lwemifanekiso. Lo myalelo ulandelayo uya kudwelisa zonke izakhiwo ezikhoyo zokusasaza
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 |
+------------------------------+--------------------------------------+--------------+
Indawo yokugcina imifanekiso ^
Ukuqala ukusebenzisa isikhongozeli, kufuneka udibanise umfanekiso osuka kwindawo yokugcina umhlaba ukuya kweyasekhaya local:
. Ngoku indawo yokugcina indawo ayinanto, umyalelo uya kuqinisekisa oku lxc image list
. Ukuba indlela list
sukukhankanya indawo yokugcina, ngoko ke indawo yokugcina iyakusetyenziswa ngokungagqibekanga - local:
lxc image list local:
+-------+-------------+--------+-------------+--------------+------+------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCHITECTURE | TYPE | SIZE |
+-------+-------------+--------+-------------+--------------+------+------+
Imifanekiso kwindawo yokugcina ilawulwa kusetyenziswa ezi ndlela zilandelayo:
Iqela
inkcazelo
umfanekiso welxc ogama limbi
Lawula iziteketiso zemifanekiso
umfanekiso welxc ikopi
Khuphela imifanekiso phakathi kweeseva
umfanekiso welxc ususe
Cima imifanekiso
umfanekiso welxc hlela
Hlela iipropati zomfanekiso
umfanekiso welxc kwamanye amazwe
Thumela ngaphandle kwaye ukhuphele imifanekiso
umfanekiso welxc yokungenisa
Ngenisa imifanekiso kwivenkile yemifanekiso
umfanekiso welxc info
Bonisa ulwazi oluluncedo malunga nemifanekiso
umfanekiso welxc uluhlu
Dwelisa imifanekiso
umfanekiso welxc hlaziya kwakhona
Hlaziya imifanekiso
umfanekiso welxc bonisa
Bonisa iimpawu zomfanekiso
Khuphela umfanekiso kwindawo yogcino lwendawo ukusuka kweyehlabathi images:
:
lxc image copy images:alpine/3.11/amd64 local: --alias=alpine3
Image copied successfully!
Masibonise uluhlu lwayo yonke imifanekiso ekhoyo ngoku kwindawo yokugcina local:
:
lxc image -c lfdatsu list local:
+---------+--------------+------------------------------------+--------------+
| ALIAS | FINGERPRINT | DESCRIPTION | ARCHITECTURE |
+---------+--------------+------------------------------------+--------------+
| alpine3 | 73a3093d4a5c | Alpine 3.11 amd64 (20200220_13:00) | x86_64 |
+---------+--------------+------------------------------------+--------------+
Uqwalaselo lwe-LXD ^
Ukongeza kwimo esebenzisanayo, i-LXD ikwaxhasa imowudi yoqwalaselo engasebenziyo, oku kuxa uqwalaselo lucaciswe ngendlela yefayile yeYAML, ifomathi ekhethekileyo ekuvumela ukuba ufakele uqwalaselo lonke ngaxeshanye, udlule ukuphunyezwa. yemiyalelo emininzi esebenzisanayo ekuye kwaxoxwa ngayo ngasentla kweli nqaku, kubandakanywa uqwalaselo lwenethiwekhi, ukudalwa kweeprofayili zoqwalaselo, njl. Asiyi kugubungela le ndawo apha, ungayijonga ngokwakho.
Umyalelo olandelayo osebenzisanayo lxc config
esiza kujonga kuyo ikuvumela ukuba usete uqwalaselo. Umzekelo, ukuqinisekisa ukuba imifanekiso ekhutshelweyo kwindawo yogcino lwendawo ayihlaziywa ngokuzenzekelayo ukusuka koovimba behlabathi, sinokwenza oku kuziphatha ngalo myalelo ulandelayo:
lxc config set images.auto_update_cached=false
Ukudala nokulawula isikhongozeli ^
Ukwenza isikhongozeli sebenzisa umyalelo lxc init
apho amaxabiso agqithiselwa khona ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:ΠΎΠ±ΡΠ°Π·
kwaye emva koko i-ID efunwayo yesikhongozeli. Indawo yokugcina inokuchazwa njengendawo yendawo local:
kunjalo naliphi na ihlabathi. Ukuba indawo yokugcina ayichazwanga, ngoko ngokungagqibekanga indawo yokugcina isetyenziselwa ukukhangela umfanekiso. Ukuba umfanekiso uchaziwe kwindawo yokugcina umhlaba, ngoko umfanekiso uya kuqala ukukhutshelwa kwindawo yokugcina indawo kwaye usetyenziswe ukwenza isikhongozeli.
Masiqhube lo myalelo ulandelayo ukwenza isikhongozeli sethu sokuqala:
lxc init alpine3 alp --storage=hddpool --profile=default --profile=hddroot
Makhe sijonge izitshixo zomyalelo esizisebenzisa apha ngokulandelelana:
alpine3
- Isibizo (i-alias) sicacisiwe kumfanekiso owawufakwe ngaphambili kwindawo yokugcina indawo. Ukuba i-alias ayizange idalelwe lo mfanekiso, ngoko ungasoloko ubhekisa kumfanekiso ngawo Iprintprint eboniswe kwitheyibhile.alp
β Iseta isichongi sesikhongozeli--storage
β Eli qhosha libonisa ukuba yeyiphi Idama lokuGcina isitya siya kwenziwa--profile
β La maqhosha adlala ulungelelwaniso olusuka kwiiprofayile ezidaliweyo ngaphambili kwisingxobo
Siqalisa isikhongozeli, esiqala ukusungula inkqubo ye-init yokusasazwa:
lxc start alp
Ungasebenzisa kwakhona umyalelo lxc launch
ekuvumela ukuba udibanise amaqela lxc init
ΠΈ lxc start
kumsebenzi omnye.
Ukujonga ubume besikhongozeli:
lxc list -c ns46tb
+------+---------+------------------+------+-----------+--------------+
| NAME | STATE | IPV4 | IPV6 | TYPE | STORAGE POOL |
+------+---------+------------------+------+-----------+--------------+
| alp | RUNNING | 10.0.5.46 (eth0) | | CONTAINER | hddpool |
+------+---------+------------------+------+-----------+--------------+
Ijonga ubumbeko lwesikhongozeli:
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: ""
Kwicandelo profiles
singaqinisekisa ukuba esi sikhongozeli sisebenzisa iiprofayili zoqwalaselo ezimbini β default
ΠΈ hddroot
. Kwicandelo devices
sinokubona isixhobo esinye kuba isixhobo sothungelwano senziwe kwinqanaba leprofayile default
. Ukuze ubone zonke izixhobo ezisetyenziswa sisikhongozeli kufuneka udibanise isitshixo --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: ""
Ukuseta idilesi ye-IP engatshintshiyo ^
Ukuba sizama ukuseta idilesi ye-IP kwisixhobo sothungelwano eth0
Iqela lxc config device set alp
yenzelwe uqwalaselo lwesikhongozeli, ngoko ke siya kufumana imposiso eya kuthi ichaze ukuba isixhobo asikho ngenxa yokuba isixhobo eth0
esetyenziswa sisikhongozeli yeyeprofayile default
:
lxc config device set alp eth0 ipv4.address 10.0.5.5
Error: The device doesn't exist
Ngokuqinisekileyo sinokuseta idilesi ye-IP engatshintshiyo eth0
izixhobo kwiprofayile, kodwa iya kufana kuzo zonke izikhongozeli eziya kusebenzisa le profayile. Ke ngoko, masiyongeze isixhobo esinikezelwe kwisingxobo:
lxc config device add alp eth0 nic name=eth0 nictype=bridged parent=lxdbr0 ipv4.address=10.0.5.5
Emva koko kufuneka uqale kabusha isikhongozeli:
lxc restart alp
Ukuba sijonga uqwalaselo lwesikhongozeli ngoku, akufuneki sisebenzise ukhetho --expanded
ukubona isixhobo sothungelwano eth0
, ekubeni siyidale kwinqanaba lesikhongozeli kwaye i-cascaded phezu kwesixhobo esifanayo kwiprofayile 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: ""
Ukususa isitya ^
Ukususa isikhongozeli, sebenzisa umyalelo lxc delete
, kodwa ngaphambi kokususa isikhongozeli, kufuneka siyeke ukusebenzisa umyalelo lxc stop
:
lxc stop alp
lxc list
+------+---------+-------------------+------+-----------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+-------------------+------+-----------+-----------+
| alp | STOPPED | 10.0.5.10 (eth0) | | CONTAINER | 0 |
+------+---------+-------------------+------+-----------+-----------+
Emva kokuba siqinisekisile ukuba imeko yesikhongozeli iye yaba YEKA, inokususwa kuyo Idama lokuGcina:
lxc delete alp
Ukufikelela kwisikhongozeli ^
Ukuphumeza imiyalelo kwisikhongozeli ngokuthe ngqo, ugqitha imidibaniso yenethiwekhi, sebenzisa umyalelo lxc exec
eyenza imiyalelo kwisikhongozeli ngaphandle kokundulula iqokobhe lendlela. Ukuba ufuna ukuphumeza umyalelo kwiqokobhe usebenzisa iipatheni zeqokobhe ezifana neziguquguqukayo, ulwalathiso lwefayile (umbhobho), njl., ngoko kufuneka undulule ngokucacileyo iqokobhe kwaye ugqithise umyalelo njengesitshixo, umzekelo:
lxc exec alp -- /bin/sh -c "echo $HOME"
Umyalelo usebenzise uphawu olukhethekileyo lokubaleka kubalinganiswa abakhethekileyo
$
ukuze uguquko $HOME
ayizange itolikwe kumatshini wokusingatha, kodwa yatolikwa kuphela ngaphakathi kwesikhongozeli.
Kuyenzeka kwakhona ukuqalisa imowudi esebenzisanayo yeqokobhe, kwaye emva koko uphelise iseshoni ngokuphumeza ihotkey CTRL+D
:
lxc exec alp -- /bin/sh
Ulawulo lwemithombo yesikhongozeli ^
Kwi-LXD, unokulawula izixhobo zesikhongozeli usebenzisa iseti ekhethekileyo yoqwalaselo. Uluhlu olupheleleyo lweeparamitha zoqwalaselo lwesikhongozeli zinokufunyanwa
Ukunciphisa izixhobo ze-RAM ^
IParamu limits.memory
inciphisa inani le-RAM ekhoyo kwisikhongozeli. Ixabiso linani kunye nenye ye
Masibeke umda we-RAM yesikhongozeli ukuya kuma-256 MB:
lxc config set alp limits.memory 256MB
Kwakhona, kukho ezinye iiparameters zokunciphisa imemori:
limits.memory.enforce
limits.memory.hugepages
limits.memory.swap
limits.memory.swap.priority
Iqela lxc config show
ikuvumela ukuba ubonise uqwalaselo lwesikhongozeli siphela, ukuquka umda wesixhobo esisetyenzisiweyo ebesibekiwe:
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: ""
Umda wezixhobo ze-CPU ^
Kukho iindlela ezininzi zokunciphisa izixhobo ze-CPU.
limit.cpu
- ibophelela isikhongozeli kwi-CPU cores enye okanye ngaphezululimits.cpu.allowance
- ilawula nokuba CFS umcwangcisi quotas xa umda wexesha lidlulile, okanye universal CPU resource ukwabelana indlela xa ipesenti idlulilelimits.cpu.priority
-ukubaluleka komcwangcisi xa amaxesha amaninzi ekwabelwana ngeseti yabaqhubekekisi babelwa ipesenti efanayo yabaqhubekekisi
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: ""
Unyino lwesithuba sediski ^
Ukongeza kwizithintelo ezinjalo limits.read
, limits.write
singakwazi kwakhona ukunciphisa ubungakanani bendawo yedisk esetyenziswe sisikhongozeli (isebenza kuphela ngeZFS okanye BTRFS):
lxc config device set alp root size=2GB
Emva kofakelo, kwiparameter devices.root.size
Singaqinisekisa umda omiselweyo:
lxc config show alp
...
devices:
root:
path: /
pool: hddpool
size: 2GB
type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""
Ukujonga iiquota zedisk ezisetyenzisiweyo esinokuzifumana kumyalelo 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
Nangona sibeke umda wesixhobo sengcambu yesikhongozeli ukuya kwi-2GB, izixhobo zenkqubo ezifana df
andizukubona lo mda. Ukwenza oku, siya kuqhuba uvavanyo oluncinci kwaye sifumanise ukuba lusebenza njani.
Masenze izikhongozeli ezi-2 ezintsha ezifanayo ngokufanayo Idama lokuGcina (i-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 |
+------+---------+------------------+------+-----------+-----------+
Masenze ifayile ye-1GB kwenye yezikhongozeli:
lxc exec alp1 -- dd if=/dev/urandom of=file.img bs=1M count=1000
Masiqinisekise ukuba ifayile yenziwe:
lxc exec alp1 -- ls -lh
total 1000M
-rw-r--r-- 1 root root 1000.0M Mar 27 10:16 file.img
Ukuba sijonga kwisitya sesibini, khangela ubukho befayile kwindawo enye, ngoko le fayile ayiyi kubakho, ekulindeleke ukuba, kuba izitya zenziwe ngokwazo. Umthamo wokuGcina ngokufanayo Idama lokuGcina:
lxc exec alp2 -- ls -lh
total 0
Kodwa masithelekise amaxabiso avelisayo df
kwenye kunye nesinye isikhongozeli:
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% /
...
I sixhobo /dev/loop1
inyuswe njengoko ulwahlulo lweengcambu lunjalo Idama lokuGcina ezisetyenziswa zezi zikhongozeli, ngoko zabelana ngevolumu yazo phakathi kwezibini.
Iinkcukacha-manani zokusetyenziswa kobutyebi ^
Uyakwazi ukujonga iinkcukacha-manani zokusetyenziswa kobutyebi kwisikhongozeli usebenzisa lo myalelo:
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
Sebenza ngeesnapshots ^
I-LXD inamandla okwenza izifinyezo kunye nokubuyisela imeko yesikhongozeli ukusuka kubo.
Ukwenza i-snapshot, sebenzisa lo myalelo ulandelayo:
lxc snapshot alp snapshot1
Iqela lxc snapshot
akukho sitshixo sikhoyo list
, ke ngoko, ukujonga uluhlu lwezifinyezo kufuneka usebenzise umyalelo obonisa ulwazi ngokubanzi malunga nesiqulathi:
lxc info alp
...
...
Snapshots:
snapshot1 (taken at 2020/04/08 18:18 UTC) (stateless)
Ungabuyisela isikhongozeli kwisnapshot usebenzisa umyalelo lxc restore
ichaza isikhongozeli ekuya kwenziwa kuso ubuyiselo kunye ne-alias yesnapshot:
lxc restore alp snapshot1
Lo myalelo ulandelayo usetyenziswa ukucima umfanekiso okhawulezayo. Nceda qaphela ukuba isivakalisi somyalelo asifani nazo zonke ezinye, apha kufuneka ukhankanye isilayidi sangaphambili emva kwegama lesikhongozeli. Ukuba i-slash ishiywe, ngoko umyalelo wokucima i-snapshot utolikwa njengomyalelo wokucima isikhongozeli!
lxc delete alp/snapshot1
Kulo mzekelo ungasentla, sijonge oko kubizwa ngokuba zii-snapshots ezingena-stateless. I-LXD inolunye uhlobo lwee-snapshots - ezicacileyo, ezigcina imeko yangoku yazo zonke iinkqubo ezikwisikhongozeli. Kukho inani lezinto ezinomdla kunye neziluncedo ezinxulunyaniswa nesnapshots.
Yintoni enye? ^
- Imodyuli iyafumaneka kubaphuhlisi bePython
I-PyLXD ebonelela nge-API kwi-LXD
UHLAZIYO NGE-10.04.2020/15/00 XNUMX:XNUMX: Ukukhangela kongezwe
umthombo: www.habr.com