Migracje do chmury i infrastruktura

Migracje inkrementacyjne

Nie wszystko trzeba przenosić naraz. Migrujemy system po systemie, zaczynając od tego, co najbardziej boli, więc efekty widzisz na długo przed końcem projektu.

Dlaczego przenoszenie wszystkiego naraz rzadko się udaje

Odruch przy migracji jest taki, żeby potraktować ją jako jeden projekt z datą startu, datą końca i wielkim przełączeniem pośrodku. W harmonogramie wygląda to dobrze. W rzeczywistości sprawdza się źle.

Problem polega na tym, że całe ryzyko ląduje w jednym dniu, a żadna korzyść nie pojawia się wcześniej. Jeśli przełączenie się przesunie, przesuwa się wszystko. Jeśli jeden komponent okaże się znacznie trudniejszy, niż zakładano, blokuje elementy gotowe od miesięcy. A przez cały ten czas zespół utrzymuje dwa środowiska i nie dowozi niczego nowego.

Migracja inkrementacyjna odwraca ten układ. Przenosisz jedną rzecz, potwierdzasz, że działa, i ta poprawa już zostaje. Potem bierzesz następną.

Zaczynamy tam, gdzie faktycznie boli

Pierwszy kandydat to nie jest najłatwiejszy system ani ten najwyżej w strukturze firmy. To ten, którego koszt da się wskazać palcem.

Zwykle jest to jeden z kilku wariantów. Aplikacja, która przewraca się przy ruchu, jaki powinna spokojnie obsłużyć. Serwer, którego rachunek rośnie rok po roku, bo nikt nie renegocjował warunków. Komponent na tyle kruchy, że nikt nie chce w nim niczego wdrażać, przez co po cichu spowalnia każdy projekt dotykający tego obszaru.

Każdy z tych przypadków daje czytelne porównanie przed i po. To ma większe znaczenie, niż się wydaje, bo drugi etap migracji uzasadnia się znacznie łatwiej, gdy pierwszy przyniósł konkretną liczbę, którą można pokazać.

Pierwszy krok jest też próbą generalną

Cokolwiek przeniesiesz jako pierwsze, powie Ci o Twoim własnym środowisku więcej niż jakikolwiek plan na papierze. To spora część wartości tego etapu i warto wybierać pierwszy komponent właśnie z tą myślą.

Niemal każda migracja wyciąga na wierzch tę samą kategorię niespodzianek. Wartość konfiguracyjna wpisana na sztywno w miejscu, którego nikt nie pamięta. Zadanie cykliczne działające na maszynie, której nie ma w żadnym spisie. Integracja uwierzytelniająca się adresem IP, która przestaje działać w momencie zmiany tego adresu. Zależność od wersji biblioteki, której nowa platforma już nie udostępnia.

Znalezienie tego na jednym ograniczonym systemie jest niewygodne. Znalezienie wszystkiego naraz, w trakcie jednego weekendowego przełączenia, to sposób, w jaki migracje trafiają do opowieści powtarzanych latami. Pierwszy etap to moment, w którym płacisz ten koszt tanio.

Granica między starym a nowym

Elementem migracji inkrementacyjnej, który bywa niedoszacowany, jest współistnienie. Przez cały czas trwania projektu część systemu jest w chmurze, a część nie, i obie połowy muszą współpracować tak, jakby nic się nie zmieniło.

Kilka rzeczy trzeba więc rozwiązać na początku, a nie przy każdym komponencie osobno. Uwierzytelnianie musi działać po obu stronach, żeby użytkownik nie został wylogowany przy przekroczeniu niewidocznej granicy. Usługi muszą mieć między sobą bezpieczne i przewidywalnie szybkie ścieżki sieciowe. Współdzielone dane muszą mieć jednego właściciela. Najczęstsza awaria w tym miejscu to dwa systemy zapisujące do czegoś, co każdy z nich uważa za własną kopię.

Zbudowanie tego porządnie w pierwszym etapie sprawia wrażenie nadmiarowej pracy. I to właśnie ono decyduje o tym, że każdy kolejny etap jest rutyną. Zespoły, które ten krok pominęły, zwykle wracają do niego po trzecim czy czwartym komponencie, tyle że przy znacznie większej liczbie działających już połączeń do poprawienia.

Kiedy warto się zatrzymać

Plan migracji wcale nie musi kończyć się przeniesieniem wszystkiego do chmury. Warto to powiedzieć wprost, bo założenie, że musi, generuje mnóstwo niepotrzebnej pracy.

Po kilku etapach zostają zwykle systemy stabilne. Działają na sprzęcie, który jest już zapłacony, rzadko się psują, a nikt nie musiał ich zmieniać od dwóch lat. Ich przeniesienie kosztowałoby realne pieniądze i dałoby niewiele. Co jakiś czas przeglądamy, co pozostało, i jeśli uczciwa odpowiedź brzmi, że reszta powinna zostać na miejscu, to właśnie rekomendujemy.

Celem nigdy nie było znalezienie się w całości w chmurze. Celem było to, żeby infrastruktura przestała przeszkadzać.

Co dostajesz

Lista priorytetów oparta na realnych problemach

Układamy Twoje systemy według tego, jak często się psują, ile kosztuje ich utrzymanie i jak trudno je zmieniać. Zaczynamy tam, gdzie korzyść jest najbardziej oczywista, a nie tam, gdzie schemat wygląda najładniej.

Osobna ścieżka migracji dla każdego systemu

Każdy element dostaje własny plan. Część przenosimy jeden do jednego, część wymaga wcześniejszych poprawek, a część lepiej na razie zostawić tam, gdzie jest.

Współistnienie starego i nowego

W trakcie przejścia przeniesione i nieprzeniesione części muszą się ze sobą komunikować. Projektujemy tę granicę świadomie, zamiast odkrywać ją w połowie projektu.

Wspólne logowanie i dostęp do danych

Użytkownik nie powinien odczuć, w której połowie systemu się znajduje. Uwierzytelnianie i współdzielone dane rozwiązujemy raz, na początku, a nie łatamy przy każdym kolejnym komponencie.

Widoczność kosztów na bieżąco

Dla każdego przeniesionego elementu mierzymy koszt przed i po, więc uzasadnienie biznesowe powstaje z rzeczywistych liczb, a nie z prognozy sprzed roku.

Punkt zatrzymania, z którym da się żyć

Częściowa migracja ma być stabilnym stanem docelowym, a nie niedokończonym projektem. Każdy etap zostawia system w stanie, w którym możesz zostać na stałe.

Jak pracujemy

  1. 01

    Audyt i ustalenie kolejności

    Przeglądamy obecne środowisko: co gdzie działa, ile kosztuje, co się psuje. Efektem jest uporządkowana lista wraz z uzasadnieniem, a nie sam schemat.

  2. 02

    Migracja pierwszego komponentu

    Na pierwszy krok celowo wybieramy coś wartościowego, ale ograniczonego. Potwierdza podejście, wcześnie ujawnia niespodzianki i daje zespołowi wzorzec na resztę.

  3. 03

    Zbudowanie granicy między środowiskami

    Sieć, uwierzytelnianie i dostęp do danych między chmurą a tym, co zostało lokalnie, powstają porządnie już w pierwszym etapie, bo opiera się na nich każdy kolejny etap.

  4. 04

    Powtarzanie i pomiar

    Kolejne komponenty idą tym samym schematem, z porównaniem kosztów i stabilności przed i po, żeby następna decyzja miała oparcie w danych.

  5. 05

    Przegląd tego, co zostało

    Co jakiś czas sprawdzamy, co jeszcze nie zostało przeniesione. Czasem właściwą odpowiedzią jest zatrzymanie się. Reszta systemów działa stabilnie i tanio, więc nie ma sensu ich ruszać.

Narzędzia i technologie

Tam, gdzie istnieje dobre narzędzie open source, wybieramy je zamiast zamkniętego. Bez uzależnienia od jednego dostawcy i z kosztami, które da się przewidzieć.

  • OpenTofu
  • Terraform
  • Docker
  • Kubernetes
  • PostgreSQL
  • Keycloak
  • Traefik
  • Grafana
  • AWS
  • Microsoft Azure
  • Google Cloud
  • Cloudflare

Najczęściej zadawane pytania

Pozostałe usługi w tej kategorii

Przeczytaj opinie firm, które nam zaufały

Zawsze są kilka kroków do przodu.

Mikołaj

CEO & Founder, GBS®

Zobacz na Clutch
GBS® logo

Dostarczone znacznie wcześniej niż termin.

Yasniel

CEO, IMEGA Sp z o.o.

Zobacz na Clutch

Indywidualne podejście ZanReal jest imponujące.

Adam

Executive, w-studio.pl

Zobacz na Clutch

Wiedza i intuicja biznesowa czynią ich wartościowym partnerem.

Magda

Designer, DIGITALUNI

Zobacz na Clutch

Szybkie rozwiązania, które obniżyły koszty o 99%.

Andrei Kapytau

Team Lead, busel.uk

Zobacz na Clutch

+20% dostarczalności dla naszych kampanii e-mail.

Joan Calabria

Sales Director, 36NORTH

Zobacz na Clutch
36NORTH logo

Który z Twoich systemów boli najbardziej?

Napisz do nas

Napisz, co psuje się najczęściej albo kosztuje najwięcej w utrzymaniu, a wskażemy, od czego warto zacząć migrację i gdzie można bezpiecznie się zatrzymać.

Zanek

Nie nadążasz za zmianami w świecie AI?

Pozwól, że weźmiemy to na siebie. Co tydzień destylujemy najważniejsze wydarzenia ze świata AI w skupiony, 5-minutowy przegląd — żebyś był na bieżąco bez szumu.

Dowiedz się więcej
Tygodnik AIonline
Wyselekcjonowane wiadomości AI do porannej kawy. Co tydzień.
Wyślij mi swój email, żeby się zapisać.