«Przegląd możliwości Kubespray»: Różnica między oryginalną wersją a naszym forkiem

23 września 20:00 CEST Sergey Bondariew poprowadzi darmowy webinar „Przegląd możliwości Kubespray”, w którym opowie, jak przygotowuje się kubespray, aby działał szybko, efektywnie i niezawodnie.

Sergey Bondariew omówi różnice między oryginalną wersją a naszym forkiem:

«Przegląd możliwości Kubespray»: Różnica między oryginalną wersją a naszym forkiem

Różnica między oryginalną wersją a naszym forkiem.

Ci, którzy już spotkali się z kubespray, pewnie teraz się zastanawiają, dlaczego przeciwstawiam kubeadm kubespray, skoro kubespray służy do tworzenia klastrów, a na pierwszy rzut oka wygląda jak skrypt do instalacji pakietów i automatyzacji uruchamiania.

Ale tak nie zawsze było, pierwotnie kubespray instalował wszystkie komponenty samodzielnie:

  • tworzył klaster etcd;
  • instalował kubelety, generował certyfikaty, konfiguracje i tokeny dostępu dla statycznych podów kontrolera oraz innych komponentów pomocniczych;
  • tworzył konta serwisowe dla węzłów roboczych i łączył je z klastrem.

Jednak w poprzednim roku zrezygnowali z tej funkcjonalności, zostawiając jedynie kubeadm. Który w tamtym czasie nie był najlepszy. Było mi przykro, więc stworzyłem mój fork, w którym zachowałem klasyczny tryb instalacji, a teraz utrzymuję ten fork w aktualnym stanie, cherry-pickując commity z oryginalnego kubespray do siebie. Po drodze dostosowując klasyczny tryb do nowych zmian.

W rezultacie różnica między klastrami utworzonymi przez mój fork a oryginalnym to kube-proxy i czas ważności certyfikatów.

W moim forku wszystko pozostało tak, jak było wcześniej — kube-proxy uruchamia się jako statyczny pod, certyfikaty są wydawane na 100 lat.

W Kubeadm kube-proxy uruchamia się jako daemonset, a certyfikaty są wydawane na 1 rok i muszą być okresowo odnawiane. Kubeadm w końcu nauczył się to robić jednym poleceniem.

Różnica jest niewielka, i obecnie używamy obu wariantów.

Cechy (niedogodności) przy przemysłowej eksploatacji:

Scenariusz jest uniwersalny, więc nie jest zbyt szybki. Własny można znacznie przyspieszyć, eliminując kontrole i uruchamiając się z gotowego obrazu.

Scenariusz jest złożony, są w nim nielogiczne miejsca, ciężkie dziedzictwo. Instalacja dodatkowych kontrolerów i oprogramowania za pomocą Kubespray - sprawdza się w celach edukacyjnych i testowych. W komercyjnej eksploatacji poleganie na Kubespray nie jest zbyt rozsądne, a aktualizacja oprogramowania jest realizowana metodą "zabiłem - zrobiłem nowy" - co oznacza przerwę w serwisie.

Można dodawać tylko węzły robocze, z masterami są pewne niuanse z certyfikatami, a scenariusz nie pokrywa wszystkich potencjalnych problemów, które mogą wystąpić.

Na przykład miałem problem z kubeadm, gdy padał w momencie dodawania drugiego i trzeciego mastera, a po tym Kubespray wykonywał kubeadm reset na węźle i próbował dodać mastera jeszcze raz.

Problem był w tym, że w momencie awarii drugi instancja etcd zdążył się zarejestrować, więc po jego usunięciu po resecie otrzymaliśmy koszmar - klaster etcd z dwóch węzłów, z których jeden został usunięty, a drugi już nie akceptuje klientów. W rezultacie klaster umarł, nie zdążając się narodzić.

Open source taki, jaki jest.

Wszystko to i wiele więcej na bezpłatnym webinarze „Przegląd możliwości Kubespray23 września o 20:00 czasu moskiewskiego.

Dołącz!

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster