KlusterKit

KlusterKit: Iyo yakavhurika sosi yekushandisa yekurerutsa Kubernetes deployments uye inomhanya munzvimbo dzakasarudzika pane-zvivakwa.

KlusterKit

Nhasi tiri kufara kuzivisa kuti Platform9 yakavhurika sourcing Klusterkit, sutu yezvishandiso zvitatu, pasi peApache v2.0 rezinesi paGitHub.

Vatengi vedu vanoburitsa software munzvimbo dzakavanzika dzedhata iyo kazhinji isina kubatana neInternet (nekuda kwekuchengetedza kana zvimwe zvikonzero). Aya makambani makuru anoda kutora mukana weKubernetes uye kugadzirisa maapplication avo uye panguva imwechete anoaburitsa munzvimbo dzakasiyana dze data, izvo kazhinji zvisina kubatana nenyika yekunze. Apa ndipo panouya Klusterkit, zvichiita kuti zvive nyore kupa uye kubata maK8s masumbu munzvimbo dzakasarudzika.

Klusterkit inosanganisira matatu akazvimirira maturusi anogona kushandiswa pamwechete kana akaparadzana kubata hupenyu hweKubernetes dhizaini yekugadzira:

  1. etcdadm, CLI yekurerutsa etcd cluster management.
  2. nodeadm, CLI ye node manejimendi iyo inowedzera kubeadm uye inotumira zvinovimbika zvinodikanwa nekubeadm.
  3. cctl, cluster lifecycle management tool iyo inotora iyo Cluster API kubva munharaunda yeKubernetes uye inoshandisa nodeadm uye etcdadm kuburitsa zvisina musono uye kuchengetedza inowanikwa zvakanyanya Kubernetes masumbu munzvimbo-panzvimbo uye kunyangwe nharaunda dzakarasika.

Pamwe chete, aya maturusi matatu anoita anotevera mabasa:

  • Kupa zviri nyore uye gadzirisa inowanikwa yakawanda etcd cluster uye Kubernetes dashboard munzvimbo dzakasarudzika pane-nzvimbo kuburikidza neCluster API.
  • Kudzoreredza iyo cluster control panel mushure mekutadza kushandisa etcd backup.
  • Kurongedza zvese zvigadzirwa zvinodiwa kuendesa Kubernetes munzvimbo dzakasarudzika.

Klusterkit zvinhu

  • Multi-master rutsigiro (HA cluster K8s).
  • Kuendesa uye manejimendi akachengeteka etcd masumbu.
  • Kushanda munzvimbo dzakasarudzika.
  • Inotsigira rolling upgrades uye rollbacks.
  • Flannel (vxlan) seCNI yekumashure; Pane zvirongwa zvekutsigira mamwe maCNI.
  • Backup uye kudzoreredza kweetcd masumbu mushure mekurasikirwa kwequorum.
  • Inodzivirira iyo control panel kubva mukupererwa nendangariro uye CPU nguva.

Klusterkit Solution Architecture

KlusterKit

Nekuregerera kukanganisa uye kuve nyore, Klusterkit inoshandisa imwechete cctl-state.yaml faira kuchengetedza Kubernetes cluster metadata. Kuburikidza necctl CLI iwe unogona kubata hupenyu hweKubernetes cluster pane chero muchina une iyi state faira. Iyi inogona kunge iri laptop yemushandisi kana chero imwe komputa iri chikamu cheKubernetes cluster.

Cctl inoshandisa uye inodaidza iyo cluster-api interface kubva kumusoro seraibhurari yeCRUD mashandiro pamasumbu. Anoshandisa ssh-mupi, yakavhurika-sosi isina simbi cluster-api mupi kubva kuPlatform9, iyo inodaidza etcdadm uye nodeadm kuita mashandiro pasumbu.

Maitiro ekushandisa Klusterkit uye zvikamu zvayo:

1 - Chero cheatatu maturusi anogona kuunganidzwa nyore nekuenda tora kuraira:

go get -u github.com/platform9/cctl

go get -u github.com/platform9/nodeadm

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

2 - Izvi zvinogoneka zvinogona kuiswa pasuru uye kukopwa kumichina yakanangwa uko iyo inonyanya kuwanikwa Kubernetes cluster inofanirwa kunge ichimhanya. Isa iyo nodeadm uye etcdadm mafaera mumadhairekitori eshanduro:

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

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

3 - Kana iwe uchida kuronga Kubernetes cluster munharaunda, munzvimbo yakasarudzika, zvinodiwa zvinogona kutorwa zviri nyore pamberi pakombuta ine Internet uchishandisa nodeadm uye etcdadm download command. Ipapo zvinhu zvakadhawunirodwa (kureva kubelet uye kubelet unit faira ye systemd, CNI inotepfenyurwa mafaera, kubeadm faira, ese emidziyo mifananidzo inosanganisira Kubernetes, keepalived mufananidzo uye systemd faira, etcd mudziyo mufananidzo uye inoenderana mafaera ekumisikidza) inogona kuteedzerwa nyore kune yakasarudzika mauto pamwe chete. ne cctl, nodeadm uye etcdadm. (Ona tsanangudzo mu wiki Vasai).

4 - Kana zvese zvave panzvimbo, unogona kugadzira yekutanga Kubernetes cluster ine akati wandei mirairo:

-Kutanga gadzira zvitupa zve cluster.

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

- Wobva wagadzira chinhu chesumbu. -help inounza rondedzero yesarudzo dzinotsigirwa.

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

- Pakupedzisira, gadzira muchina wekutanga musumbu.

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

Verenga zvimwe zvinyorwa pa GitHub.

Source: www.habr.com

Voeg