Przejdź do głównej zawartości

Co to jest Kubernetes?

Kubernetes to oprogramowanie typu open source do organizowania na potrzeby wdrażania i skalowania kontenerów oraz zarządzania nimi

Kubernetes explained (Platforma Kubernetes bez tajemnic)

Nowoczesne aplikacje w coraz większym stopniu są tworzone za pomocą kontenerów, które są mikrousługami spakowanymi razem ze swoimi zależnościami i konfiguracjami. Kubernetes (wymawiane „ku-ber-ne-tis”) to oprogramowanie open source do wdrażania tych kontenerów i zarządzania nimi na dużą skalę. To także greckie słowo oznaczające sternika lub pilota. Szybciej twórz, dostarczaj i skaluj konteneryzowane aplikacje dzięki platformie Kubernetes, czasem określanej jako „k8s” lub „k-eights”.

Jak działa platforma Kubernetes

Gdy aplikacje stają się coraz większe, obejmując wiele kontenerów wdrożonych na wielu serwerach, ich obsługa staja się coraz bardziej złożona. Aby umożliwić zarządzanie tą złożonością, platforma Kubernetes udostępnia interfejs API typu open source, który pozwala kontrolować, jak i gdzie te kontenery będą uruchamiane.

Platforma Kubernetes organizuje klastry maszyn wirtualnych i planuje uruchamianie kontenerów na tych maszynach wirtualnych na podstawie ich dostępnych zasobów obliczeniowych oraz wymagań poszczególnych kontenerów dotyczących zasobów. Kontenery są grupowane w zasobnikach — podstawowej jednostce operacyjnej platformy Kubernetes. Zasobniki można skalować do odpowiedniego stanu.

Oprócz tego platforma Kubernetes automatycznie zarządza odnajdywaniem usług, wprowadza równoważenie obciążenia, śledzi alokację zasobów oraz skaluje się w oparciu o wykorzystanie zasobów obliczeniowych. Sprawdza też kondycję poszczególnych zasobów i pozwala aplikacjom na samodzielne poprawianie kondycji przez automatyczne ponowne uruchamianie lub replikowanie kontenerów.

Obejrzyj więcej filmów wideo na temat podstaw platformy Kubernetes

Dlaczego warto korzystać z platformy Kubernetes?

Utrzymywanie konteneryzowanych aplikacji w działaniu może być skomplikowane, ponieważ często obejmują one wiele kontenerów wdrożonych na różnych maszynach. Platforma Kubernetes umożliwia planowanie i wdrażanie tych kontenerów, a także skalowanie ich do żądanego stanu i zarządzanie ich cyklami życia. Korzystaj z platformy Kubernetes do implementowania aplikacji bazujących na kontenerach w sposób pozwalający na ich przenoszenie, skalowanie i rozszerzanie.

Przekształcanie obciążeń w przenośne

Ponieważ aplikacje kontenerów są odseparowane od swojej infrastruktury, po uruchomieniu na platformie Kubernetes stają się aplikacjami przenośnymi. Przenieś je z maszyn lokalnych do środowiska produkcyjnego (lokalnego, hybrydowego lub jednego z wielu środowisk w chmurze) — wszystko to przy zachowaniu spójności między środowiskami.

Łatwe skalowanie kontenerów

Definiuj złożone aplikacje konteneryzowane i wdrażaj je globalnie w klastrze serwerów lub nawet w wielu klastrach za pomocą platformy Kubernetes. Gdy platforma Kubernetes skaluje aplikacje stosownie do żądanego stanu, automatycznie monitoruje i utrzymuje kondycję kontenera.

Tworzenie aplikacji łatwiejszych do rozszerzania

Ogromna społeczność open source, w skład której wchodzą deweloperzy i firmy, aktywnie tworzy rozszerzenia i wtyczki dodające do platformy Kubernetes funkcje odpowiadające za zabezpieczenia, monitorowanie i zarządzanie. Dodatkowo program Certified Kubernetes Conformance Program wymaga, aby każda wersja platformy Kubernetes obsługiwała interfejsy API ułatwiające korzystanie z tych ofert społeczności.

Wprowadzenie do platformy Kubernetes

Zobacz, jak rozpocząć wdrażanie konteneryzowanych aplikacji i zarządzanie nimi.

Postępuj zgodnie ze ścieżką szkoleniową

Zyskaj praktyczne doświadczenie ze składnikami, możliwościami i rozwiązaniami platformy Kubernetes.

Twórz z użyciem pełnej platformy Kubernetes

