Łańcuch narzędzi DevOps

Diagram etapów DevOps

Łańcuch narzędzi DevOps to zestaw lub kombinacja narzędzi, które pomagają w dostarczaniu, opracowywaniu i zarządzaniu aplikacjami w całym cyklu życia systemów, koordynowanym przez organizację stosującą praktyki DevOps .

Ogólnie rzecz biorąc, narzędzia DevOps pasują do jednego lub więcej działań, które wspierają określone inicjatywy DevOps: Planowanie, Tworzenie, Weryfikacja, Pakowanie, Wydawanie, Konfigurowanie, Monitorowanie i Kontrola wersji.

Łańcuchy narzędziowe

W oprogramowaniu łańcuch narzędzi to zestaw narzędzi programistycznych używanych do wykonywania złożonych zadań związanych z tworzeniem oprogramowania lub do tworzenia oprogramowania, którym jest zwykle inny program komputerowy lub zestaw powiązanych programów. Ogólnie rzecz biorąc, narzędzia tworzące łańcuch narzędzi są wykonywane kolejno, więc wyjściowy lub wynikowy stan środowiska każdego narzędzia staje się środowiskiem wejściowym lub początkowym dla następnego, ale termin ten jest również używany w odniesieniu do zestawu powiązanych narzędzi, które niekoniecznie są wykonywane kolejno.

Ponieważ DevOps jest zbiorem praktyk, które kładą nacisk na współpracę i komunikację zarówno twórców oprogramowania , jak i innych specjalistów w dziedzinie technologii informatycznych (IT), jednocześnie automatyzując proces dostarczania oprogramowania i zmian w infrastrukturze, jego wdrożenie może obejmować zdefiniowanie serii narzędzi używanych w różne etapy cyklu życia; ponieważ DevOps to zmiana kulturowa i współpraca między rozwojem a operacjami, nie ma jednego produktu, który można by uznać za pojedyncze narzędzie DevOps. Zamiast tego na jednym lub kilku etapach cyklu życia używany jest zbiór narzędzi, potencjalnie pochodzących od różnych dostawców.

Etapy DevOps

Plan

Plan składa się z dwóch rzeczy: „definiuj” i „planuj”. Ta czynność odnosi się do wartości biznesowej i wymagań aplikacji. W szczególności działania „Planuj” obejmują:

  • Metryki produkcyjne, obiekty i informacje zwrotne
  • Wymagania
  • Metryki biznesowe
  • Zaktualizuj metryki wersji
  • Plan wydania, harmonogram i uzasadnienie biznesowe
  • Polityka bezpieczeństwa i wymagania

W działania te zaangażowany będzie zespół pracowników IT: właściciele aplikacji biznesowych, rozwój oprogramowania , architekci oprogramowania , zarządzanie ciągłymi wydaniami , oficerowie ds. bezpieczeństwa oraz organizacja odpowiedzialna za zarządzanie produkcją infrastruktury IT .

Tworzyć

Tworzenie składa się z budowania, kodowania i konfigurowania procesu tworzenia oprogramowania . Konkretne działania to:

  • Projekt oprogramowania i konfiguracja
  • Kodowanie, w tym jakość i wydajność kodu
  • Kompilacja oprogramowania i wydajność kompilacji
  • Zwolnienie kandydata

Narzędzia i dostawcy w tej kategorii często pokrywają się z innymi kategoriami. Ponieważ DevOps polega na rozbijaniu silosów, znajduje to odzwierciedlenie w działaniach i rozwiązaniach produktowych. [ wymagane wyjaśnienie ]

Zweryfikować

Weryfikacja jest bezpośrednio związana z zapewnieniem jakości wydania oprogramowania ; działania mające na celu zapewnienie jakości kodu i wdrożenia najwyższej jakości do produkcji. Główne działania w tym zakresie to:

  • Testy akceptacyjne
  • Testy regresyjne
  • Analiza bezpieczeństwa i podatności
  • Wydajność
  • Testowanie konfiguracji

Rozwiązania do działań związanych z weryfikacją ogólnie dzielą się na cztery główne kategorie: automatyzacja testów , analiza statyczna, laboratorium testowe i bezpieczeństwo.

Opakowania

Pakowanie odnosi się do czynności wykonywanych po przygotowaniu wydania do wdrożenia, często określanych również jako inscenizacja lub przedprodukcja / „preprod”. Często obejmuje to zadania i czynności, takie jak:

  • Zatwierdzenie/wstępne zatwierdzenie
  • Konfiguracja pakietu
  • Wyzwalane wydania
  • Zwolnij inscenizację i trzymanie

Uwolnienie

Działania związane z wydaniem obejmują harmonogram, orkiestrację, udostępnianie i wdrażanie oprogramowania w środowisku produkcyjnym i docelowym. Konkretne działania związane z wydaniem obejmują:

  • Koordynacja wydania
  • Wdrażanie i promowanie aplikacji
  • Awarie i odzyskiwanie
  • Zaplanowane/czasowe wydania

Rozwiązania obejmujące ten aspekt łańcucha narzędzi obejmują automatyzację wydań aplikacji , automatyzację wdrażania i zarządzanie wydaniami .

Skonfiguruj

Skonfiguruj działania należą do strony operacyjnej DevOps. Po wdrożeniu oprogramowania mogą być wymagane dodatkowe działania związane z udostępnianiem i konfiguracją infrastruktury IT. Konkretne działania, w tym:

  • Przechowywanie infrastruktury, udostępnianie i konfigurowanie baz danych i sieci
  • Dostarczanie i konfiguracja aplikacji.

Główne rodzaje rozwiązań ułatwiających te czynności to ciągła automatyzacja konfiguracji , zarządzanie konfiguracją oraz infrastruktura jako narzędzia kodu.

Monitor

Monitorowanie jest ważnym ogniwem łańcucha narzędzi DevOps. Pozwala organizacjom IT zidentyfikować konkretne problemy z określonymi wersjami i zrozumieć wpływ na użytkowników końcowych. Podsumowanie działań związanych z Monitorem to:

  • Wydajność infrastruktury IT
  • Reakcja i doświadczenie użytkownika końcowego
  • Metryki i statystyki produkcji

Informacje pochodzące z działań monitorujących często wpływają na działania planu wymagane w przypadku zmian i nowych cykli wydawniczych .

Kontrola wersji

Kontrola wersji jest ważnym ogniwem łańcucha narzędzi DevOps i elementem zarządzania konfiguracją oprogramowania. Kontrola wersji to zarządzanie zmianami w dokumentach, programach komputerowych, dużych witrynach internetowych i innych zbiorach informacji. Podsumowanie działań związanych z kontrolą wersji to:

  • Rozwój nieliniowy
  • Rozwój rozproszony
  • Kompatybilność z istniejącymi systemami i protokołami
  • Projekt oparty na zestawie narzędzi

Informacje z Kontroli wersji często wspierają działania wydawnicze wymagane dla zmian i dla nowych cykli wydawniczych .

Zobacz też