I-KlusterKit: Isixhobo somthombo ovulekileyo sokwenza lula ukuthunyelwa kwe-Kubernetes kwaye ibaleke kwindawo ekwanti kwindawo ekwanti.
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:
etcdadm , i-CLI yolawulo lweqela elilula etcd.nodeadm , i-CLI yolawulo lwe-node eyandisa i-kubeadm kwaye ibeke ukuxhomekeka okufunekayo yi-kubeadm.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
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
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
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
umthombo: www.habr.com