Już sama platforma Kubernetes oferuje przenośność, skalowalność i rozszerzalność, a dodanie kompleksowych możliwości programistycznych, operacyjnych i kontroli zabezpieczeń umożliwia szybsze wdrażanie aktualizacji — bez obniżania bezpieczeństwa i niezawodności — a także oszczędza czas tracony na zarządzanie infrastrukturą. Wdrażając platformę Kubernetes, rozważ zaimplementowanie również następujących rozwiązań:

  1. Automatyzacja zarządzania infrastrukturą, czyli bezserwerowe rozwiązanie Kubernetes, aby wyeliminować rutynowe zadania, takie jak aprowizacja, stosowanie poprawek i wdrażanie uaktualnień.

  2. Narzędzia do tworzenia aplikacji konteneryzowanych oraz przepływy pracy ciągłej integracji i ciągłego wdrażania.

  3. Usługi do zarządzania zabezpieczeniami, nadzorem, tożsamościami i dostępem.

Zapanowanie nad platformą Kubernetes dzięki praktykom DevOps

Gdy aplikacja platformy Kubernetes jest rozbudowywana — przez dodawanie kontenerów, środowisk i zespołów — częstotliwość wydawania nowych wersji zwykle rośnie, a wraz z nią złożoność działań programistycznych i operacyjnych. Zastosowanie praktyk DevOps w środowiskach platformy Kubernetes umożliwia szybkie działanie na dużą skalę przy zapewnieniu ulepszonych zabezpieczeń.

Szybsze dostarczanie kodu dzięki ciągłej integracji/ciągłemu wdrażaniu

Kontenery zapewniają spójny format pakowania aplikacji ułatwiający współpracę między zespołami deweloperskimi i operacyjnymi, natomiast ciągła integracja/ciągłe wdrażanie może skrócić przechodzenie od kodu do kontenera i do klastra platformy Kubernetes do czasu liczonego w minutach dzięki automatyzacji tych zadań.

Wydajnie zarządzaj zasobami w modelu „Infrastruktura jako kod”

Model „infrastruktura jako kod” zapewnia spójność i widoczność zasobów obliczeniowych między zespołami, ograniczając prawdopodobieństwo wystąpienia błędów ludzkich. Ta praktyka współgra z deklaratywną naturą aplikacji na platformie Kubernetes obsługiwanych przez narzędzie Helm. Dzięki powyższej kombinacji możesz definiować aplikacje, zasoby i konfiguracje w niezawodny, możliwy do śledzenia i powtarzalny sposób.

Przyspiesz dostęp do informacji zwrotnych dzięki ciągłemu monitorowaniu

Skróć czas między wykrywaniem błędów i stosowaniem do nich poprawek dzięki pełnemu widokowi zasobów, klastra, interfejsu API platformy Kubernetes, kontenerów i kodu — uwzględniającemu monitorowanie kondycji kontenerów oraz centralne rejestrowanie. Ten widok ułatwia zapobieganie wąskim gardłom zasobów, śledzenie złośliwych żądań i utrzymywanie aplikacji na platformie Kubernetes w dobrej kondycji.

Zachowaj równowagę między szybkością i zabezpieczeniami dzięki narzędziom DevOps

Zapewnij wgląd w czasie rzeczywistym w przepływ pracy DevOps bez obniżania prędkości. Automatycznie stosuj kontrole zgodności i ponowne konfiguracje, aby zabezpieczyć potok kompilacji i wydania, a tym samym swoją aplikację na platformie Kubernetes.

Przykładowy przepływ pracy DevOps z platformą Kubernetes

  1. Szybko iteruj, testuj i debuguj razem różne części aplikacji w tym samym klastrze Kubernetes.
  2. Scalaj i sprawdzaj kod w repozytorium GitHub, aby zapewnić ciągłą integrację. Następnie uruchamiaj automatyczne kompilacje i testy w ramach ciągłego dostarczania.
  3. Weryfikuj źródło oraz integralność obrazów kontenera. Obrazy są przechowywane w kwarantannie, dopóki nie zostaną pomyślnie przeskanowane.
  4. Aprowizuj klastry platformy Kubernetes za pomocą narzędzi takich jak Terraform. Pakiety chart narzędzia Helm zainstalowane za pomocą narzędzia Terraform definiują żądany stan zasobów i konfiguracji aplikacji.
  5. Wymuszaj zasady nadzoru nad wdrożeniami w klastrze Kubernetes.
  6. Potok wydania automatycznie wykonuje wstępnie zdefiniowaną strategię wdrażania dla każdego fragmentu kodu.
  7. Dodawaj inspekcję zasad i automatyczne korygowanie do potoku ciągłej integracji/ciągłego wdrażania. Na przykład tylko potok wydania ma uprawnienia do tworzenia nowych zasobników w Twoim środowisku platformy Kubernetes.
  8. Włącz telemetrię aplikacji, monitorowanie kondycji kontenerów i analizę dzienników w czasie rzeczywistym.
  9. Rozwiązuj problemy dzięki szczegółowym informacjom i informuj o planach na następny sprint.

