KlusterKit

KlusterKit: Sett ta' għodda ta' sors miftuħ biex jissimplifika l-iskjeramenti ta' Kubernetes u jaħdem f'ambjenti fiżikament iżolati fuq il-post.

KlusterKit

Illum aħna eċċitati li nħabbru li Platform9 huwa open source Klusterkit, sett ta 'tliet għodod, taħt il-liċenzja Apache v2.0 fuq GitHub.

Il-klijenti tagħna jħaddmu softwer f'ċentri tad-dejta privati ​​li ħafna drabi ma jkunux konnessi mal-Internet (għal raġunijiet ta' sigurtà jew raġunijiet oħra). Dawn il-kumpaniji kbar iridu jieħdu vantaġġ minn Kubernetes u jimmodernizzaw l-applikazzjonijiet tagħhom u fl-istess ħin ixerrduhom f'ċentri tad-dejta differenti, li ħafna drabi ma jkunux konnessi mad-dinja ta 'barra. Dan huwa fejn jidħol Klusterkit, li jagħmilha faċli biex jiġu pprovduti u mmaniġġjati clusters K8s f'ambjenti fiżikament iżolati.

Klusterkit jinkludi tliet għodod indipendenti li jistgħu jintużaw flimkien jew separatament biex jimmaniġġjaw iċ-ċiklu tal-ħajja ta’ cluster ta’ produzzjoni ta’ Kubernetes:

  1. etcdadm, CLI għal ġestjoni simplifikata tal-clusters etcd.
  2. nodeadm, CLI għall-amministrazzjoni tan-nodi li testendi kubeadm u tiskjera d-dipendenzi meħtieġa minn kubeadm.
  3. cctl, għodda għall-ġestjoni taċ-ċiklu tal-ħajja tal-clusters li tadotta l-API tal-Cluster mill-komunità Kubernetes u tuża nodeadm u etcdadm biex twassal u żżomm bla xkiel clusters Kubernetes disponibbli ħafna f'ambjenti fuq il-post u anke fiżikament iżolati.

Flimkien, dawn it-tliet għodod iwettqu l-kompiti li ġejjin:

  • Ipprovdi u mmaniġġja faċilment cluster etcd disponibbli ħafna u dashboard Kubernetes f'ambjenti fiżikament iżolati fuq il-post permezz tal-API Cluster.
  • Ir-restawr tal-pannell tal-kontroll tal-cluster wara falliment bl-użu tal-backup etcd.
  • Ippakkjar l-artifacts kollha meħtieġa biex jitwassal Kubernetes f'ambjenti fiżikament iżolati.

Karatteristiċi tal-Klusterkit

  • Appoġġ multi-master (HA cluster K8s).
  • Kunsinna u ġestjoni ta 'raggruppamenti ta' etcd siguri.
  • Xogħol f'ambjenti fiżikament iżolati.
  • Jappoġġja titjib u rollbacks.
  • Flanella (vxlan) bħala CNI għall-backend; Hemm pjanijiet biex jiġu appoġġjati CNIs oħra.
  • Backup u restawr ta 'raggruppamenti etcd wara telf ta' kworum.
  • Jipproteġi l-pannell tal-kontroll milli jispiċċaw il-memorja u l-ħin tas-CPU.

Klusterkit Soluzzjoni Arkitettura

KlusterKit

Għat-tolleranza tal-ħsarat u s-sempliċità, Klusterkit juża fajl wieħed cctl-state.yaml biex jaħżen il-metadata tal-cluster Kubernetes. Permezz tas-cctl CLI tista 'timmaniġġja ċ-ċiklu tal-ħajja ta' cluster Kubernetes fuq kwalunkwe magna li għandha dan il-fajl tal-istat. Dan jista 'jkun laptop ta' operatur jew kwalunkwe kompjuter ieħor li huwa parti mill-cluster Kubernetes.

Cctl jimplimenta u jsejjaħ l-interface cluster-api minn upstream bħala librerija għal operazzjonijiet CRUD fuq clusters. Huwa juża ssh-fornitur, fornitur open-source bare metal cluster-api minn Platform9, li min-naħa tiegħu jsejjaħ etcdadm u nodeadm biex iwettqu operazzjonijiet fuq il-cluster.

Kif tuża Klusterkit u l-komponenti tiegħu:

1 – Kwalunkwe waħda mit-tliet għodda tista' tinġabar faċilment bil-kmand go get:

go get -u github.com/platform9/cctl

go get -u github.com/platform9/nodeadm

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

2 – Dawn l-eżekutibbli jistgħu mbagħad jiġu ppakkjati u kkupjati fil-magni fil-mira fejn il-cluster Kubernetes disponibbli ħafna għandu jkun qed jaħdem. Poġġi l-fajls nodeadm u etcdadm fid-direttorji tal-verżjoni:

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

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

3 – Jekk għandek bżonn orkestra raggruppament Kubernetes lokalment, f'ambjent iżolat fiżikament, id-dipendenzi meħtieġa jistgħu jitniżżlu faċilment minn qabel fuq kompjuter b'aċċess għall-Internet billi tuża l-kmand tat-tniżżil nodeadm u etcdadm. Imbagħad l-oġġetti mniżżla (jiġifieri l-fajl tal-unità kubelet u kubelet għal systemd, fajls eżekutibbli CNI, fajl kubeadm, immaġini kollha tal-kontenitur inklużi Kubernetes, immaġini keepalived u fajl systemd, immaġini tal-kontenitur etcd u fajls ta 'konfigurazzjoni korrispondenti) jistgħu jiġu kkupjati faċilment għal hosts iżolati fiżikament flimkien b'cctl, nodeadm u etcdadm. (Ara d-dettalji fi wiki).

4 - Ladarba kollox ikun f'postu, tista 'toħloq l-ewwel raggruppament Kubernetes b'koppja ta' kmandi:

– L-ewwel oħloq kredenzjali għall-cluster.

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

– Imbagħad oħloq oġġett cluster. –help iġib lista ta’ għażliet appoġġjati.

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

– Fl-aħħarnett, oħloq l-ewwel magna fil-cluster.

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

Aqra aktar dokumentazzjoni fuq GitHub.

Sors: www.habr.com

Żid kumment