KlusterKit

I-KlusterKit: Isixhobo somthombo ovulekileyo sokwenza lula ukuthunyelwa kwe-Kubernetes kwaye ibaleke kwindawo ekwanti kwindawo ekwanti.

KlusterKit

Namhlanje siyavuya ukwazisa ukuba i-Platform9 ivule i-Klusterkit, iseti yezixhobo ezintathu, phantsi kwelayisensi ye-Apache v2.0 kwi-GitHub.

Abathengi bethu bakhupha isoftware kumaziko edatha abucala ahlala engaqhagamshelwanga kwi-Intanethi (ngenxa yokhuseleko okanye ezinye izizathu). Ezi nkampani ezinkulu zifuna ukusebenzisa i-Kubernetes kwaye ziphucule izicelo zazo kwaye kwangaxeshanye zikhuphele kumaziko ahlukeneyo edatha, ahlala engadityaniswanga kwihlabathi langaphandle. Apha kulapho i-Klusterkit ingena khona, isenza kube lula ukulungiselela nokulawula amaqela e-K8s kwiindawo ezikwanti ngokwasemzimbeni.

I-Klusterkit ibandakanya izixhobo ezithathu ezizimeleyo ezinokuthi zisetyenziswe kunye okanye ngokwahlukeneyo ukulawula ubomi beqela lemveliso ye-Kubernetes:

  1. etcdadm, i-CLI yolawulo lweqela elilula etcd.
  2. nodeadm, i-CLI yolawulo lwe-node eyandisa i-kubeadm kwaye ibeke ukuxhomekeka okufunekayo yi-kubeadm.
  3. cctl, isixhobo solawulo lomjikelo wobomi beqela esamkela i-API ye-Cluster kuluntu lwase-Kubernetes kwaye isebenzisa i-nodeadm kunye ne- etcdadm ukuhambisa ngaphandle komthungo kunye nokugcina amaqela e-Kubernetes afumanekayo kakhulu kwindawo kunye nakwiindawo ezizimeleyo ngokwasemzimbeni.

Ngokudibeneyo, ezi zixhobo zithathu zenza le misebenzi ilandelayo:

  • Ukubonelela ngokulula kwaye ulawule iqela elifumaneka kakhulu etcd kunye nedeshibhodi yeKubernetes kwindawo ekwanti ngokwasemzimbeni nge-Cluster API.
  • Ukubuyisela indawo yolawulo yeqela emva kokusilela usebenzisa etcd backup.
  • Ukupakisha zonke izinto zakudala ezifunekayo ukuhambisa iKubernetes kwindawo ekwanti ngokwasemzimbeni.

Iimpawu zeKlusterkit

  • Inkxaso ye-Multi-master (i-HA cluster K8s).
  • Unikezelo nolawulo lwamaqela akhuselekileyo etcd.
  • Ukusebenza kwiindawo ezizimeleyo ngokwasemzimbeni.
  • Ixhasa ukuphuculwa okuqengqelekayo kunye nee-rollbacks.
  • I-Flannel (vxlan) njenge-CNI ye-backend; Kukho izicwangciso zokuxhasa ezinye ii-CNIs.
  • Ugcino kunye nokubuyiselwa kwamaqela etcd emva kokulahleka kwekhoram.
  • Ikhusela indawo yolawulo ekuphelelweni yinkumbulo kunye nexesha le-CPU.

Klusterkit Solution Architecture

KlusterKit

Ukunyamezela iimpazamo kunye nokulula, i-Klusterkit isebenzisa ifayile enye ye-cctl-state.yaml ukugcina imetadata yeqela le-Kubernetes. Nge-cctl CLI ungalawula umjikelo wobomi beqela le-Kubernetes kuwo nawuphi na umatshini onale fayile yelizwe. Oku kunokuba yilaptop yomsebenzisi okanye nayiphi na enye ikhompyuter eyinxalenye yeqela leKubernetes.

I-Cctl isebenzisa kwaye ibiza i-interface ye-cluster-api ukusuka phezulu njengethala leencwadi lemisebenzi ye-CRUD kumaqela. Uyasebenzisa ssh-umnikezeli, i-open-source-open-source bare metal cluster-api provider ukusuka kwi-Platform9, leyo ibiza i- etcdadm kunye ne-nodeadm ukwenza imisebenzi kwi-cluster.

Uyisebenzisa njani iKlusterkit kunye nezinto zayo:

1-Nasiphi na kwezi zixhobo zithathu zinokuqokelelwa ngokulula ngokuhamba ufumane umyalelo:

go get -u github.com/platform9/cctl

go get -u github.com/platform9/nodeadm

go get -u github.com/kubernetes-sigs/etcdadm

I-2 - Ezi zinto ziphunyezwayo zinokupakishwa kwaye zikopishwe kumatshini ekujoliswe kuwo apho iqela le-Kubernetes elifumaneka kakhulu kufuneka lisebenze. Beka iifayile ze-nodeadm kunye ne- etcdadm kuluhlu lwezalathisi zenguqulelo:

cp $GOPATH/bin/nodeadm /var/cache/ssh-provider/nodeadm//

cp $GOPATH/bin/etcdadm /var/cache/ssh-provider/etcdadm//

I-3 - Ukuba ufuna ukucwangcisa i-Kubernetes cluster yendawo, kwindawo ehlala yedwa, ukuxhomekeka okufunekayo kunokukhutshelwa ngokulula kwangaphambili kwikhompyutheni kunye nokufikelela kwi-Intanethi usebenzisa umyalelo wokukhuphela we-nodeadm kunye nokunye. Emva koko izinto ezikhutshelweyo (okt kubelet kunye nefayile yeyunithi ye-kubelet ye-systemd, iifayile eziphunyeziweyo ze-CNI, ifayile ye-kubeadm, yonke imifanekiso yesikhongozeli esiquka i-Kubernetes, umfanekiso ogciniweyo kunye nefayile yenkqubo, njl.njl umfanekiso wesikhongozeli kunye neefayile zoqwalaselo ezihambelanayo) inokukhutshelwa ngokulula kwinginginya ezizimeleyo ngokwazo. nge cctl, nodeadm kunye etcdadm. (Jonga iinkcukacha kwi wiki).

I-4 - Nje ukuba yonke into isendaweni, unokwenza iqela lokuqala le-Kubernetes ngemiyalelo embalwa:

– Qala ngokwenza iziqinisekiso zeqela.

$GOPATH/bin/cctl create credential --user root --private-key ~/.ssh/id_rsa

– Emva koko yenza into yeqela. -help izisa uluhlu lweendlela ezixhaswayo.

$GOPATH/bin/cctl create cluster --pod-network 192.168.0.0/16 --service-network 192.169.0.0/24

- Ekugqibeleni, yenza umatshini wokuqala kwiqela.

$GOPATH/bin/cctl create machine --ip $MACHINE_IP --role master

Funda ngakumbi amaxwebhu apha GitHub.

umthombo: www.habr.com

Yongeza izimvo