Wykorzystaj mocne strony rozwiązania Kubernetes dzięki platformie Azure

Zautomatyzuj aprowizację, uaktualnianie, monitorowanie i skalowanie dzięki w pełni zarządzanej usłudze Microsoft Azure Kubernetes (AKS). Skorzystaj z bezserwerowego rozwiązania Kubernetes, czyli prostszego środowiska umożliwiającego przejście od etapu pracy deweloperskiej do etapu produkcji, oraz zabezpieczeń i nadzoru klasy korporacyjnej.

Czerp inspirację i motywację do innowacji ze społeczności Kubernetes

Platforma Kubernetes została utworzona i dobrze się rozwija dzięki pracy tysięcy osób i setek organizacji, które wniosły do tego projektu swoją wiedzę, kod i nieustanne wsparcie dla osób, które z niej korzystają. Buduj sukces swojego oprogramowania na bazie ich ogromnego wysiłku.

35,000
Współautorzy
180,000
Zatwierdzenia
Projekt główny
w serwisie GitHub

Wkład firmy Microsoft w platformę Kubernetes

Wprowadzanie błyskotliwości rozwiązań open source do przedsiębiorstw

Aby organizacje mogły łatwiej wdrażać platformę Kubernetes, a deweloperzy mogli łatwiej z niej korzystać, w ciągu zaledwie trzech lat firma Microsoft potroiła liczbę pracowników biorących udział w projekcie typu open source. Teraz jako trzeci korporacyjny współautor firma Microsoft pracuje nad tym, aby platforma Kubernetes była bardziej przyjazna i dostępna dla przedsiębiorstw, przenosząc najnowsze doświadczenia i najbliższe rozwiązania uzyskane podczas pracy z różnymi klientami do społeczności platformy Kubernetes.

Często zadawane pytania — platforma Kubernetes

  • Wyrusz w tę nadzorowaną podróż, aby zacząć poznawać platformę Kubernetes.

  • Platforma Kubernetes jest przydatna w takich scenariuszach jak przenoszenie aplikacji do chmury czy radzenie sobie z wyzwaniami w zakresie uczenia maszynowego i sztucznej inteligencji.

    Najważniejsze przypadki użycia:

  • Zapoznaj się z najlepszymi rozwiązaniami i wzorcami architektury opracowanymi przez tysiące specjalistów technicznych i partnerów korzystających z platformy Kubernetes.

  • Wdrożenie na platformie Kubernetes umożliwia opisanie żądanego stanu wdrożenia aplikacji. Harmonogram platformy Kubernetes gwarantuje, że rzeczywisty stan jest zgodny z żądanym stanem — i utrzymuje ten stan w przypadku awarii jednego lub większej liczby zasobników. Wdrożenia na platformie Kubernetes umożliwiają ponadto spójne uaktualnianie aplikacji bez przestojów.

    Zobacz strategie wdrażania na platformie Kubernetes
  • Wdrożenie na platformie Kubernetes za pomocą narzędzi DevOps zwykle wymaga użycia repozytorium, takiego jak Git, do zarządzania wersjami. Repozytorium to stanowi początek linii ciągłej integracji/ciągłego wdrażania. W zależności od przyjętego podejścia zmiany w repozytorium wyzwalają działania w zakresie integracji, kompilacji, dostarczania i wdrażania.

    Zobacz szczegółowe informacje o tym, jak usługa AKS współdziała z narzędziami Azure DevOps
  • Platforma Kubernetes współdziała z platformą Docker.

    Platforma Docker zapewnia otwarty standard pakowania i dystrybucji aplikacji konteneryzowanych. Za pomocą platformy Docker możesz tworzyć i uruchamiać kontenery, a także przechowywać i udostępniać obrazy kontenerów.

    Platforma Kubernetes umożliwia organizację rozproszonych, konteneryzowanych aplikacji utworzonych na platformie Docker oraz zarządzanie tymi aplikacjami. Zapewnia także infrastrukturę potrzebną do wdrażania i uruchamiania tych aplikacji w klastrze maszyn.

    Dowiedz się więcej o różnicach między platformami Kubernetes i Docker

Zasoby

Dowiedz się więcej o usłudze AKS

Obejrzyj wideo na temat usługi AKS oraz seminaria internetowe platformy Azure na żądanie, aby zapoznać się z pokazami, najważniejszymi funkcjami i sesjami technicznymi.

Dołącz do innych użytkowników usługi AKS w serwisie GitHub, na konferencji KubeCon lub na spotkaniu dotyczącym platformy Kubernetes w Twojej okolicy.

Gdy się przygotujesz, wypróbuj usługę Kubernetes bezpłatnie na platformie Azure