ā€˜Overzicht van de mogelijkheden van Kubespray’: Verschil tussen de originele versie en onze fork

23 september 20.00 MSK Sergey Bondarev geeft een gratis webinar «Overzicht van de mogelijkheden van Kubespray», waarin hij uitlegt hoe ze Kubespray voorbereiden voor een snelle, efficiënte en fouttolerante werking.

Sergey Bondarev zal het verschil uitleggen tussen de originele versie en onze fork:

ā€˜Overzicht van de mogelijkheden van Kubespray’: Verschil tussen de originele versie en onze fork

Het verschil tussen de originele versie en onze fork.

Degenen die al met Kubespray hebben gewerkt, vragen zich misschien af waarom ik kubeadm tegenover Kubespray zet, aangezien Kubespray juist de tool is om een cluster te creƫren, die kubeadm aanroept en op het eerste gezicht eruitziet als een installatie-script voor pakketten en een geautomatiseerde opstart.

Maar dat was niet altijd zo, oorspronkelijk installeerde Kubespray alle componenten zelf:

  • het verzamelde etcd-clusters;
  • het installeerde kubelets, genereerde certificaten, configuraties en toegangs tokens voor statische pods van de control plane en andere systeemcomponenten;
  • het creĆ«erde service-accounts voor werkknopen en voegde ze in het cluster toe.

Maar twee jaar geleden hebben ze deze functionaliteit verwijderd en alleen kubeadm overgelaten. Dat was toen niet zo geweldig. Ik voelde me gekwetst en maakte mijn eigen fork, waarin ik de klassieke installatie methode behield, en eigenlijk onderhoud ik nu deze fork, waarbij ik commits uit de originele Kubespray selectief integreer. Ondertussen pas ik de klassieke modus aan voor nieuwe wijzigingen.

Uiteindelijk is het verschil tussen de clusters die mijn fork en de originele hebben gemaakt: kube-proxy en de geldigheidsduur van certificaten.

In mijn fork is alles gebleven zoals het vroeger was — kube-proxy draait als een statische pod, certificaten worden uitgegeven voor 100 jaar.

In Kubeadm draait kube-proxy als daemonset, en certificaten worden uitgegeven voor 1 jaar en moeten periodiek worden verlengd. Kubeadm heeft eindelijk geleerd dit met ƩƩn opdracht te doen.

Het verschil is klein, en tegenwoordig gebruiken we beide varianten.

Eigenschappen (nadelen) bij industrieel gebruik:

Het scenario is universeel, daarom niet heel snel. Eigen versie kan aanzienlijk versneld worden door controles weg te laten en te starten vanuit een voorbereid beeld.

Het scenario is complex, met onlogische momenten en een zware legacy. De installatie van extra controllers en software via Kubespray is goed voor training en tests. In de productie is het echter niet slim om afhankelijk te zijn van Kubespray, en bovendien is de software-update uitgevoerd met de methode "verwijderd-opnieuw gemaakt" — wat betekent dat er een onderbreking in de service is.

Je kunt alleen werkende knooppunten toevoegen, er zijn enkele nuances met de masters en het script behandelt niet alle mogelijke problemen die zich kunnen voordoen.

Bijvoorbeeld, ik had een probleem met kubeadm, waarbij het faalde op het moment dat ik de tweede en derde master toevoegde, en daarna deed Kubespray een kubeadm reset op het knooppunt en probeerde de master opnieuw toe te voegen.

Het probleem was echter dat tegen de tijd dat het fout ging de tweede instantie van etcd zich al had geregistreerd, en omdat deze ook werd verwijderd na de reset, resulteerden we in een nachtmerrie — een etcd-cluster van twee knooppunten, waarvan er ƩƩn was verwijderd en de andere geen clients meer accepteert. Uiteindelijk is het cluster gestorven voordat het geboren was.

Opensource zoals het is.

Al deze en nog veel meer op de gratis webinar "Overzicht van de mogelijkheden van Kubespray" op 23 september om 20.00 uur MSK.

Doe mee!

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster