Feartan bunaiteach LXD - siostaman container Linux
LXD Is e manaidsear inneal siostam an ath ghinealach, mar sin tha e ag ràdh stòr. Tha e a’ tabhann eadar-aghaidh cleachdaiche coltach ri innealan brìgheil, ach a’ cleachdadh soithichean Linux nan àite.
LXD bunaiteach na dheamhan sochair (seirbheis a tha a’ ruith le còraichean freumha) a bheir seachad REST API tro socaid unix ionadail, a bharrachd air tron lìonra ma tha an rèiteachadh iomchaidh air a chuir a-steach. Bidh teachdaichean, leithid an inneal loidhne-àithne a tha air a sholarachadh le LXD, a’ dèanamh iarrtasan tron API REST seo. Tha seo a’ ciallachadh, ge bith a bheil thu a’ faighinn cothrom air aoigheachd ionadail no aoigheachd iomallach, bidh a h-uile dad ag obair mar an ceudna.
San artaigil seo cha bhith sinn a’ fuireach gu mionaideach air bun-bheachdan LXD, cha bheachdaich sinn air na comasan uile a tha rim faighinn a tha air am mìneachadh anns na sgrìobhainnean, a ’toirt a-steach buileachadh o chionn ghoirid anns na dreachan as ùire de LXD de thaic airson innealan brìgheil QEMU ann an co-shìnte ri soithichean. An àite sin, ionnsaichidh sinn dìreach bunaitean riaghladh shoithichean - a’ stèidheachadh amaran stòraidh, lìonrachadh, a’ ruith inneal-giùlain, a’ cur crìochan ghoireasan an sàs, agus mar a chleachdas tu dealbhan beaga gus am faigh thu tuigse bhunasach air LXD agus soithichean a chleachdadh air Linux.
Airson fiosrachadh iomlan, thoir sùil air an stòr oifigeil:
Tha seo a’ ciallachadh gun tèid dà phacaid a chuir a-steach aig an aon àm, aon mar phasgan siostam agus am fear eile mar phasgan snap. Ma chuireas tu dà phacaid air siostam dh’ fhaodadh sin duilgheadas a chruthachadh far am faodadh pasgan an t-siostaim a dhol na dhìlleachd ma thèid am pasgan snap a thoirt air falbh leis a’ mhanaidsear pacaid snap.
Lorg pacaid lxd anns an stòr snap faodaidh tu an òrdugh a leanas a chleachdadh:
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
Le bhith a 'ruith an àithne list faodaidh tu dèanamh cinnteach gu bheil am pasgan lxd gun a stàladh fhathast:
snap list
Name Version Rev Tracking Publisher Notes
core 16-2.43.3 8689 stable canonical✓ core
A dh ’aindeoin gur e pasgan snap a th’ ann an LXD, feumar a chuir a-steach tro phasgan an t-siostaim lxd, a chruthaicheas am buidheann co-fhreagarrach san t-siostam, na goireasan riatanach ann an /usr/bin agus mar sin air adhart.
sudo apt update
sudo apt install lxd
Dèan cinnteach gu bheil am pasgan air a chuir a-steach mar phacaid snap:
snap list
Name Version Rev Tracking Publisher Notes
core 16-2.43.3 8689 stable canonical✓ core
lxd 3.21 13474 stable/… canonical✓ -
Gus am pasgan LXD a chuir a-steach air an t-siostam, feumaidh tu na h-òrdughan a leanas a ruith, bheir a’ chiad fhear ùrachadh air liosta nam pasganan air an t-siostam a tha ri fhaighinn san stòr, cuiridh an dàrna fear am pasgan gu dìreach:
sudo pacman -Syyu && sudo pacman -S lxd
Às deidh dhut a ’phacaid a chuir a-steach, gus LXD a riaghladh le neach-cleachdaidh cunbhalach, feumar a chuir ris a’ bhuidheann siostam lxd:
sudo usermod -a -G lxd user1
Dèan cinnteach gu bheil an neach-cleachdaidh user1 air a chur ris a’ bhuidheann lxd:
id -Gn user1
user1 adm dialout cdrom floppy sudo audio dip video plugdev netdev lxd
Ma tha a' bhuidheann lxd chan eil seo ri fhaicinn air an liosta, feumaidh tu an seisean cleachdaiche a chuir an gnìomh a-rithist. Gus seo a dhèanamh, feumaidh tu logadh a-mach agus logadh a-steach fon aon neach-cleachdaidh.
Cuir an gnìomh a-steach systemd a’ luchdachadh an t-seirbheis LXD aig toiseach tòiseachaidh an t-siostaim:
Mus tòisich tòiseachadh, feumaidh sinn tuigsinn mar a tha an stòradh ann an LXD air a rèiteachadh gu loidsigeach.
Stòradh (storage) air a dhèanamh suas de bho aon no barrachd Amar stòraidh a chleachdas aon de na siostaman faidhle le taic leithid ZFS, BTRFS, LVM no clàran cunbhalach. A h-uile Amar stòraidh air a roinn ann an tomhasan (Meud stòraidh) anns a bheil ìomhaighean, soithichean, no dàta airson adhbharan eile.
Na h-ìomhaighean - tha iad sin nan sgaoilidhean air an cruinneachadh gu sònraichte às aonais an kernel Linux agus rim faighinn bho stòran taobh a-muigh
Containers - tha iad sin nan sgaoilidhean bho ìomhaighean, deiseil airson an cleachdadh
Snap-dhealbhan - is e seo dealbhan de staid nan soithichean as urrainn dhut tilleadh
Gus stòradh ann an LXD a riaghladh, cleachd an àithne lxc storage teisteanas a gheibh thu le bhith a’ sònrachadh an iuchair - lxc storage --help
Tha an àithne a leanas a’ taisbeanadh liosta de na h-uile Amar stòraidh ann an stòradh LXD:
lxc storage list
+---------+-------------+--------+--------------------------------+---------+
| NAME | DESCRIPTION | DRIVER | SOURCE | USED BY |
+---------+-------------+--------+--------------------------------+---------+
| hddpool | | btrfs | /dev/loop1 | 2 |
+---------+-------------+--------+--------------------------------+---------+
| ssdpool | | btrfs | /var/lib/lxd/disks/ssdpool.img | 4 |
+---------+-------------+--------+--------------------------------+---------+
Gus liosta de na h-uile fhaicinn Meud stòraidh anns an taghadh Amar stòraidh a’ frithealadh na sgioba 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 |
+-----------+----------------------------------+-------------+---------+
Cuideachd, ma tha Amar stòraidh Nuair a chruthaicheas tu, chaidh siostam faidhle BTRFS a thaghadh, an uairsin faigh liosta Meud stòraidh no subvolumes ann an eadar-mhìneachadh BTRFS, faodaidh tu inneal an t-siostam faidhle seo a chleachdadh:
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
Mus cruthaich agus cleachdar soithichean, feumaidh tu tòiseachadh coitcheann LXD a chruthachadh a chruthaicheas agus a rèiticheas an lìonra agus an stòradh. Faodar seo a dhèanamh le làimh a’ cleachdadh òrdughan àbhaisteach teachdaiche a tha rim faighinn air an liosta le bhith a’ gairm an àithne lxc --help no a’ cleachdadh an draoidh tòiseachaidh lxd init a’ freagairt beagan cheistean.
Aig àm tòiseachaidh, bidh LXD a’ faighneachd grunn cheistean, a’ gabhail a-steach a bhith a’ dearbhadh an seòrsa siostam faidhle airson an àbhaist Amar stòraidh. Gu gnàthach, tha siostam faidhle BTRFS air a thaghadh air a shon. Bidh e do-dhèanta atharrachadh gu FS eile às deidh cruthachadh. Gus FS a thaghadh tha e air a mholadh clàr coimeas feart:
feart
Directory
btrfs
LVM
ZFS
CEPH
Stòradh ìomhaigh as fheàrr
chan eil
tha
tha
tha
tha
Cruthachadh eisimpleir as fheàrr
chan eil
tha
tha
tha
tha
Cruthachadh dealbh làn-leasaichte
chan eil
tha
tha
tha
tha
Gluasad ìomhaigh as fheàrr
chan eil
tha
chan eil
tha
tha
Tionndadh eisimpleir as fheàrr
chan eil
tha
chan eil
tha
tha
Dèan lethbhreac air sgrìobhadh
chan eil
tha
tha
tha
tha
Stèidhichte bloc
chan eil
chan eil
tha
chan eil
tha
Clonadh sa bhad
chan eil
tha
tha
tha
tha
Dràibhear stòraidh a ghabhas cleachdadh taobh a-staigh soitheach
tha
tha
chan eil
chan eil
chan eil
Thoir air ais bho dhealbhan nas sine (chan e as ùire)
tha
tha
tha
chan eil
tha
Cuotathan stòraidh
Tha(*)
tha
tha
tha
chan eil
A 'tòiseachadh air an lìonra agus Stòradh Pool a' cleachdadh an draoidh ^
Tha an ath àithne a bheir sinn sùil air a’ moladh a bhith a’ stèidheachadh prìomh phàirtean LXD le bhith a’ freagairt cheistean sìmplidh a’ cleachdadh an draoidh tòiseachaidh.
Run àithne lxc init agus cuir a-steach freagairtean nan ceistean às deidh a’ choloin mar a chithear san eisimpleir gu h-ìosal no atharraich iad a rèir do chumhachan:
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]:
Anns a 'cheum roimhe chruthaich sinn Amar stòraidh air an tugadh an t-ainm ssdpool agus tha am faidhle aige suidhichte air an t-siostam agam aig /var/lib/lxd/disks/ssdpool.img. Tha an seòladh siostam faidhle seo a’ freagairt ris an draibhear SSD corporra sa PC agam.
Na gnìomhan a leanas, gus tuigse a leudachadh air a’ phàirt a th’ aig Amar stòraidh anns an ionad-tasgaidh, cruthaichidh sinn dàrna fear Amar stòraidh a bhios air a shuidheachadh gu corporra air seòrsa diosc eadar-dhealaichte, HDD. Is e an duilgheadas nach leig LXD leat cruthachadh Amar stòraidh a-mach à seòladh /var/lib/lxd/disks/ agus chan obraich eadhon ceanglaichean samhlachail, faic freagairt an leasaiche. Is urrainn dhuinn a dhol seachad air a’ chuingealachadh seo aig àm tòiseachaidh / cruth Amar stòraidh le bhith a 'sònrachadh an luach mar inneal bloca an àite an t-slighe chun an fhaidhle loopback le bhith a' sònrachadh seo san iuchair source.
Mar sin, mus cruthachadh Amar stòraidh feumaidh tu faidhle loopback a mhìneachadh no sgaradh a tha ann mu thràth air an t-siostam faidhle agad a chleachdas e. Gus seo a dhèanamh, cruthaichidh agus cleachdaidh sinn faidhle a chuireas sinn sìos ann am meud gu 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
Nach ceangail sinn am faidhle loopback ri inneal loopback an-asgaidh:
Taing don iuchair --show le bhith a’ cur an gnìomh an àithne a’ tilleadh chun sgrion ainm an inneil anns a bheil am faidhle loopback againn ceangailte. Ma tha feum air, is urrainn dhuinn liosta de gach inneal trang den t-seòrsa seo a thaisbeanadh gus dèanamh cinnteach gu bheil na gnìomhan againn ceart:
Bhon liosta gheibh thu a-mach gu bheil an inneal /dev/loop1 faidhle loopback air a thoirt a-steach /mnt/work/lxd/hddpool.img, agus anns an inneal /dev/loop0 faidhle loopback air a thoirt a-steach /var/lib/lxd/disks/ssdpool.img a fhreagras ris a’ bhun-bheachd Amar stòraidh.
Bidh an àithne a leanas a’ cruthachadh fear ùr Amar stòraidh ann an LXD stèidhichte air an fhaidhle loopback a tha sinn dìreach air ullachadh. Cuiridh LXD cruth air an fhaidhle loopback /mnt/work/lxd/hddpool.img anns an inneal /dev/loop1 airson siostam faidhle BTRFS:
Às deidh cruthachadh Amar stòraidh, ma tha sin riatanach, faodar a leudachadh. Airson Amar stòraidh stèidhichte air siostam faidhle BTRFS, ruith na h-òrdughan a leanas:
Cuir a-steach faidhle loopback gu fèin-ghluasadach ann an slot inneal loopback ^
Tha aon duilgheadas beag againn, nuair a bhios sinn ag ath-thòiseachadh an t-siostam aoigheachd, am faidhle /mnt/work/lxd/hddpool.img Thèid "itealaich" a-mach às an inneal /dev/loop1 agus tuitidh an t-seirbheis LXD nuair a thèid a luchdachadh oir chan fhaic e san inneal seo e. Gus an duilgheadas seo fhuasgladh feumaidh tu seirbheis siostam a chruthachadh a chuireas am faidhle seo a-steach don inneal /dev/loop1 nuair a thòisicheas an siostam aoigheachd.
Cruthaichidh sinn aonad seòrsa faidhle seirbheis в /etc/systemd/system/ airson siostam tòiseachaidh 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
Cuir an gnìomh an t-seirbheis:
sudo systemctl enable lxd-hddpool
Created symlink /etc/systemd/system/local-fs.target.wants/lxd-hddpool.service → /etc/systemd/system/lxd-hddpool.service.
Às deidh dhuinn an siostam aoigheachd ath-thòiseachadh, nì sinn sgrùdadh air inbhe na seirbheis:
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).
Bhon toradh faodaidh sinn dearbhadh gu bheil an staid seirbheis gnìomhach, a dh 'aindeoin gun deach crìoch a chur air coileanadh ar sgriobt bho aon àithne, leig an roghainn dhuinn seo a dhèanamh RemainAfterExit=true.
Leis gu bheil a h-uile pròiseas soithichean a ’ruith leotha fhèin air an t-siostam aoigheachd a’ cleachdadh an kernel aige, gus tuilleadh dìon a chuir air ruigsinneachd phròiseasan soithichean don t-siostam aoigheachd, tha LXD a ’tabhann sochair pròiseas, far a bheil:
Soithichean sochairichte - is iad sin soithichean anns a bheil pròiseasan le UID agus GID a’ freagairt ris an aon neach-seilbh ris an t-siostam aoigheachd. Mar eisimpleir, tha na h-aon chòraichean-slighe aig pròiseas a tha a' ruith ann an soitheach le UID de 0 's a tha ann am pròiseas air an t-siostam aoigheachd le UID de 0. Ann am faclan eile, tha na còraichean uile aig a' chleachdaiche bunaiteach anns a' ghobhar, chan ann a-mhàin ann an an t-soithich, ach cuideachd air an t-siostam aoigheachd mas urrainn dha a dhol taobh a-muigh raon-ainm iomallach an t-soithich.
Soithichean gun fheum - is iad sin soithichean anns am buin pròiseasan le sealbhadair an UID agus GID le àireamh bho 0 gu 65535, ach airson an t-siostam aoigheachd tha an sealbhadair air a chuir am falach le bhith a’ cleachdadh na pìosan SubUID agus SubGID a bharrachd, fa leth. Mar eisimpleir, bidh cleachdaiche le UID = 0 ann an soitheach ri fhaicinn air an t-siostam aoigheachd mar SubUID + UID. Bidh seo a’ dìon an t-siostam aoigheachd oir ma tha pròiseas sam bith san t-soitheach comasach air faighinn seachad air an àite-ainm iomallach aige, chan urrainn dha ach conaltradh leis an t-siostam aoigheachd mar phròiseas le UID / GID neo-aithnichte, fìor àrd.
Gu gnàthach, tha inbhe neo-leasaichte aig soithichean a chaidh an cruthachadh às ùr agus mar sin feumaidh sinn SubUID agus SubGID a mhìneachadh.
Cruthaichidh sinn dà fhaidhle rèiteachaidh anns an suidhich sinn am masg airson SubUID agus SubGID, fa leth:
Leis gun do thòisich sinn an lìonra roimhe seo a’ cleachdadh an draoidh tòiseachaidh lxd init agus chruthaich e inneal lìonraidh lxdbr0, an uairsin anns an earrainn seo bidh sinn dìreach a’ faighinn eòlas air lìonrachadh ann an LXD agus mar a chruthaicheas tu tionndadh brìgheil (drochaid) a ’cleachdadh an àithne teachdaiche.
Tha an diagram a leanas a’ sealltainn mar a cheanglas suidse (drochaid) an t-òstair agus na soithichean ri lìonra:
Faodaidh soithichean conaltradh tro lìonra le soithichean eile no leis an aoigh air a bheil na soithichean sin air am frithealadh. Gus seo a dhèanamh, feumaidh tu na cairtean lìonra brìgheil de na soithichean a cheangal le tionndadh brìgheil. Cruthaichidh sinn suidse an toiseach, agus bidh eadar-aghaidh lìonra an t-soithich ceangailte anns na caibideilean às deidh sin, às deidh don ghobhar fhèin a bhith air a chruthachadh.
Bidh an àithne a leanas a’ cruthachadh suidse le subnet 10.0.5.0/24 agus seòladh IPv4 10.0.5.1/24, agus cuideachd a’ toirt a-steach ipv4.nat gus am faigh soithichean cothrom air an eadar-lìn tron òstair a’ cleachdadh an t-seirbheis NAT:
A’ sgrùdadh liosta nan innealan lìonra a tha rim faighinn ann an LXD:
lxc network list
+--------+----------+---------+-------------+---------+
| NAME | TYPE | MANAGED | DESCRIPTION | USED BY |
+--------+----------+---------+-------------+---------+
| eno1 | physical | NO | | 0 |
+--------+----------+---------+-------------+---------+
| lxdbr0 | bridge | YES | | 0 |
+--------+----------+---------+-------------+---------+
Faodaidh tu cuideachd dearbhadh gun deach inneal lìonraidh a chruthachadh a’ cleachdadh an inneal àbhaisteach den sgaoileadh Linux - ip link no 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
Tha a rèiteachadh fhèin aig gach soitheach ann an LXD agus faodaidh iad a leudachadh le rèiteachaidhean a chaidh ainmeachadh air feadh na cruinne ris an canar pròifilean rèiteachaidh. Le bhith a’ cur pròifilean rèiteachaidh gu soitheach tha modail cascade, tha an eisimpleir a leanas a’ sealltainn seo:
San eisimpleir seo, chaidh trì pròifilean a chruthachadh san t-siostam LXD: default, hddpool и hostfs. Tha na trì pròifilean air an cur an sàs ann an soitheach aig a bheil rèiteachadh ionadail (sgìre liath). Pròifil default tha inneal root aig a bheil paramadair pool co-ionann ssdpool, ach le taing don mhodail tagraidh rèiteachaidh cascade, is urrainn dhuinn ìomhaigh a chuir a-steach don ghobhar hddpool aig a bheil paramadair pool bheir e seachad an aon paramadair bhon phròifil default agus gheibh an soitheach rèiteachadh an uidheim root le paramadair pool co-ionann hddpool, agus am pròifil hostfs dìreach cuir inneal ùr ris a’ ghobhar.
Gus an liosta de phròifil rèiteachaidh fhaicinn, cleachd an òrdugh a leanas:
lxc profile list
+---------+---------+
| NAME | USED BY |
+---------+---------+
| default | 1 |
+---------+---------+
| hddroot | 0 |
+---------+---------+
| ssdroot | 1 |
+---------+---------+
Gheibhear liosta iomlan de na h-òrdughan a tha rim faighinn airson obrachadh le pròifil le bhith a’ cur an iuchair ris --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
Pròifil rèiteachaidh bunaiteach default chan eil rèiteachadh cairt lìonraidh ann airson an t-soithich agus chan eil lìonra aig a h-uile soitheach a chaidh a chruthachadh às ùr, dhaibh feumar innealan lìonra ionadail (coisrigte) a chruthachadh le òrdugh air leth, ach is urrainn dhuinn inneal lìonra cruinne a chruthachadh anns an rèiteachadh pròifil a thèid a cho-roinn eadar na soithichean uile a’ cleachdadh a’ phròifil seo. San dòigh seo, dìreach às deidh an àithne inneal ùr a chruthachadh, bidh lìonra aca le ruigsinneachd lìonra. Aig an aon àm, chan eil bacadh sam bith ann; faodaidh sinn an-còmhnaidh inneal lìonra ionadail a chruthachadh nas fhaide air adhart ma tha sin riatanach.
Cuiridh an àithne a leanas an inneal ris a’ phròifil rèiteachaidh eth0 seòrsa nic ceangailte ris an lìonra lxdbr0:
lxc profile device add default eth0 nic network=lxdbr0 name=eth0
Tha e cudromach toirt fa-near, leis gun do chuir sinn an inneal ris a’ phròifil rèiteachaidh, ma shònraich sinn seòladh IP statach san inneal, bidh an aon sheòladh IP aig a h-uile inneal a chleachdas am pròifil seo. Ma tha feum air soitheach a chruthachadh le seòladh IP statach air a shònrachadh airson an t-soithich, bu chòir dhut rèiteachadh inneal lìonra a chruthachadh aig ìre an t-soithich (rèiteachadh ionadail) le paramadair an t-seòlaidh IP, agus chan ann aig ìre na pròifil.
Feuch an toir sinn sùil air a’ phròifil:
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: []
Anns a’ phròifil seo chì sinn gun tèid dà inneal a chruthachadh airson a h-uile inneal ùr-chruthaichte:
eth0 - Seòrsa inneal nic ceangailte ri suidse (drochaid lìonra) lxdbr0
root - Seòrsa inneal disk a bhios a’ cleachdadh amar-stòraidh ssdpool
Airson a chleachdadh a chaidh a chruthachadh roimhe Amar stòraidh soithichean, cruthaich pròifil rèiteachaidh ssdroot anns an cuir sinn inneal mar disk le puing sreap / (root) a’ cleachdadh an dreach a chaidh a chruthachadh roimhe Amar stòraidh - ssdpool:
Tha soithichean air an cruthachadh bho ìomhaighean a tha nan sgaoilidhean cruinnichte sònraichte aig nach eil kernel Linux. Mar sin, mus ruith thu an soitheach, feumar a chuir a-steach bhon ìomhaigh seo. Is e stòr ìomhaighean stòr ionadail anns am bi ìomhaighean air an luchdachadh sìos bho stòran taobh a-muigh.
Gus àireamh cuibhrichte de cholbhan a thaisbeanadh chleachd sinn an roghainn -c le paramadairean dasut, agus cuideachd cuingealaich fad an liosta leis an àithne head.
Tha sìoladh ri fhaighinn gus liosta de dhealbhan a thaisbeanadh. Nì an àithne a leanas liosta de na h-ailtirean sgaoilidh a tha rim faighinn Linux Alpach:
Gus tòiseachadh air an t-soitheach a chleachdadh, feumaidh tu ìomhaigh bhon stòr chruinneil a chuir ris an fhear ionadail local:. A-nis gu bheil an stòr ionadail falamh, nì an àithne cinnteach à seo lxc image list. Ma tha an dòigh-obrach list na sònraich stòr-tasgaidh, an uairsin thèid an stòr ionadail a chleachdadh gu bunaiteach - local:
lxc image list local:
+-------+-------------+--------+-------------+--------------+------+------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCHITECTURE | TYPE | SIZE |
+-------+-------------+--------+-------------+--------------+------+------+
Tha dealbhan san stòr air an riaghladh a’ cleachdadh na dòighean a leanas:
sgioba
Tuairisgeul
Dealbh lxc alias
Stiùirich ailias ìomhaighean
Dealbh lxc leth-bhreac
Dèan lethbhreac de dhealbhan eadar frithealaichean
Dealbh lxc a sguabadh às
Cuir às do dhealbhan
Dealbh lxc deasaich an tùs
Deasaich feartan ìomhaigh
Dealbh lxc às-mhalairt
Às-mhalairt agus luchdaich sìos dealbhan
Dealbh lxc steach
Cuir a-steach ìomhaighean a-steach don stòr dhealbhan
Dealbh lxc info
Seall fiosrachadh feumail mu dhealbhan
A bharrachd air a 'mhodh eadar-ghnìomhach, tha LXD cuideachd a' toirt taic do mhodh stàlaidh rèiteachaidh neo-eadar-ghnìomhach, seo nuair a tha an rèiteachadh air a shònrachadh ann an cruth faidhle YAML, cruth sònraichte a leigeas leat an rèiteachadh gu lèir a stàladh aig an aon àm, a 'dol seachad air a' choileanadh. de dh’ iomadh àithne eadar-ghnìomhach a chaidh a dheasbad gu h-àrd san artaigil seo, a’ toirt a-steach rèiteachadh lìonra, cruthachadh pròifilean rèiteachaidh, msaa. Cha bhith sinn a’ còmhdach na sgìre seo an seo, faodaidh tu sgrùdadh a dhèanamh leat fhèin. ann an sgrìobhainnean.
An ath òrdugh eadar-ghnìomhach lxc config a bheir sinn sùil air a leigeas leat an rèiteachadh a shuidheachadh. Mar eisimpleir, gus dèanamh cinnteach nach tèid ìomhaighean a chaidh a luchdachadh sìos chun stòr ionadail ùrachadh gu fèin-ghluasadach bho na stòran cruinne, is urrainn dhuinn an giùlan seo a chomasachadh leis an àithne a leanas:
Gus soitheach a chruthachadh cleachd an àithne lxc init ris a bheil luachan air an toirt seachad репозиторий:образ agus an uairsin an ID a tha thu ag iarraidh airson an t-soithich. Faodar an stòr a shònrachadh mar ionadail local: mar sin tha fear cruinne sam bith. Mura h-eil an tasglann air a shònrachadh, mar as trice bidh an stòr ionadail air a chleachdadh gus an ìomhaigh a lorg. Ma tha an ìomhaigh air a shònrachadh bhon stòr chruinneil, thèid an ìomhaigh a luchdachadh sìos an toiseach chun stòr ionadail agus an uairsin a chleachdadh gus an soitheach a chruthachadh.
Ruith sinn an àithne a leanas gus a’ chiad soitheach againn a chruthachadh:
lxc init alpine3 alp --storage=hddpool --profile=default --profile=hddroot
Bheir sinn sùil air na h-iuchraichean àithne a chleachdas sinn an seo ann an òrdugh:
alpine3 - Tha alias (alias) air a shònrachadh airson an ìomhaigh a chaidh a luchdachadh suas chun stòr ionadail roimhe seo. Mura deach an alias a chruthachadh airson an ìomhaigh seo, faodaidh tu an-còmhnaidh iomradh a thoirt air an ìomhaigh leis Meòir-lorg a tha air a thaisbeanadh sa chlàr.
alp - Suidhich an aithnichear airson an t-soithich
--storage - Tha an iuchair seo a’ nochdadh cò anns a bheil Amar stòraidh thèid soitheach a chruthachadh
--profile - Bidh na h-iuchraichean cascade seo a’ cur an sàs rèiteachadh bho phròifil rèiteachaidh a chaidh a chruthachadh roimhe seo chun t-soithich
Bidh sinn a 'cur air bhog an t-soithich, a tha a' tòiseachadh a 'cur air bhog an siostam cuairteachaidh a-steach:
lxc start alp
Faodaidh tu cuideachd an àithne a chleachdadh lxc launch a leigeas leat sgiobaidhean a chur còmhla lxc init и lxc start ann an aon obrachadh.
A’ sgrùdadh staid an t-soithich:
lxc list -c ns46tb
+------+---------+------------------+------+-----------+--------------+
| NAME | STATE | IPV4 | IPV6 | TYPE | STORAGE POOL |
+------+---------+------------------+------+-----------+--------------+
| alp | RUNNING | 10.0.5.46 (eth0) | | CONTAINER | hddpool |
+------+---------+------------------+------+-----------+--------------+
Anns an earrainn profiles faodaidh sinn dèanamh cinnteach gu bheil an soitheach seo a’ cleachdadh dà phròifil rèiteachaidh - default и hddroot. Ann an earrann devices chan urrainn dhuinn ach aon inneal a lorg oir chaidh an inneal lìonraidh a chruthachadh aig ìre na pròifil default. Gus a h-uile inneal a chleachdas an soitheach fhaicinn feumaidh tu iuchair a chuir ris --expanded:
Ma dh'fheuchas sinn ri seòladh IP a shuidheachadh airson inneal lìonraidh eth0 sgioba lxc config device set alp an dùil airson rèiteachadh an t-soithich, an uairsin gheibh sinn mearachd a dh’ innseas nach eil an inneal ann leis gu bheil an inneal ann eth0 a tha air a chleachdadh leis a’ ghobhar a bhuineas don phròifil default:
lxc config device set alp eth0 ipv4.address 10.0.5.5
Error: The device doesn't exist
Is urrainn dhuinn gu dearbh seòladh IP statach a shuidheachadh airson eth0 innealan sa phròifil, ach bidh e an aon rud airson a h-uile inneal-giùlain a chleachdas am pròifil seo. Mar sin, cuiridh sinn inneal a tha coisrigte don ghobhar:
lxc config device add alp eth0 nic name=eth0 nictype=bridged parent=lxdbr0 ipv4.address=10.0.5.5
An uairsin feumaidh tu an soitheach ath-thòiseachadh:
lxc restart alp
Ma choimheadas sinn air rèiteachadh an t-soithich a-nis, chan fheum sinn an roghainn a chleachdadh --expanded gus an inneal lìonra fhaicinn eth0, bhon a chruthaich sinn e aig ìre an t-soithich agus chaidh e thairis air an aon inneal bhon phròifil default:
Gus soitheach a thoirt air falbh, cleachd an àithne lxc delete, ach mus toir thu air falbh an soitheach, feumar stad a chuir air a bhith a’ cleachdadh an àithne lxc stop:
lxc stop alp
lxc list
+------+---------+-------------------+------+-----------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+-------------------+------+-----------+-----------+
| alp | STOPPED | 10.0.5.10 (eth0) | | CONTAINER | 0 |
+------+---------+-------------------+------+-----------+-----------+
Às deidh dhuinn dearbhadh gu bheil staid an t-soithich air fàs STOPPED, faodar a thoirt air falbh bho Amar stòraidh:
Gus òrdughan a chuir an gnìomh gu dìreach ann an soitheach, a’ dol seachad air ceanglaichean lìonra, cleachd an àithne lxc exec a chuireas an gnìomh òrdughan anns a’ bhogsa gun a bhith a’ cur slige an t-siostaim air bhog. Ma dh’ fheumas tu àithne a chuir an gnìomh ann an slige a’ cleachdadh pàtrain shligean leithid caochladairean, ath-sheòlaidhean faidhle (pìob), msaa, feumaidh tu an t-slige a chuir air bhog gu soilleir agus an àithne a thoirt seachad mar iuchair, mar eisimpleir:
lxc exec alp -- /bin/sh -c "echo $HOME"
Chleachd an àithne caractar teicheadh sònraichte airson caractar sònraichte $ gus am bi an caochlaideach $HOME cha deach a mhìneachadh air an inneal aoigheachd, ach chaidh a mhìneachadh a-mhàin taobh a-staigh an t-soithich.
Tha e comasach cuideachd am modh slige eadar-ghnìomhach a thòiseachadh, agus an uairsin crìoch a chuir air an t-seisean le bhith a’ cur an gnìomh hotkey CTRL+D:
Ann an LXD, faodaidh tu goireasan soithichean a riaghladh a’ cleachdadh seata rèiteachaidh sònraichte. Gheibhear liosta iomlan de pharamadairean rèiteachaidh container ann an sgrìobhainnean.
Parameter limits.memory a 'cuingealachadh na tha de RAM ri fhaighinn don ghobhar. Is e an luach àireamh agus aon de iar-leasachain rim faighinn.
Nach suidhich sinn crìoch RAM an t-soithich gu 256 MB:
lxc config set alp limits.memory 256MB
Cuideachd, tha crìochan eile ann airson cuimhne a chuingealachadh:
limits.memory.enforce
limits.memory.hugepages
limits.memory.swap
limits.memory.swap.priority
sgioba lxc config show a’ leigeil leat rèiteachadh an t-soithich gu lèir a thaisbeanadh, a’ gabhail a-steach a’ chrìoch ghoireasan gnìomhaichte a chaidh a shuidheachadh:
limit.cpu - a’ ceangal soitheach ri aon no barrachd de choraichean CPU
limits.cpu.allowance - a’ riaghladh an dàrna cuid cuotathan clàr-ama CFS nuair a tha an ùine seachad, no an uidheamachd roinneadh ghoireasan CPU uile-choitcheann nuair a tha an àireamh sa cheud seachad
limits.cpu.priority - prìomhachas clàr-ama nuair a thèid an aon cheudad de phròiseasan a thoirt do ghrunn chùisean a bhith a’ roinneadh seata de phròiseasan
A bharrachd air cuingealachaidhean leithid limits.read, limits.write is urrainn dhuinn cuideachd an àireamh de dh’ àite diosc a bhios an soitheach ag ithe a chuingealachadh (ag obair le ZFS no BTRFS a-mhàin):
lxc config device set alp root size=2GB
Às deidh an stàladh, anns a 'pharamadair devices.root.size Is urrainn dhuinn a’ chrìoch stèidhichte a dhearbhadh:
lxc config show alp
...
devices:
root:
path: /
pool: hddpool
size: 2GB
type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""
Gus sùil a thoirt air na cuotathan diosc cleachdte a gheibh sinn bhon àithne 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
A dh’ aindeoin gu bheil sinn air crìoch a chuir air inneal freumh an t-soithich gu 2GB, tha goireasan siostam leithid df chan fhaic an cuingealachadh seo. Gus seo a dhèanamh, nì sinn deuchainn beag agus faigh a-mach mar a tha e ag obair.
Cruthaichidh sinn 2 shoitheach co-ionann ùr san aon rud Amar stòraidh (hddpool):
Dèan cinnteach gu bheil am faidhle air a chruthachadh:
lxc exec alp1 -- ls -lh
total 1000M
-rw-r--r-- 1 root root 1000.0M Mar 27 10:16 file.img
Ma choimheadas sinn san dàrna soitheach, dèan cinnteach gu bheil faidhle ann san aon àite, cha bhith am faidhle seo ann, ris a bheil dùil, leis gu bheil soithichean air an cruthachadh annta fhèin Meud stòraidh anns an aon Amar stòraidh:
lxc exec alp2 -- ls -lh
total 0
Ach dèanamaid coimeas eadar na luachan a tha e a 'dèanamh df air aon agus an soitheach eile:
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% /
...
Inneal /dev/loop1 air a chuir suas mar a tha am pàirt bunaiteach Amar stòraidh a bhios na soithichean sin a’ cleachdadh, agus mar sin bidh iad a’ roinn an tomhas-lìonaidh eadar dhà.
Tha comas aig LXD dealbhan-camara a chruthachadh agus staid nan soithichean a thoirt air ais bhuapa.
Gus dealbh a chruthachadh, ruith an òrdugh a leanas:
lxc snapshot alp snapshot1
An sgioba lxc snapshot chan eil iuchair ri fhaighinn list, mar sin, airson liosta nan dealbhan fhaicinn feumaidh tu an àithne a chleachdadh a sheallas fiosrachadh coitcheann mun t-soitheach:
lxc info alp
...
...
Snapshots:
snapshot1 (taken at 2020/04/08 18:18 UTC) (stateless)
Faodaidh tu soitheach a thoirt air ais bho dhealbh leis an àithne lxc restore a’ sònrachadh an t-soithich airson an tèid an ath-nuadhachadh a dhèanamh agus an alias dealbh:
lxc restore alp snapshot1
Tha an àithne a leanas air a chleachdadh gus dealbh a sguabadh às. Thoir an aire nach eil an co-chòrdadh àithne coltach ris a h-uile càil eile; an seo feumaidh tu slash air adhart a shònrachadh às deidh ainm an t-soithich. Ma thèid an slash fhàgail a-mach, tha an àithne airson dealbh a sguabadh às air a mhìneachadh mar àithne airson soitheach a sguabadh às!
lxc delete alp/snapshot1
Anns an eisimpleir gu h-àrd, thug sinn sùil air dealbhan gun stàit ris an canar. Tha seòrsa eile de dhealbhan aig LXD - stàiteil, a shàbhaileas staid làithreach a h-uile pròiseas anns a’ ghobhar. Tha grunn fheartan inntinneach agus feumail co-cheangailte ri dealbhan stàiteil.