Naujausias pranešimas: Samba kritinis pažeidžiamumas
frame

Sveiki apsilankę!

Jei forume lankaisi pirmą kartą, kviečiame registruotis ir prisijungti prie diskusijų.

Prisijungti Registruotis

Kubernetes Master ir Node serverių diegimas naudojant Ubuntu OS 20.04

iv_vytenisgiv_vytenisg Super Moderator
edited 2021 spalio 28 Į Valdymo pultai


Kubernetes yra atvirojo kodo virtaliai dedikuotų serverių konteinerinės sistemos valdymo įrankis skirtas automatizuotai valdyti skirtingus serverius, kurie yra prijungti prie pagrindinio serverio. Tai yra Google kurta programinė įranga, kuri dažniausiai naudojama su Docker konteinerių valdymo sistema. Kubernetes suteikia galimybę valdyti papildomus serverius, kurie yra prijungti prie pagrindinio serverio neprisijungiant prie papildomo serverio.

Šioje pamokoje atliksite Kubernetes diegimą Master (pagrindinis) ir Node (prijungtasis) serveriuose naudojant Ubuntu 20.04 operacinę sistemą. Tačiau naudojamos komandos turėtų veikti ir senesnėse Ubuntu versijose iki 16.04 (vietoje apt naudojant apt-get).

SVARBU: Kubernetes gali veikti tik KVM virtualizacijos serveryje.

0. Preliminarūs reikalavimai

* Dedikuotas KVM serveris naudojantis mūsų parengtą Ubuntu 20.04 šabloną.

1. Serverių paruošimas Kubernetes diegimui

Kubernetes diegimas turi būti atliekamas abiejuose serveriuose, todėl šiuos veiksmus atlikite tiek serveryje iš kurio bus valdomi kiti serveriai, tiek serveriuose, kurie bus valdomi. Visos komandos gali būti atliekamos tiek su root naudotoju tiek su papildomu naudotoju (jeigu bus norima atlikti veiksmus iš papildomų naudotojų) turinčių root teises pridedant sudo prieš vykdomą komandą.

Visų pirma atlikite sistemų atnaujinimus:
apt update
apt upgrade

Tada įdiekite apt-trasport-htpps paketą, kuris įgalina serverių tarpusavio sąveiką:
apt install -y apt-transport-https

Mes pasirinkome naudoti Docker konteinerinę sistemą Kubernetes veikimui. Vietoje Docker galima naudoti CRI-O ar Containerd. Docker diegimui naudokite šią komandą:
apt install docker.io -y

Kai diegimas bus užbaigtas, aktyvuokite Docker bei nustatykite, kad Docker aktyvuotųsi kiekvieno serverio perkrovimo metu:
systemctl start docker && systemctl enable docker

2. Kubernetes diegimas

Kai serverio paruošimo darbai užbaigti, galime pereiti prie Kubernetes diegimo. Visų pirma reikia parsisiųsti Kubernetes paketą iš Google:

Atlikus diegimą reikia sukurti tekstinį failą. Kūrimui mes naudojame nano teksto redagavimo programą, tačiau galite naudoti ir kitą savo mėgstamą programą.
nano /etc/apt/sources.list.d/kubernetes.list

Ir įkelkite tekstą:
deb http://apt.kubernetes.io/ kubernetes-xenial main

Išsaugokite failą. Dabar galite pradėti Kubernetes diegimą su papildomai paketais:
apt-get update && apt-get install -y kubelet kubeadm kubectl kubernetes-cni

3. Kubernetes Master serverio konfigūravimas

Konfigūracinių failų diegimui Master serveryje naudokite šią komandą (įvykdymas gali užtrukti kelias minutes):
kubeadm init

SVARBU: neuždarykite serverio konsolės lango užbaigus konfigūravimą, nes bus pateikiama informacija, kurią reikės suvesti Node serveryje. Reikalingos informacijos pavyzdys:
kubeadm join master.serverio.ip.adresas:6443 --token mxuzwk.afadodbc78xxxxxx --discovery-token-ca-cert-hash sha256:7ecdd6ccbca5940c3038119c7887904deee6254abb961673bd920b224xxxxxxx

Šį tekstą išsisaugokite. Ši žymė veiks tik 24 valandas, todėl jeigu norėsite vėliau prideti papildomą serverį, paleiskite šią komandą ir gausite naują žymę:
kubeadm token generate

Papildomos konfigūravimo komandos turi būti atliekamos, jeigu serverius norės valdyti papildomas naudotojas:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

4. Kubernetes Node serverio prijungimas prie Master

Papildomai primename, kad turite atlikti pirmoje ir antroje skiltyje pateiktas komandas norėdami sujungti abu serverius. Sėkmingai atlikus visus veiksmus abiejuose serveriuose bei trečios skilties žingsnius Master serveryje, prisijunkite prie Node serverio ir įveskite komandą, kurią buvote anksčiau išsisaugoję (tekstas turi būti įvestas į vieną eilutę):
kubeadm join <master node IP>:6443 --token 
i5s534.38o26swycl0gd0gr --discovery-token-ca-cert-hash 
sha256:4b4c8d9652e925dffe0f28c73984c27d821cd998f63525dd45378a762517dea3

Jeigu vėliau norėsite prijungti kitą serverį, jame naudokite pakeistą žymę po "...--token" teksto, kurią gavote Master serveryje paleidę komandą kubeadm token generate.

5. Baigiamieji veiksmai

Tam, kad patikrintumėte ar viską teisingai atlikote, Master serveryje įveskite šią komandą:
kubectl get nodes

Atsakymas turėtų būti panašus į tokį:
NAME              STATUS     ROLES    AGE     VERSION
master.server.lt   NotReady   master   9m43s   v1.19.2
node.server.lt     NotReady   <none>   47s     v1.19.2

Dabar galite nustatyti savo klasterio tarnybas arba keisti jo dydį, pridėdami papildomų serverius į grupę taip pat, kaip pridėjote pirmąjį Node serverį. Norėdami gauti daugiau informacijos apie grupių valdymą, daug naudingos informacijos pateikiama Kubernetes dokumentacijoje.


Pažymėtos temos:
Norėdami palikti komentarą, turite prisijungti arba registruokis.
Dedikuoti.lt
Šiame forume rasite informaciją kaip atlikti serverio administravimą, konfigūravimą, įvairių tarnybų bei papildomų aplikacijų diegimą. Taip pat pateiksime rekomendacijų, skirtų serverių saugumui, monitoringui ir optimizavimui. Kviečiame prisijungti prie dedikuotų serverių administratorių bendruomenės, dalyvauti diskusijose ir praplėsti savo žinias serverių administravimo srityje!
© 2007 - 2023 Dedikuoti.lt forumas, visos teisės saugumos.