I-KlusterKit

I-KlusterKit: Ikhithi yamathuluzi yomthombo ovulekile yokwenza lula ukuthunyelwa kwe-Kubernetes futhi isebenze ezindaweni ezihlala zodwa ngokoqobo emagcekeni

I-KlusterKit

Namuhla sijabule ukumemezela ukuthi i-Platform9 ivulekile ukuthola i-Klusterkit, uchungechunge lwamathuluzi amathathu, ngaphansi kwelayisensi ye-Apache v2.0 ku-GitHub.

Amakhasimende ethu akhipha isofthiwe ezikhungweni zedatha eziyimfihlo ngokuvamile ezingaxhunywanga ku-inthanethi (ngenxa yokuphepha noma ezinye izizathu). Lezi zinkampani ezinkulu zifuna ukusizakala nge-Kubernetes futhi zenze izinhlelo zabo zibe zesimanjemanje futhi ngesikhathi esifanayo zizikhiphe ezikhungweni zedatha ezihlukene, ezivame ukungaxhunywanga emhlabeni wangaphandle. Yilapho i-Klusterkit ingena khona, ikwenze kube lula ukuhlinzeka nokuphatha amaqoqo e-K8s ezindaweni ezingazodwa ngokomzimba.

I-Klusterkit ifaka amathuluzi amathathu azimele angasetshenziswa ndawonye noma ngokwehlukana ukuze alawule umjikelezo wempilo weqoqo lokukhiqiza le-Kubernetes:

  1. njlldadm, i-CLI yokuphatha iqoqo le-etcd elenziwe lula.
  2. nodeadm, i-CLI yokuphathwa kwe-node enweba i-kubeadm futhi ikhiphe ukuncika okudingwa yi-kubeadm.
  3. cctl, ithuluzi lokuphatha umjikelezo wokuphila kweqoqo elamukela i-Cluster API kusukela kumphakathi wakwa-Kubernetes futhi lisebenzisa i-nodeadm kanye nokunye ukuletha ngaphandle komthungo nokugcina amaqoqo e-Kubernetes atholakala kakhulu endaweni kanye nasezindaweni ezingazodwa ngokomzimba.

Ehlangene, lawa mathuluzi amathathu enza imisebenzi elandelayo:

  • Nikeza kalula futhi uphathe iqoqo le- etcd elitholakala kakhulu kanye nedeshibhodi ye-Kubernetes ezindaweni ezizimele zodwa ngokoqobo usebenzisa i-Cluster API.
  • Ukubuyisela iphaneli yokulawula yeqoqo ngemva kokwehluleka ukusebenzisa isipele njlld.
  • Ukupakisha wonke ama-artifact adingekayo ukuze kulethwe i-Kubernetes ezindaweni ezingazodwa ngokomzimba.

Izici ze-Klusterkit

  • Usekelo lwe-Multi-master (i-HA cluster K8s).
  • Ukulethwa nokuphathwa kwamaqoqo avikelekile e- etcd.
  • Ukusebenza ezindaweni ezingazodwa ngokomzimba.
  • Isekela ukuthuthukiswa nokuhlehliswa emuva.
  • I-Flannel (vxlan) njenge-CNI ye-backend; Kunezinhlelo zokweseka amanye ama-CNI.
  • Ukwenza ikhophi yasenqolobaneni nokubuyiselwa kwamaqoqo etcd ngemva kokulahlekelwa ikhoramu.
  • Ivikela iphaneli yokulawula ekuphelelweni yinkumbulo nesikhathi se-CPU.

I-Klusterkit Solution Architecture

I-KlusterKit

Ngokubekezelela amaphutha nokuba lula, i-Klusterkit isebenzisa ifayela elilodwa le-cctl-state.yaml ukuze igcine imethadatha yeqoqo le-Kubernetes. Nge-cctl CLI ungaphatha umjikelezo wempilo weqoqo le-Kubernetes kunoma yimuphi umshini onaleli fayela lesimo. Lokhu kungaba ikhompuyutha ephathekayo yesisebenzisi noma enye ikhompyutha eyingxenye yeqoqo le-Kubernetes.

I-Cctl isebenzisa futhi ibize isixhumi esibonakalayo se-cluster-api ukusuka phezulu njengomlabhulali wemisebenzi ye-CRUD kumaqoqo. Uyasebenzisa ssh-umhlinzeki, umhlinzeki ovulekile we-metal cluster-api we-api ovela ku-Platform9, yona ebiza i- etcdadm ne-nodeadm ukwenza imisebenzi kuqoqo.

Indlela yokusebenzisa i-Klusterkit nezingxenye zayo:

I-1 - Noma yimaphi amathuluzi amathathu angaqoqwa kalula ngokuya ngokuthola umyalo:

go get -u github.com/platform9/cctl

go get -u github.com/platform9/nodeadm

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

I-2 - Lokhu okusebenzisekayo kungapakishwa futhi kukopishwe emishinini eqondiwe lapho iqoqo le-Kubernetes elitholakala kakhulu kufanele lisebenze. Beka amafayela we-nodeadm kanye ne-ettdadm ohlwini lwemibhalo lwenguqulo:

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

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

3 – Uma udinga ukuhlela iqoqo le-Kubernetes endaweni yangakini, endaweni engayodwa, ukuncika okudingekayo kungalandwa kalula kusengaphambili kukhompuyutha enokufinyelela ku-inthanethi kusetshenziswa umyalo wokulanda we-nodeadm kanye nokunye. Bese izinto ezilandiwe (okungukuthi, kubelet kanye nefayela leyunithi ye-kubelet ye-systemd, amafayela asebenzisekayo e-CNI, ifayela le-kubeadm, zonke izithombe zeziqukathi ezihlanganisa i-Kubernetes, isithombe esigciniwe kanye nefayela le-systemd, isithombe sesitsha njll. nge-cctl, nodeadm kanye nokunye. (Bheka imininingwane ku wiki).

I-4 - Uma konke sekumi ngomumo, ungakha iqoqo lokuqala le-Kubernetes ngemiyalo embalwa:

- Okokuqala dala imininingwane yeqoqo.

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

– Bese udala into yeqoqo. -help iletha uhlu lwezinketho ezisekelwayo.

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

– Ekugcineni, dala umshini wokuqala kuqoqo.

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

Funda imibhalo eyengeziwe ku GitHub.

Source: www.habr.com

Engeza amazwana