Powrót do bloga

Instalowanie oprogramowania na Kubernetes za pomocą menedżera pakietów Helm 3 w systemie Windows

Instalowanie oprogramowania na Kubernetes za pomocą menedżera pakietów Helm 3 w systemie Windows

Jeśli masz doświadczenie w programowaniu, prawdopodobnie znasz pojęcie menedżera pakietów. Menedżery pakietów umożliwiają instalowanie zależności, aktualizowanie i cofanie wersji i tak dalej. W tym samouczku przyjrzymy się bardzo popularnemu menedżerowi pakietów dla Kubernetes, o nazwie Helm.

Helm pomaga w zarządzaniu aplikacjami Kubernetes. Za pomocą Helm można zdefiniować aplikację Kubernetes, określając jej metadane, zależności i konfiguracje. Helm może również instalować aplikacje w Kubernetes, a także aktualizować i cofać ich wersje. Na koniec możesz udostępnić swoją aplikację innym za pomocą pliku Helm. W tym samouczku pokażemy Ci, jak zainstalować Helm 3, a także jak konfigurować, aktualizować, wycofywać i zarządzać chartami i wydaniami w systemie operacyjnym Windows.

Zacznijmy!

Wymagania wstępne

Zanim rozpoczniemy samouczek, musisz upewnić się, że masz zainstalowane następujące elementy:

  • Jeśli nie masz skonfigurowanego Kubernetes w systemie Windows, najprostszym sposobem na rozpoczęcie pracy jest Docker Desktop. Przejdź do https://www.docker.com/products/docker-desktop. Pobierz i zainstaluj Docker Desktop. W tym samouczku będziemy pracować w systemie Windows. Dlatego będziemy musieli zainstalować WSL 2 Backend. Jest to podsystem Linux dla systemu Windows i umożliwia obsługę platformy Docker:

Docker Desktop Kubernetes with Helm

Gdy Docker Desktop będzie gotowy, przejdź do Settings -> Kubernetes, i zaznacz opcję Enable Kubernetes:

Docker Settings Kubernetes with Helm

Enable k8s Kubernetes with Helm

Aby sprawdzić, czy wszystko działa poprawnie, przejdź do terminala/PowerShella (w zależności od używanego systemu) i wpisz poniższe polecenie:

Jeśli zobaczysz poniższe dane wyjściowe, możesz kontynuować:

kubectl Kubernetes with Helm

Alternatywnie, jeśli zdecydujesz się na pracę w systemie Ubuntu, możesz skorzystać z naszego szczegółowego przewodnika: How to Install and Use Kubernetes on Ubuntu 20.04.

Ponadto, zanim przejdziemy do procesu instalacji, przyjrzyjmy się kilku kluczowym pojęciom związanym z Helm.

  • Charty

 Pliki YAML Kubernetes są pakowane w charty Helm.

  • Repozytoria Helm

Helm zapewnia obsługę repozytoriów. Repozytorium Helm to miejsce, w którym przechowywane są charty Helm, dzięki czemu inni mogą z nich korzystać. Helm umożliwia tworzenie własnych repozytoriów, a także obsługuje repozytoria firm trzecich.

  • Tiller

Tiller to komponent serwerowy Helm. Musi być zainstalowany w klastrze Kubernetes. Pobiera on chart Helm i odpowiednio konfiguruje klaster.

Możesz również zapoznać się z naszym wpisem na blogu, który zawiera szczegółowy przegląd Helm i wyjaśnia metody Helm ułatwiające wdrażanie aplikacji w Kubernetes.

Teraz jesteśmy gotowi, aby zacząć!

Krok 1: Zainstaluj Helm 3

Instalacja Helm 3 to prosty proces. Wydania są dostępne na stronie Helm w serwisie GitHub. Możesz pobrać wersję, której będziesz używać, w zależności od wybranego systemu operacyjnego. W tym samouczku będziemy korzystać z systemu operacyjnego Windows, więc w przypadku systemu Windows wykonaj poniższe kroki:

  1. Na stronie GitHub pobierz pliki binarne Helm dla systemu Windows.

  2. Po zakończeniu pobierania znajdziesz skompresowane archiwum w folderze Pobrane lub w miejscu, do którego zostało pobrane.

  3. Następnie przenieś to archiwum w dogodne miejsce i rozpakuj je. W rozpakowanej zawartości powinieneś znaleźć plik helm.exe w rozpakowanej zawartości:
    helm_binary

  4. Skopiuj lokalizację folderu i dodaj ją do zmiennej PATH w zmiennych środowiskowych systemu.

  5. Po zakończeniu otwórz terminal i wpisz poniższe polecenie:

Jeśli zobaczysz poniższe dane wyjściowe, instalacja Helm została zakończona pomyślnie. Możesz przejść do kolejnych kroków:

helm

Krok 2: Skonfiguruj repozytoria i zainstaluj chart Helm

Helm obsługuje dostęp do repozytoriów i zarządzanie nimi. Repozytoria to miejsca, w których przechowywane są charty Helm. Początkowo Helm nie ma własnego repozytorium. Zamiast tego Helm zachęca menedżerów i specjalistów DevOps do tworzenia własnych repozytoriów. Oznacza to, że jeśli chcesz mieć MongoDB w swoim klastrze Kubernetes, musisz samodzielnie dodać je do repozytorium Helm. Aby ułatwić wyszukiwanie repozytoriów, możesz użyć Artifact.io. Jest to katalog open-source dla wszystkich chartów Helm, zarządzany przez CNCF.

Poniżej pokażemy, jak skonfigurować repozytorium oraz pobrać i zainstalować oprogramowanie. Jako przykład weźmiemy instalację MongoDB. Załóżmy, że chcesz zainstalować MongoDB na swoim klastrze Kubernetes. Wykonaj poniższe kroki, aby przeprowadzić instalację:

  1. Najpierw przejdź do https://artifacthub.io.

  2. Następnie wyszukaj MongoDB. Po wyszukaniu zobaczysz, że dostępnych jest wiele opcji. Ta, która nas interesuje, to MongoDB by Bitnami:
    search_mongodb

  3. Po zakończeniu wyszukiwania zobaczysz różne opcje. Przy każdym charcie widoczny jest wydawca, wersja i inne istotne informacje. Gdy znajdziesz żądany chart, musisz go wybrać. Tutaj klikamy na MongoDB by Bitnami:
    select_mongodb

  4. Teraz może rozpocząć się część techniczna. Jeśli spojrzysz na ogólny opis, zobaczysz, że dostępny jest dobry przewodnik dla każdego, kto chce zainstalować dowolną z usług. Możesz sprawdzić różne opcje, konfiguracje, parametry, sposób usunięcia chartu i wszystko inne, o czym możesz potrzebować informacji. Znajdź przycisk Install i kliknij go:
    mongodb_install Kubernetes with Helm

  5. Oto wszystko, czego potrzebujesz do zainstalowania MongoDB. Najpierw musisz dodać repozytorium a następnie zainstalować chart. Aby dodać repozytorium, otwórz terminal i wpisz polecenie:

Zobaczysz poniższy wynik:

repo_add_bitnami

Teraz, gdy masz już skonfigurowane repozytorium, musisz zainstalować chart. Skopiuj polecenie z okna dialogowego, a następnie je uruchom:

Po zakończeniu procesu wszystko jest gotowe z MongoDB.

Krok 3: Zarządzanie wydaniami

W tworzeniu oprogramowania zarządzanie wydaniami jest kluczowe. Zawsze nadchodzi moment, kiedy trzeba zaktualizować wersję lub cofnąć się do poprzedniej. Na szczęście zarządzanie wydaniami w Helm jest stosunkowo prostym procesem. Helm zachowuje numery wersji, dzięki czemu zawsze można powrócić do poprzedniej wersji. Podobnie, załóżmy, że Twoja aplikacja jest wdrożona i działa produkcyjnie, a Ty musisz zmienić konfigurację – Helm również to obsługuje. Poniżej omówimy kilka dobrych praktyk, które pomogą Ci przeprowadzić te operacje.

  • Jak zaktualizować aplikację

Załóżmy, że w Twoim pliku values.YAML wskazujesz, że musisz mieć uruchomione dwie instancje aplikacji. Może to wynikać z faktu, że Twoja aplikacja musi być wysoce dostępna. Jednak później zdajesz sobie sprawę, że aplikacja wymaga trzech instancji. Bez Helma musiałbyś najpierw wyłączyć aplikację, a następnie ją skonfigurować i ponownie wdrożyć. Używając Helma, możesz najpierw wprowadzić zmiany w pliku values.YAML a następnie po prostu wykonać poniższe polecenie. W katalogu, w którym znajdują się pliki Helma, wykonaj następujące polecenie:

  • Jak wycofać wydanie

Załóżmy teraz, że Twoje wydanie uległo awarii. Być może skonfigurowałeś błędne numery portów lub ścieżki. Aby powrócić do dowolnej poprzedniej wersji, wystarczy wykonać poniższe polecenie, a Helm przywróci wydanie do poprzedniej wersji:

Helm zajmie się wszystkimi wydaniami i wersjonowaniem. To jedna z największych zalet korzystania z Helma z Kubernetesem. Aby zobaczyć wszystkie wydania dowolnej aplikacji, wykonaj poniższe polecenie w katalogu zawierającym charty Helm i pliki YAML:

Krok 4: Utwórz własny chart

Na koniec, gdy już dobrze czujesz się z Helmem i rozumiesz, jak działa, nadszedł czas na stworzenie własnego chartu. Tworząc własny, niestandardowy chart, możesz łatwo dystrybuować swoją aplikację, a także hostować ją w dowolnym repozytorium. Tworzenie własnego chartu jest dość prostym procesem, jeśli wykonasz kroki, które opisujemy poniżej. Najpierw otwórz terminal i wykonaj poniższe polecenie:

Spowoduje to utworzenie katalogu o podanej nazwie. Używamy nazwy my-app. Zobaczmy zawartość folderu:

Otrzymasz poniższą strukturę:

Oto podsumowanie zawartości wyjściowej:

  • folder charts – Służy do dodawania zależnych wykresów.
  • folder templates – Konfiguracja, która zostanie wdrożona w klastrze.
  • Plik YAML – Zarys struktury wykresu Helm.
  • Plik YAML – Informacje o formatowaniu do konfiguracji wykresu.

Następnie wykonaj poniższe kroki, aby zainstalować i skonfigurować swój wykres:

  • Skonfiguruj obraz i pobieranie (pull)

Otwórz plik values.YAML . Znajdź w nim węzeł image. Następnie możesz go skonfigurować według własnego uznania. Możliwe wartości to IfNotPresent, Always, Latest. Pełny zestaw wartości można znaleźć w oficjalnej dokumentacji.

  • Nadpisz nazwę wykresu

Ten krok jest opcjonalny, więc możesz go pominąć, jeśli chcesz:
override

  • Nazwa usługi

Otwórz plik values.YAML i zlokalizuj serviceName. Następnie dodaj żądaną nazwę. Dobrze jest mieć przygotowaną nazwę przed instalacją wykresu:
service_name

  • Zainstaluj wykres

Na koniec, aby zainstalować wykres, uruchom poniższe polecenie:

Zalecamy dokładne zapoznanie się ze wszystkimi dostępnymi opcjami konfiguracji wykresu przed wdrożeniem go w klastrze.

Dlaczego programiści uwielbiają Helm

Helm zyskuje popularność wśród programistów i specjalistów DevOps, którzy muszą od czasu do czasu uruchamiać i zatrzymywać wdrożenia. Oto niektóre z głównych zalet Helm:

  1. Helm upraszcza proces wdrażania. Nie wprowadza niczego nowego do nauki, raczej sprawia, że istniejące wdrożenia YAML są łatwe do skonfigurowania przez użytkownika.

  2. Zamiast częstej zmiany konfiguracji, takiej jak liczba klastrów czy portów, Helm ułatwia jej konfigurację. Jedyne, co użytkownik musi zrobić, to zaktualizować wartości w pliku values.YAML .

  3. Helm umożliwia udostępnianie aplikacji innym użytkownikom poprzez pakowanie jej do repozytoriów.

Podsumowanie

W tym samouczku omówiliśmy, jak od podstaw skonfigurować menedżer pakietów Helm w systemie Windows. Przyjrzeliśmy się różnym kluczowym pojęciom, które należy jasno zrozumieć, aby w pełni wykorzystać możliwości Helm. Zobaczyliśmy również różne funkcjonalności dostępne w zbadanych repozytoriach Helm. Powinieneś teraz czuć się swobodnie z Helm i wdrożyć go w swoim następnym projekcie/wdrożeniu Kubernetes.

Aby poszerzyć swoją wiedzę na temat Kubernetes i jego funkcjonalności, możesz zapoznać się z innymi samouczkami na naszym blogu:

Udanego korzystania!

author

Pranay Kapgate

Autor · CloudSigma

Preslav Dobrev jest projektantem kreatywnym w CloudSigma, skupiającym się na spójnej tożsamości biznesowej przy wykorzystaniu tradycyjnych i innowacyjnych kanałów marketingowych. Biegle łączy wizję artystyczną ze strategicznym marketingiem, tworząc wywierające wpływ narracje marki.

Komentarze

Brak komentarzy. Bądź pierwszy.