Settu upp LXC (Linux ílát) í RHEL, Rocky og AlmaLinux
LXD er lýst sem næstu kynslóð gáma- og sýndarvélastjóra sem býður upp á yfirgripsmikið fyrir Linux kerfi sem keyra inni í gámum eða sem sýndarvélar.
Það veitir myndir fyrir óhóflegan fjölda Linux dreifinga með stuðningi fyrir mikið úrval af geymslustuðningi og nettegundum. Það veitir einnig möguleika á að setja upp myndirnar á einstaka tölvu/fartölvu og jafnvel á skýjatilviki.
LXD gerir þér kleift að stjórna gámum og VM með þremur leiðum. Þú getur nýtt þér lxc biðlara eða skipanalínuverkfæri, REST API eða jafnvel samþættingu þriðja aðila.
Áberandi LXD eiginleikar eru:
- LXD er byggt á myndum með myndum fyrir mikið úrval af Linux dreifingum.
- Það er byggt með öryggi í forgangi.
- Það býður upp á REST API og lxc skipanalínuverkfæri til að hafa samskipti við ílát.
- Það veitir stuðning fyrir margs konar gagnagrunna, geymslumagn og geymslusamstæður.
- Netstjórnun er með því að búa til brúarnet og göng yfir hýsil.
- Ítarleg stjórn á tilföngum eins og örgjörva, vinnsluminni, diskanotkun, inn-/útblokk og kjarnaauðlindum.
- Sveigjanlegt og skalanlegt – Þú getur sett upp gáma á tölvunni þinni og stillt klasa sem getur safnað saman þúsundum gáma á ýmsum hnútum.
Ekki má rugla saman við lxc skipanalínubiðlaratólið sem LXD býður upp á, LXC (Linux Container) er vinsæl sýndartækni á stýrikerfi sem notar öflugt API og önnur verkfæri til að gera notendum kleift að búa til og stjórna gámum og sýndarvélum á óaðfinnanlegan hátt í einn gestgjafi. Það samanstendur af sniðmátum, verkfæramáli og bókasafnsbindingum.
LXC notar eftirfarandi kjarnaeiginleika til að meðhöndla ferla:
- Nafnarými kjarna: pid, mount, uts net og notandi.
- CGhópar (viðmiðunarhópar).
- Chroots – Notkun pivot_root.
- Secomp reglur.
- SELinux og Apparmor prófílar.
Linuxcontainers.org er regnhlífarverkefnið á bak við bæði LXD og LXC. Markmið þess er að bjóða upp á dreifðan og söluaðilahlutlausan vettvang fyrir Linux gámatækni.
Með þeirri kynningu úr vegi, munum við nú sýna hvernig á að búa til og stjórna LXC gámum á RHEL-undirstaða Linux dreifingar eins og CentOS, Rocky Linux og AlmaLinux.
Vinnandi Linux stýrikerfi með lágmarks uppsetningu:
- Uppsetning á RHEL Linux
- Uppsetning á CentOS Linux
- Uppsetning á Rocky Linux
- Uppsetning AlmaLinux
Skref 1: Stilltu SELinux á leyfilegan hátt
Strax í byrjun munum við byrja á því að stilla SELinux og stilla það á leyfilegt. En áður en við gerum það skulum við uppfæra kerfispakkana sem hér segir:
$ sudo dnf update
Til að stilla SELinux á leyfilegt skaltu framkvæma skipunina:
$ sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
Til að þetta taki gildi skaltu endurræsa netþjóninn þinn.
$ sudo reboot
Og staðfestu stöðu SELinux.
$ getenforce
Skref 2: Settu upp EPEL geymslu
EPEL er geymsla frá Fedora Project sem veitir sett af hágæða pakka fyrir RedHat Enterprise Linux og aðrar RHEL-undirstaða dreifingar.
$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm OR $ sudo yum install epel-release
Skref 3: Bættu við kjarnabreytum
Áður en við setjum upp LXD eru nokkrar viðbótarfæribreytur nauðsynlegar. Skiptu því yfir í rótnotanda:
$ su -
Og bættu við breytunum sem hér segir.
$ grubby --args="user_namespace.enable=1" --update-kernel="$(grubby --default-kernel)" $ grubby --args="namespace.unpriv_enable=1" --update-kernel="$(grubby --default-kernel)" $ echo "user.max_user_namespaces=3883" | sudo tee -a /etc/sysctl.d/99-userns.conf
Þegar færibreyturnar eru komnar skaltu halda áfram og virkja Snap.
Skref 4: Settu upp og virkjaðu Snap
Einfaldasta leiðin til að setja upp LXD á RHEL 8 er að setja það upp sem snappakka. En fyrst skulum við setja upp snap eins og hér segir.
$ sudo dnf install snapd
Þetta mun setja upp snapd púkinn eða þjónustu ásamt öðrum Python ósjálfstæðum eins og sýnt er.
Með snap uppsett, haltu áfram og virkjaðu aðal snap samskiptainnstunguna.
$ sudo systemctl enable --now snapd.socket
Að auki, virkjaðu klassískan stuðning með því að búa til tákntengil frá /var/lib/snapd/snap til /snap.
$ sudo ln -s /var/lib/snapd/snap /snap
Til að uppfæra skyndistígana skaltu endurræsa kerfið þitt.
$ sudo reboot
Skref 5: Settu upp LXD Containerization Manager
Það eru tvær leiðir til að setja upp LXD frá a snap. Þú getur sett upp nýjustu útgáfuna af LXD eins og sýnt er.
$ sudo snap install —-classic lxd
Að öðrum kosti geturðu sett upp nýjustu stöðugu LTS útgáfuna sem hér segir:
$ sudo snap install lxd --channel=4.0/stable
Til að geta framkvæmt lxc skipanir án þess að skipta yfir í sudo notanda skaltu bæta notandanum sem er innskráður í lxd hópinn.
$ sudo usermod -aG lxd $USER
Staðfestu að notandanum hafi verið bætt við lxd hópinn með því að skrá alla hópa sem notandinn tilheyrir.
$ groups tecmint
Næst skaltu keyra newgrp skipunina sem hér segir.
$ newgrp lxd
Skipunin breytir núverandi hópauðkenni meðan á innskráningu stendur. Það stillir núverandi hópauðkenni á nafngreindan hóp sem er lxd.
Skref 6: Frumstilla LXD umhverfi
Áður en við byrjum að búa til og stjórna LXD gámum þurfum við að frumstilla LXD umhverfið með því að keyra skipunina.
$ lxc init
Eftirfarandi er röð leiðbeininga sem gerir þér kleift að setja upp umhverfið þitt. Sjálfgefnar stillingar munu virka vel, en ekki hika við að tilgreina eigin óskir.
Við höfum búið til geymslulaug sem heitir tec-pool með lvm valkostinum sem bakenda.
Til að staðfesta LXD umhverfið sem þú varst nýbúinn að stilla eru nokkrar skipanir sem þú getur notað. Til dæmis, til að birta sjálfgefna LXD prófílinn skaltu framkvæma:
$ lxc profile show default
Til að sýna netmillistykkin og IPv4 og IPv6 vistföngin skaltu keyra:
$ lxc network list
Þú getur þrengt það enn frekar og birt fínni upplýsingar um lxdbr0 viðmótið sem hér segir.
$ lxc network show lxdbr0
Þú getur líka staðfest geymslulaugina.
$ lxc storage list
Þú getur frekar fengið flóknar upplýsingar um geymslulaugina.
$ lxc storage show tec-pool
Til að skrá hlaupandi lxc gáma skaltu keyra skipunina:
$ lxc list
Í augnablikinu erum við ekki með neina hlaupandi gáma ennþá. Þannig að þú munt fá tóma töflu með aðeins dálkamerkjunum.
Skref 7: Skráning á forbyggðum LXC gámamyndum
Rétt eins og Docker, býður LXC vettvangurinn upp á geymslu af forbyggðum myndum sem þú getur búið til gáma úr. Til að skrá allar forsmíðaðar myndir fyrir öll stýrikerfi, þar með talið sýndarvélar, keyrðu skipunina:
$ lxc image list images:
Þetta fyllir upp risastóran lista yfir gámamyndir og sýndarvélar fyrir öll stýrikerfin. Til að þrengja að tiltekinni Linux dreifingu, notaðu setningafræðina:
$ lxc image list images: grep -i os-type
Til dæmis, til að leita að tiltækum myndum fyrir Rocky Linux skaltu keyra skipunina:
$ lxc image list images: grep -i rocky
Ef þú ert að leita að Debian myndum skaltu keyra skipunina:
$ lxc image list images: grep -i debian
Skref 8: Ræsa LXC gáma
Til að ræsa lxc gáma skaltu nota setningafræðina:
$ lxc launch images:{distro}/{version}/{arch} {container-name-here}
Hér munum við ræsa 2 gáma: tec-container1 frá Debian 10 og tec-container2 frá Rocky Linux 8.
$ lxc launch images:debian/10/amd64 tec-container1 $ lxc launch images:rockylinux/8/amd64 tec-container2
Til að skrá lxc gámana skaltu framkvæma skipunina:
$ lxc list
Úttakið sýnir fjölda upplýsinga um gámana. Þetta felur í sér heiti ílátanna, ástandið – hvort sem það er í gangi eða stöðvað – IPv4 og IPv6 vistföng, gerð (hvort sem er ílát eða sýndarvél) og fjölda skyndimynda.
Til að skrá aðeins hlaupandi gáma skaltu keyra skipunina:
$ lxc list | grep -i running
Á sama hátt, fyrir stöðvaða gáma, framkvæma:
$ lxc list | grep -i stopped
Þú getur rannsakað upplýsingar og mælikvarða gáms eins og hlaupandi ferla, CPU og minnisnotkun og bandbreidd til að nefna nokkrar með því að nota skipunina:
$ lxc info tec-container1
Skref 9: Fáðu Shell aðgang að LXC gámi
Þú getur fengið bash aðgang að íláti með setningafræðinni:
$ lxc exec container-name name-of-the-shell
Til að fá skel aðgang að tec-container1 munum við keyra skipunina:
$ lxc exec tec-container1 bash
Þegar þú hefur fengið skeljaaðgang geturðu byrjað að hafa samskipti við ílátið sem rótnotandi með því að keyra algengar skelskipanir, þar á meðal að uppfæra kerfið eins og sýnt er:
$ apt update
Til að hætta úr ílátinu skaltu keyra skipunina:
$ exit
Að öðrum kosti geturðu framkvæmt skipanirnar beint á ílátið án þess að fá aðgang að skelinni með því að nota eftirfarandi snið:
$ lxc exec container-name command
Til dæmis geturðu keyrt eftirfarandi skipanir sem munu uppfæra pakkalistana, athuga útgáfu stýrikerfisins sem keyrir á Debian ílátinu og athuga dagsetninguna.
$ lxc exec tec-container1 apt update $ lxc exec tec-container1 cat /etc/debian_version $ lxc exec tec-container1 date
Skref 10: Dragðu/ýttu skrá(m) í LXC ílát
Önnur aðgerð sem þú getur framkvæmt er að flytja skrár til og frá ílátinu. Til að sýna fram á þetta munum við búa til nýja möppu í LXD ílátinu og fletta inn í hana.
# mkdir data && cd data
Næst munum við búa til sýnishornsskrá og bæta við nokkrum gögnum. Til að gera það munum við búa til sýnishornsskrá með vim ritstjóra
# vim file1.txt
Næst munum við slá inn sýnishornstexta og vista skrána.
Hello World, Welcome to LXD containers.
Til að draga skrána úr ílátinu yfir í staðbundið hýsingarkerfi munum við nota setningafræðina:
$ lxc file pull {container-name}/{path/to/file} {/path/to/local/dest}
Í þessu tilviki verður skipunin:
$ lxc file pull tec-container2/root/data/file1.txt /home/tecmint
Til að ýta eða afrita skrá úr staðbundinni skrá yfir í gáminn, notaðu setningafræðina:
$ lxc file push {/path/to/file} {container-nane} /path/to/dest/dir/
Í þessu tilfelli erum við með sýnishornsskrá í heimamöppunni sem heitir file2.txt sem er afrituð á /root/data/ slóðina í tec-container2 ílátinu.
$ lxc file push /home/tecmint/file2.txt tec-container2/root/data/
Til að staðfesta tilvist skráarinnar í ílátinu munum við keyra:
$ lxc exec tec-container2 ls /root/data
Skref 11: Stöðva/Byrja/Endurræsa og eyða LXC gámum
Með lxc skipanalínuforritinu geturðu framkvæmt gámastjórnunarverkefni eins og að stöðva, ræsa, endurræsa og eyða gámum.
Til að stöðva lxc gám, notaðu setningafræðina:
$ lxc stop container-name
Til dæmis, til að stöðva tec-container1, munum við keyra skipunina:
$ lxc stop tec-container1
Til að ræsa lxc ílátið skaltu nota setningafræðina:
$ lxc start container-name
Til dæmis, til að ræsa tec-container1, munum við framkvæma:
$ lxc start tec-container1
Til að endurræsa báða lxc gámana munum við keyra skipunina:
$ lxc restart tec-container1 $ lxc restart tec-container2
Til að eyða lxc gámi verður þú fyrst að stöðva gáminn og síðan eyða honum. Til dæmis, til að eyða, munum við keyra skipanirnar:
$ lxc stop tec-container1 $ lxc delete tec-container1
Að öðrum kosti geturðu sameinað þessar tvær skipanir eins og sýnt er.
$ lxc stop tec-container1 && lxc delete tec-container1
Skref 12: Fáðu hjálp við LXC skipanalínuvalkosti
Til að fá hjálp við aðra skipanavalkosti sem LXC býður upp á skaltu einfaldlega keyra skipunina:
$ lxc --help OR $ lxc command --help e.g $ lxc file --help
Þetta var djúp kafa í LXD gáma og hvernig þú getur búið til og stjórnað þeim með lxc skipanalínu tólinu. Við treystum því að þér hafi fundist þessi handbók gagnleg.