Print Friendly, PDF & Email

W nurcie IT, DevOps jest nadal modnym słowem. Jest taki moment, w którym nowa technologia się łamie, przyjęta przez oświeconych ludzi, staje się dostępna dla wszystkich i rozprzestrzenia się. Tak stało się z DevOps w ciągu ostatnich kilku lat. W ciągu najbliższych kilku lat usłyszysz nowe modne słowo: NoOps.

Jaka jest różnica między DevOps a NoOps?

DevOps jest połączeniem rozwoju i operacji i jest praktyką współpracy inżynierów, deweloperów oraz administratorów w celu zdefiniowania procesów, które kierują cyklem życia usługi, od projektu po dostawę.

NoOps oznacza brak operacji. Jego filozofią jest usunięcie wszystkich części zarządzania platformą i zmniejszenie tarcia między programistami a infrastrukturą.

Dlaczego potrzebujemy DevOps?

Wymagania techniczne i biznesowe są coraz trudniejsze, a usługi IT stają się coraz bardziej złożone. Dlatego dostawa jest tak ważna i dlatego musimy zaaranżować cały proces.

Dzięki chmurze nie potrzebujemy więcej administratorów systemu, ale umiejętności techniczne i biznesowe DevOps są bardzo poszukiwane. Aby wdrożyć DevOps i przenieść się w miejsce, w którym płyną korzyści dla zespołu, musisz pomyśleć dlaczego potrzebujesz automatyzacji.

Dlaczego wcześniej nie mieliśmy DevOps?

Odpowiedzi na to pytanie jest wiele. Można powiedzieć, że nie było to konieczne, ponieważ scenariusze były prostsze a może również nikomu ręczna rzeźba nie przeszkadzała.

Zgadzam się z tymi argumentami, ale myślę, że główna przyczyna jest inna. Z doświadczenia (podpatrzonego) wynika, że ​​większy problem dotyczy technologii. Automatyzacja dostaw była trudna do wdrożenia.

Większość systemów, dziesięć lat temu, domyślnie nie miała kompilacji jednoetapowej ani dobrze zdefiniowanego przepływu pracy, takiego jak git-flow. W tamtych czasach nie było tańszych rozwiązań CI, więc to, co trudne do wdrożenia, nie zostawało wdrażane.

Próba przygotowania jakiejkolwiek automatyzacji kończyła się stratą całego dnia na niczym, dziś mając odpowiednie narzędzia automatyzację można wdrożyć w kilka, kilkanaście minut. Co ważniejsze raz przygotowaną automatyzacje można wykorzystać w przyszłości, zmieniając drobne rzeczy w konfiguracji. Jeszcze wygodniej można pracować z narzędziami typu Azure DevOps, które całą konfigurację pozwolą wykonać przez przeglądarkę, w większości wyklikując wszystkie potrzebne opcje.

Czy i dlaczego potrzebujemy czegoś więcej niż DevOps?

Łatwo zrozumieć, dlaczego po wielu wysiłkach mających na celu wprowadzenie metodyki DevOps w firmie możesz pomyśleć, że wszystko jest w porządku. Rzecz w tym, że w świecie IT rzeczy zmieniają się szybciej niż Ty.

Wymagania rynkowe są teraz o wiele bardziej wymagające, nie można po prostu powiedzieć: „Jestem zmęczony zmienianiem, proszę, daj mi odpocząć”.

Nadejście chmury komplikuje sprawę. Pozwala nam wdrażać złożone rozwiązania i rozwiązywać wiele wyzwań, ale wymaga większych umiejętności (a nie koniecznie ludzi).

Wszystkie części Twojej chmury są sprzedawane jako skalowalne, ale zawsze wymagają ustawienia czegoś w metodologii DevOps. Oznacza to, że zawsze potrzebne jest wykonanie ręcznie pewnych kroków. Takie podejście wymaga osoby, która to zrobi, więc praca, pomimo metodologii DevOps nadal nie jest w 100% automatyczna.

Celem NoOps jest zdefiniowanie procesu, w którym nie ma potrzeby łączenia części rozwojowej (developerskiej) z operacyjną (Administratorem IT), aby wszystko działało. NoOps ma jeden cel: uczynić wszystko możliwym do wdrożenia zgodnie z projektem bez większego wysiłku ze strony człowieka.

Zasadniczo podejście NoOps jest następujące: programista zatwierdza kod w repozytorium i wszystko jest wdrażane. Może się wydawać, że to ciągła dostawa, ale to coś więcej. W przypadku wdrożenia mamy na myśli nie tylko aplikację, ale także infrastrukturę.

Jakie możliwości daje NoOps?

NoOps jest włączany przez technologię. Jest tutaj wiele opcji, ale zasadniczo możemy podsumować w następujący sposób:

  • PaaS w dedykowanej infrastrukturze.
  • Dedykowane usługi dostępne w Azure, AWS czy Google Cloud.
  • Usługa bezstanowa, czyli wywołanie kodu, bez specjalnie na tę okoliczność przygotowanej infrastruktury.
  • Tworzenie infrastruktury, która umożliwia replikowanie się przy pomocy software’u.

Takie rozwiązania są dobre do automatyzacji części infrastruktury, a tradycyjne narzędzia wdrożeniowe mogą sterować procesem i dostarczać aplikacje.

Nie wszystko złoto, co się świeci

Przyznam, że pomysł usunięcia zarządzania infrastrukturą jest kuszący. To jak usuwanie zepsutego zęba. Infrastruktura wiąże się z dużymi kosztami zarządzania i powoduje tarcia między programistami a administratorami – zawsze (tak mówią).

Ale sprawa jest inna. Infrastruktura nie jest problemem. Problem zaczyna się w trakcie działania. Jeśli proces jest dobrze zaprojektowany, nie będzie problemów, nie będziesz mieć opóźnień i wszystko będzie działać poprawnie.

Boisz się kosztów zarządzania? Wystarczy wziąć pod uwagę cały koszt, a nie tylko zarządzanie. Być może infrastruktura oparta na chmurze inna niż PaaS, kosztuje więcej w zarządzaniu, ale ostatecznie koszt jest taki sam. To zależy. Zmieszany?

W modelu PaaS nie można wdrożyć wszystkich aplikacji.

Jeśli Twoja aplikacja jest prosta, PaaS jest dobrym rozwiązaniem, a ludzie DevOps będą szczęśliwi, jeśli będą pracować mniej. Jeśli uruchamiasz projekt podobny do serwisu streamingowego jako HBO GO, Vimeo czy Ipla , być może będziesz potrzebować większej kontroli i wykonania kilku czynności ręcznie.

Dlatego ostatecznie nie ma DevOps i NoOps. Jest tylko jeden czynnik: stwórz inteligentną infrastrukturę przy jak najmniejszym wysiłku konserwacyjnym i zautomatyzuj wszystko. Korzystając z dużej usługi w chmurze, takiej jak Azure, Aws czy Google Cloud, znajdziesz najlepsze rozwiązanie dla swoich potrzeb.

Więc z tego punktu widzenia, czym jest NoOps? Czyżby kolejnym modnym słowem, które zniknie tak szybko jak przekonanie, że DevOps to kolejna specjalność a nie metodologia pracy.

Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne.

Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).

Dodaj komentarz

Twój adres email nie zostanie opublikowany.

Droga Administratora IT.