Close

Narzędzia DevOps

Wybierz narzędzia dla każdej fazy cyklu życia DevOps.


Guide structure

DevOps to kolejna faza ewolucji metodyk Agile. Zmiana kulturowa przynosząca współpracę między zespołami programistycznymi i operacyjnymi. DevOps to praktyka, która obejmuje zmianę kulturową, nowe zasady zarządzania i narzędzia technologiczne, które ułatwiają wdrażanie najlepszych rozwiązań.

Jeśli chodzi o łańcuch narzędzi DevOps, organizacje powinny szukać narzędzi, które usprawniają współpracę zespołową, ograniczają przełączanie kontekstu, wprowadzają automatyzację oraz umożliwiają wgląd i monitorowanie w celu szybszego dostarczania oprogramowania lepszej jakości.

Istnieją dwa podstawowe podejścia do łańcucha narzędzi DevOps: łańcuch kompleksowy lub otwarty. Kompleksowy łańcuch narzędzi DevOps zapewnia kompletne rozwiązanie, które zwykle nie integruje się z narzędziami innych firm. Otwarty łańcuch narzędzi można dostosować do potrzeb zespołu za pomocą różnych narzędzi. Atlassian jest zdania, że otwarty łańcuch narzędzi jest najlepszym podejściem, ponieważ można go dostosować do unikatowych potrzeb organizacji za pomocą najlepszych narzędzi. Zastosowanie tego podejścia często prowadzi do przyspieszenia prac i skraca czas wprowadzania produktów na rynek.

Przeczytaj więcej o łańcuchach narzędzi DevOps.

Niezależnie od typu łańcucha narzędzi DevOps stosowanego przez organizację, w procesie DevOps muszą być używane odpowiednie narzędzia w odniesieniu do kluczowych faz cyklu życia DevOps:

  • Planowanie
  • Kompiluj
  • Ciągła integracja i wdrażanie
  • Monitorowanie
  • Obsługa
  • Ciągłe informacje zwrotne

Ciągła integracja i dostarczanie

Logo Jenkins Logo AWS Logo Bitbucket Logo CircleCILogo Snyk Logo Sonarsource

Ciągła integracja:

Ciągła integracja jest praktyką polegającą na rejestrowaniu kodu we współdzielonym repozytorium kilka razy dziennie i każdorazowym testowaniu go. W ten sposób można automatycznie wykrywać problemy na wczesnym etapie, naprawiać błędy, gdy jest to najłatwiejsze, i udostępniać użytkownikom nowe funkcje tak szybko, jak to możliwe.

Przegląd kodu przy pomocy pull requestów wymaga tworzenia gałęzi i jest obecnie niezwykle popularny. Głównym celem DevOps jest utworzenie przepływu pracy, który skutkuje zmniejszeniem liczby gałęzi i przyspieszeniem pracy nad nimi oraz pozwala zachować rygorystyczne testowanie bez ograniczenia szybkości programowania.

Szukaj narzędzi, które automatycznie stosują testy do gałęzi programowania i dają możliwość wypychania kodu do gałęzi głównej po pomyślnej kompilacji. Jednocześnie dzięki prostej integracji otrzymujesz ciągłe informacje zwrotne za pośrednictwem alertów na czacie w czasie rzeczywistym, które przesyła Twój zespół.

Zobacz, jak Bitbucket Pipelines ułatwia automatyzację kodu — od testów do wdrożenia produkcyjnego.

Logo Mabl Logo Sauce Labs Logo Xray Logo Zephyr

Testowanie:

Narzędzia do testowania obejmują wiele funkcji i możliwości, w tym testowanie eksploracyjne, zarządzanie testami i orkiestracja. Jednak w przypadku łańcucha narzędzi DevOps niezbędną funkcją jest automatyzacja. Zautomatyzowane testowanie opłaca się w dłuższej perspektywie, gdyż przyspiesza cykl tworzenia i testowania oprogramowania. A w środowisku DevOps jest ważne także z innego powodu — pozwala na zwiększenie świadomości.

Automatyzacja testów pozwala poprawić jakość oprogramowania i zmniejszyć ryzyko dzięki przeprowadzaniu testów na wczesnym etapie i z dużą częstotliwością. Zespoły programistyczne mogą wielokrotnie wykonywać zautomatyzowane testy, które obejmują kilka obszarów, takich jak testowanie interfejsu użytkownika i obciążenia lub skanowanie zabezpieczeń. Generowane są również raporty i wykresy trendów, które pomagają zidentyfikować obszary ryzyka.

Ryzyko jest nieodłącznym elementem tworzenia oprogramowania i aby je ograniczyć, należy je przewidywać. Wyświadcz swojemu zespołowi operacyjnemu przysługę i wybierz się wraz z nim na poszukiwania. Poszukajcie narzędzi obsługujących ekrany prezentacji i pozwalających wszystkim zaangażowanym w projekt komentowanie wyników konkretnych kompilacji lub wdrożeń. Dodatkowe punkty powinny dostać narzędzia, które ułatwiają zaangażowanie pracowników działu operacyjnego w testowanie błyskawiczne i eksploracyjne.

Logo Jira Software

Pulpity wdrażania:

Jednym z najbardziej stresujących elementów dostarczania oprogramowania jest konieczność zebrania wszystkich informacji o zmianach, testach i wdrożeniach dotyczących nadchodzącego wydania w jednym miejscu. Ostatnią rzeczą potrzebną przed wydaniem jest długie zebranie poświęcone omówieniu aktualnego statusu prac. Właśnie tutaj mogą przydać się pulpity wydawania.

Szukaj narzędzi z pojedynczym pulpitem zintegrowanym z repozytorium kodu i narzędziami do wdrażania. Postaraj się znaleźć coś, co zapewnia pełny wgląd w ostrzeżenia dotyczące gałęzi, kompilacji, pull requestów i wdrożeń w jednym miejscu.

Logo Bitbucket Logo Zephyr

Zautomatyzowane wdrażanie:

Nie ma magicznego przepisu na zautomatyzowane wdrażanie, które mogłoby działać w przypadku każdej aplikacji i środowiska informatycznego. Częstym sposobem na początek jest przekształcenie wykazu procedur operacyjnych w skrypt wykonywalny cmd za pomocą języka Ruby lub bash. Sprawdzone praktyki inżynierskie są niezwykle ważne. Użyj zmiennych do wyodrębnienia nazw hostów — utrzymywanie niepowtarzalnych skryptów lub unikatowego kodu dla każdego środowiska nie jest wygodne (i nie rozwiązuje w pełni problemu). Utwórz metody narzędziowe lub skrypty, aby uniknąć zduplikowanego kodu. I korzystaj z recenzji współpracowników, aby sprawdzać poprawność skryptów.

Spróbuj najpierw zautomatyzować wdrożenia w środowisku najniższego poziomu, w którym najczęściej będziesz korzystać z tej automatyzacji, a następnie zreplikuj ją aż do środowiska produkcyjnego. Pozwoli to w najgorszym przypadku wyłowić różnice między środowiskami i uzyskać listę zadań pozwalających na ich standaryzację. Dodatkową korzyścią jest to, że standaryzacja wdrożeń poprzez automatyzację zmniejsza występowanie zmian konfiguracji serwera między środowiskami i w ich obrębie.

Podsumowując…

W Atlassian zdajemy sobie sprawę, jak ważne jest posiadanie łańcucha narzędzi DevOps, który można zintegrować z ulubionymi narzędziami zespołów programistycznych i operacyjnych. Dlatego opracowaliśmy naszą platformę DevOps, aby umożliwić integrację z ponad 171 wiodącymi dostawcami zewnętrznymi oraz pozwolić Ci na podejmowanie najlepszych decyzji w zakresie wszystkich używanych narzędzi. Rozwiązanie DevOps nie powinno być kupowane od jednego dostawcy — należy je zbudować.

Aby rozpocząć, wypróbuj bezpłatnie rozwiązanie DevOps firmy Atlassian.

Setup the AWS SageMaker pre-trained model

Use the AWS console to setup a SageMaker model to classify images


Zalecane lektury

Dodaj te zasoby do zakładek, aby dowiedzieć się więcej na temat rodzajów zespołów DevOps lub otrzymywać aktualności na temat metodyki DevOps w Atlassian.

Ilustracja DevOps

Społeczność DevOps

Ilustracja DevOps

Ścieżka szkoleniowa DevOps

Ilustracja przedstawiająca mapę

Zacznij korzystać za darmo

Zapisz się do newslettera DevOps

Thank you for signing up