Uzależnienie od dostawcy (vendor lock-in), to pojęcie nad wyraz często łączone z branżą IT, a w ostatnich latach szczególnie z chmurą obliczeniową, chociaż zdecydowanie nie jest z nimi nierozerwalnie związane. Przez ekonomistów rozpatrywane było w szerszym kontekście na długo przed tym, kiedy świat po raz pierwszy usłyszał o AWS czy Azure. Z perspektywy klienta oraz użytkownika, zazwyczaj bywa postrzegane w negatywnym świetle, niejednokrotnie wywołując niechęć i strach przed skorzystaniem z danej usługi lub produktu.

Na pierwszy rzut oka wydaje się, że w obszarze chmury publicznej problem nie jest błahy. Nawet główni beneficjenci zjawiska, czyli najwięksi dostawcy usług chmurowych, zdecydowali się poruszyć to zagadnienie na swoich oficjalnych stronach internetowych, więc najwyraźniej coś musi być na rzeczy…

A czy faktycznie jest, sprawdzimy w tym artykule. Przyjrzymy się ryzykom, jakie niesie za sobą vendor lock-in dla organizacji planujących adopcję chmury. Zastanowimy się również, czy skorzystanie z usług kilku dostawców (multi-cloud) jednocześnie może być dobrą receptą na poprawę sytuacji. Ponadto, weźmiemy pod lupę chmurę hybrydową.

hybrid cloud; multi-cloud; vendor lock-in

 Migracja do chmury i wybór dostawcy

Rozważmy pokrótce przykładowy scenariusz migracji lokalnej infrastruktury IT pewnego przedsiębiorstwa do chmury. Pierwszy etap prac obejmuje różnego rodzaju analizy oraz planowanie. Ustalane są wymagania biznesowe i technologiczne, a także oczekiwane rezultaty całego przedsięwzięcia (KPI). Przeglądane są wszystkie wykorzystywane w organizacji systemy informatyczne oraz powiązane z nimi zasoby sprzętowe, po czym stopniowo budowana jest optymalna strategia przeniesienia ich w nowe miejsce.

Zespół rozpatruje oferty różnych dostawców usług chmurowych, z uwzględnieniem takich czynników jak:

  • szacunkowe koszty,
  • niezawodność działania,
  • poziom bezpieczeństwa,
  • jakość wsparcia technicznego.

Brana jest również pod uwagę dostępność na rynku specjalistów z odpowiednimi umiejętnościami i doświadczeniem w pracy z daną platformą chmurową, bez których powodzenie całej migracji byłoby poważnie zagrożone, a wręcz niemożliwe.

Gdy zapada ostateczna decyzja o wyborze dostawcy, rozpoczyna się ściśle techniczna część procesu. Powstaje szczegółowy projekt architektury. Do pracy wkraczają programiści i administratorzy, a później również testerzy. Wreszcie, po wielu tygodniach bądź miesiącach pracy (w zależności od skali przedsięwzięcia), wszystkie przeznaczone do przeniesienia aplikacje oraz dane znajdują się  w nowym miejscu, w chmurze. Uprzednio zdefiniowane cele zostają osiągnięte i firma zaczyna czerpać korzyści z migracji do chmury.

Mija kilka lat. W związku z rozwojem firmy, zarząd podejmuje decyzję o rozszerzeniu oferty oraz wejściu na nowe rynki. Pociąga to za sobą konieczność dodania nowych komponentów do istniejących systemów informatycznych. Niezbędne staje się rozbudowanie stworzonej wcześniej infrastruktury w chmurze.

Ponownie rozpoczyna się analiza aktualnej sytuacji na rynku chmury obliczeniowej. W jej toku okazuje się, że oferta konkurencyjnego dostawcy usług chmurowych lepiej odpowiada potrzebom firmy niż oferta aktualnego dostawcy. Wyróżnia się ona korzystniejszym modelem cenowym, a ponadto jest bardziej innowacyjna technologicznie, pozwalając osiągnąć założony cel mniejszym nakładem pracy. Rozważana jest zatem możliwość przeprowadzenia migracji do innej chmury. Jednak wkrótce staje się jasne, że szacunkowe koszty takiej operacji dość istotnie przewyższają potencjalne zyski…

Przyczyny i symptomy vendor lock-in

I oto następuje zderzenie z vendor lock-in, w pełnej okazałości. Jak tłumaczy podręcznikowa definicja tego zjawiska, klient staje się wtedy zależny od danego produktu, usługi lub technologii do tego stopnia, że skorzystanie z dostępnych na rynku alternatyw jest utrudnione. W opisywanej sytuacji, firma jest zależna od wybranej platformy chmurowej, ponieważ bez niej nie mogłyby działać systemy informatyczne, niezbędne do prawidłowego funkcjonowania całego przedsiębiorstwa.

vendor lock-in; multi-cloud; hybrid cloud

Dlaczego jednak przeniesienie systemów, infrastruktury oraz danych do konkurencyjnej chmury może być trudne?

Sedno problemu tkwi na poziomie technicznym. Może się wydawać, że aplikacje napisane choćby w Javie czy Pythonie  da się uruchomić w wielu różnych środowiskach bez konieczności wprowadzania większych zmian w kodzie. Takie przypuszczenie często jest zgodne z prawdą, jednak trudności pojawiają się w sytuacji, kiedy aplikacje te korzystają z natywnych komponentów wybranej platformy chmurowej, niedostępnych nigdzie poza nią.

Jako przykład takiego komponentu można przytoczyć Amazon EventBridge, czyli usługę dostępną wyłącznie w ramach chmury Amazon Web Services, często stanowiącą rdzeń aplikacji w architekturze sterowanej zdarzeniami. Choć alternatywne chmury również posiadają w swojej ofercie usługi o podobnym przeznaczeniu, to różnice pomiędzy udostępnianymi przez nie interfejsami są znaczne i uniemożliwiają łatwe zastąpienie EventBridge inną, konkurencyjną usługą. Innymi słowy, fragmenty kodu aplikacji odpowiedzialne za komunikację z Amazon EventBridge nie będą współpracować z Azure Event Grid czy Google Cloud Eventarc, i vice versa.

Jednak co w sytuacji, gdy firma posiada system informatyczny działający w chmurze, który nie korzysta z jej natywnych komponentów?

Przykładowo, może się on składać z kilku podsieci, kilkunastu maszyn wirtualnych z systemem operacyjnym Linux, klastra bazodanowego PostgreSQL, load balancera oraz jeszcze kilku pomniejszych elementów. Całość jest oparta o standardowe technologie i protokoły komunikacyjne, znane w branży na długo przed nadejściem ery cloud. Czy migracja tak skonstruowanej infrastruktury może być równie problematycznym przedsięwzięciem?

Niestety, często tak właśnie będzie, pomimo faktu, że wyżej wymienione rodzaje zasobów są dostępne we wszystkich popularnych chmurach. Ponownie ujawniają się tutaj istotne różnice pomiędzy interfejsami poszczególnych dostawców. Choć zwykła maszyna wirtualna jest zasobem o identycznym przeznaczeniu zarówno w AWS, jak i w Azure, to jednak sposób jej tworzenia i konfiguracji (na poziomie infrastruktury, nie systemu operacyjnego) będzie inny.

Różnice i niezgodności pomiędzy platformami mogą dotyczyć wielu technicznych niuansów, a już nawet dwa wyżej przytoczone implikują istotne trudności w migracji do innej chmury. Taka operacja oczywiście jest możliwa, jednak poziom jej złożoności i czasochłonność często są wysokie i generują niemałe koszty.

Do tego dochodzi aspekt kadrowy, gdyż obecny zespół może nie posiadać wystarczającego doświadczenia w pracy z nową chmurą. Z punktu widzenia osób decyzyjnych w przedsiębiorstwie, można wskazać wiele powodów do porzucenia planów takiej migracji. Rozbudowanie istniejącego systemu informatycznego w ramach dotychczas używanej chmury może się ostatecznie okazać korzystniejszym rozwiązaniem. Jednak czy na pewno nie istnieją jeszcze inne opcje?

Multi-cloud. Co dwie chmury to nie jedna?

Dotychczas zakładaliśmy, że w opisywanej sytuacji istnieją tylko dwie możliwości:

  1. kontynuacja współpracy z aktualnym dostawcą usług chmurowych,
  2. kompletna migracja całości systemu, wraz z infrastrukturą i danymi, do innego dostawcy.

Tymczasem w toku rozważań może nasunąć się słuszne pytanie o możliwość połączenia obu tych wariantów, tak aby w jak największym stopniu wykorzystać zalety innej chmury, ale jednocześnie uniknąć rozstania z tą obecnie używaną. Zatem czy nie dałoby się wybrać pewnych elementów z różnych chmur i połączyć ich ze sobą w jeden spójny, dobrze działający system? Okazuje się, że w wielu przypadkach jest to osiągalne.

Takie podejście nosi nazwę multi-cloud.

vendor lock-in; multi-cloud; hybrid cloud

Część źródeł, w tym firma Oracle podaje, że w wybranych regionach świata ponad 90% dużych przedsiębiorstw korzysta lub planuje skorzystać z oferty więcej niż jednego dostawcy usług chmurowych jednocześnie. Bez trudu da się znaleźć firmy, które używają trzech, czterech, a nawet jeszcze większej liczby chmur. Górne ograniczenie właściwie w tym przypadku nie istnieje.

Strategia multi-cloud nie jest zatem żadnym ekwilibrystycznym, niepewnym eksperymentem, tylko sprawdzonym rozwiązaniem, przynoszącym organizacjom liczne korzyści. Pozwala osiągnąć dywersyfikację i uniezależnić się od jednego dostawcy. Można tu wskazać pewną analogię do dobrze zdywersyfikowanego portfela inwestycyjnego, który ogranicza ryzyko związane ze spadkiem wartości jednego lub kilku aktywów składowych. Podobnie, przemyślane rozdystrybuowanie komponentów systemu pomiędzy różne platformy chmurowe zmniejsza ryzyko związane z czasową bądź trwałą niedostępnością jednej z tych platform. Nie można zapomnieć, że awarie oraz rozmaite problemy techniczne niestety są nieuniknione również w świecie chmury, a rolą użytkownika i dobrą praktyką jest zaprojektowanie infrastruktury w taki sposób, aby była jak najbardziej odporna na tego typu zdarzenia.

Powróćmy do rozważanego wcześniej przykładu. Wydaje się, że w przedstawionym scenariuszu użycie podejścia multi-cloud byłoby optymalnym rozwiązaniem. Pozwoliłoby rozbudować istniejący system informatyczny bez konieczności całkowitej migracji do innej chmury. Nowe komponenty, które muszą zostać dodane, korzystałyby z bardziej zaawansowanych technologicznie, a jednocześnie korzystniejszych cenowo usług dostępnych u nowego dostawcy.

Firma zyskałaby zatem:

  • większe możliwości optymalizacji kosztów;
  • wyższą niezawodność pracy systemu;
  • technologię dopasowaną do realizowanego projektu oraz wymagań;
  • uniezależnienie od jednego dostawcy (uniknięcie zjawiska vendor lock-in).

Cloud Kitchen

Czy strategia multi-cloud to magiczne remedium na problemy z adopcją chmury?

Niestety, nie zawsze. Choć posiada szereg zalet, to wiążą się z nią również określone wyzwania, o których należy pamiętać. Przede wszystkim, w środowisku wielochmurowym złożoność wdrożeń jest większa niż w przypadku pojedynczej chmury. Usługi dostępne w obrębie konkretnej platformy zwykle da się zintegrować ze sobą w prosty sposób, ponieważ zadbał o to dostawca. Można powiedzieć, że pasują do siebie niczym klocki w układance, razem tworząc spójną całość. Dane zazwyczaj przesyłane są za pośrednictwem wewnętrznej sieci dostawcy, co przekłada się na:

  • wysoki poziom bezpieczeństwa,
  • dużą prędkość
  • oraz niskie koszty transferu.

Jednak zdecydowanie trudniejsze jest łączenie ze sobą usług z kilku różnych chmur, bowiem są one jak klocki z zupełnie innych układanek. Zapewnienie odpowiedniego poziomu bezpieczeństwa wymaga wtedy większego wysiłku, a koszty przesyłania danych rosną. Dlatego niezwykle istotne jest zaprojektowanie rozszerzalnej architektury i wykorzystanie odpowiednich wzorców integracyjnych. Dzięki temu stosunkowo proste stanie się dodawanie do systemu nowych komponentów działających w niemal dowolnej chmurze, które będą współpracować ze sobą w sposób bezpieczny i wydajny. W idealnej sytuacji powinno to być możliwe bez naruszania już istniejących obszarów infrastruktury oraz aplikacji.

vendor lock-in; multi-cloud; hybrid cloud

A może chmura hybrydowa, a nie tylko publiczna?

Poruszając temat środowisk wielochmurowych, warto wspomnieć również o chmurze hybrydowej (hybrid cloud). Pojęcie hybrydy występuje w wielu dziedzinach życia i zwykle oznacza połączenie różnych, niepasujących do siebie elementów. W biologii oznacza osobnika powstałego w wyniku skrzyżowania dwóch różnych gatunków. W motoryzacji zwykle odnosi się do połączenia napędu spalinowego oraz elektrycznego. Natomiast w świecie chmury obliczeniowej, hybryda rozumiana jest jako połączenie dwóch rodzajów chmur – publicznej oraz prywatnej.

Chmura publiczna, jak sama nazwa wskazuje, dostępna jest dla wszystkich zainteresowanych klientów za pośrednictwem Internetu. Użytkownicy korzystają w tym przypadku z zasobów obliczeniowych, które są umieszczone w serwerowni należącej do dostawcy usług i mogą być częściowo współdzielone przez różnych klientów. To właśnie ten rodzaj chmury dotychczas brany był pod uwagę w niniejszym artykule. Przykładami największych na rynku chmur publicznych są: Amazon Web Services, Microsoft Azure oraz Google Cloud.

Jednak niektóre organizacje z rozmaitych powodów nie mogą lub nie chcą korzystać ze współdzielonych zasobów w chmurze publicznej. W odpowiedzi na ten problem powstała koncepcja chmury prywatnej, która każdorazowo wdrażana jest na potrzeby jednego klienta (a niekiedy małej grupy klientów) i dostępna wyłącznie dla niego. Zamawiający korzysta z infrastruktury obliczeniowej umieszczonej w jego własnej serwerowni lub w serwerowni zewnętrznego dostawcy, który jednak nie udostępnia tych konkretnych zasobów żadnym innym podmiotom.

Umieszczając niektóre komponenty systemu w chmurze prywatnej, a inne w jednej lub kilku chmurach publicznych, w rezultacie otrzymujemy system hybrydowy. Z takim rozwiązaniem wiążą się podobne wyzwania oraz profity jak w przypadku wcześniej opisywanej strategii multi- cloud, której częścią jest chmura hybrydowa.

Jednak w odróżnieniu od wdrożeń z wykorzystaniem samych tylko chmur publicznych, rozwiązania hybrydowe przynoszą organizacjom dodatkowe korzyści wynikające z obecności chmury prywatnej. Wśród najważniejszych można wskazać pełną kontrolę nad lokalizacją i zabezpieczeniem danych, co ma szczególne znaczenie w niektórych branżach, gdzie konieczne jest spełnienie restrykcyjnych regulacji prawnych w tym zakresie. Inną zaletą są rozbudowane możliwości dostosowania prywatnej infrastruktury do własnych potrzeb, co pozwala osiągnąć optymalną wydajność przy jednoczesnej minimalizacji kosztów.

vendor lock-in; multi-cloud; hybrid cloud

Podsumowanie: jaką chmurę wybrać?

Decyzja o wyborze rodzaju chmury (publicznej, prywatnej czy hybrydowej) powinna zostać podjęta w wyniku szczegółowych analiz potrzeb i wymagań danej organizacji. Jeśli perspektywa uzależnienia od wybranego dostawcy wydaje się niepokojąca,  warto rozważyć wariant multi-cloud, czyli wielochmurowy. Rozproszenie komponentów systemu pomiędzy różne platformy oraz – opcjonalnie – własną, lokalną serwerownię, pozwoli  do pewnego stopnia ograniczyć ryzyko związane ze zjawiskiem vendor lock-in, ponieważ organizacja nie będzie polegać na usługach tylko jednego, zewnętrznego podmiotu. Warto skonsultować planowaną strategię adopcji chmury z doświadczonymi specjalistami, którzy pomogą  przygotować się na możliwe konsekwencje określonych wyborów.

Z drugiej strony, trzeba mieć świadomość, że uzależnienie od jednego dostawcy (vendor lock-in) nie w każdym przypadku musi przynieść negatywne następstwa. Szczególnie małe oraz średnie firmy, które nie potrzebują rozbudowanej infrastruktury IT, są w stanie korzystać tylko z jednej chmury publicznej przez wiele lat, nie doświadczając przy tym żadnych poważniejszych problemów.

Amazon, Microsoft, Google oraz inni gracze na rynku chmury są świadomi obaw swoich klientów i wyraźnie odchodzą od praktyk mających na celu utrudnienie im migracji do innych chmur, a wręcz starają się taki proces ułatwić w razie potrzeby. A o to chociażby jeden z przykładów, w jaki sposób robi to Amazon: How the AWS Cloud helps to eliminate lock-in.

vendor lock-in; multi-cloud; hybrid cloud

How useful was this post?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 1

No votes so far! Be the first to rate this post.

W przypadku naruszenia Regulaminu Twój wpis zostanie usunięty.

    _Wszystkie wpisy z tej kategorii

    Podejście Cloud Native: Modernizować istniejące czy budować od podstaw natywne aplikacje chmurowe?

    Czym są aplikacje wie chyba każdy. A jak jest z pojęciem Cloud Native? Być może każdy, no prawie każdy, coś słyszał i będzie…
    Czytaj dalej

    Czy Edge to nowa chmura?

    Wiele organizacji, które przyjęły chmurę, traktuje Edge jako naturalne rozszerzenie swoich rozwiązań opartych na niej. Z drugiej strony, te firmy, które są na…
    Czytaj dalej

    Obliczenia kwantowe: Kot Schrödingera zadomowił się w chmurze

    Zapnij pasy i dołącz  do mnie w podróży do świata, w którym kot może być zarówno martwy, jak i żywy, a cząsteczka może…
    Czytaj dalej

    (r)Ewolucja w zarządzaniu danymi produkcyjnymi. Platformy danych w chmurze

    Platformy danych oparte na chmurze stają się przełomem w zarządzaniu danymi produkcyjnymi. W przeszłości firmy zmagały się z zarządzaniem ogromnymi ilościami danych generowanych przez…
    Czytaj dalej

    Jak AI Data Discovery pomaga firmom produkcyjnym?

    Odkryj przyszłość przemysłu produkcyjnego dzięki usłudze AI Data Discovery i chmurze! Poznaj, jak te technologie i usługi eliminują straty i zwiększają efektywność branży…
    Czytaj dalej

    Migracja do chmury i modernizacja aplikacji Airline Rewards: mapowanie wymagań architektury

    W tym artykule przeprowadzę Cię przez kroki, wybory techniczne i kompromisy związane z migracją i modernizacją aplikacji do chmury publicznej, kładąc nacisk na…
    Czytaj dalej

    Jak właściwie rozumieć chmurę publiczną w 2023? I dlaczego jest to takie trudne?

    Chmura ciągle się zmienia i ewoluuje. To co widzimy dziś, to nie to samo było wczoraj i nie to samo co będzie jutro.…
    Czytaj dalej

    Przyspieszenie wdrożenia koncepcji Przemysłu 4.0

    Cyfrowa transformacja i podążanie w kierunku idei Przemysłu 4.0 oraz Inteligentnej Fabryki (w AWS) nie należą do łatwych. Najczęstsze przeszkody to utknięcie na…
    Czytaj dalej

    Jak zbliżyć się do Przemysłu 4.0?

    Rozwijaj biznes dzięki cyfrowej transformacji. Zmiany obejmują także komunikację i przygotowanie pracowników – bez ich poparcia i zaangażowania, wdrożenie będzie znacznie trudniejsze. Sprawdź,…
    Czytaj dalej

    Jak wdrożyć założenia Przemysłu 4.0 mądrzej, szybciej i łatwiej?

    Pojęciem związanym z Przemysłem 4.0 jest Smart Factory - inaczej mówiąc "inteligentna fabryka". Ten typ fabryki oparty jest na zintegrowanych systemach przy wykorzystaniu…
    Czytaj dalej

    Chmura napędza cyfrową transformację

    Chmura coraz częściej stanowi kluczowy aspekt powodzenia procesu transformacji cyfrowej. Rozmowa z Christianem Thiem, starszym analitykiem biznesowym w TT PSC Germany GmbH, dostarczy…
    Czytaj dalej

    Co musisz wiedzieć o serverless computing?

    Serverless cmputing nadal budzi sporo wątpliwości, szczególnie wśród tych środowisk, które właśnie zaczynają korzystanie z usług chmurowych lub dopiero planują migrację do chmury…
    Czytaj dalej

    Czym jest DevOps as a service i czemu warto z tego skorzystać?

    Oszczędność, skrócenie czasu wdrażania zmian oraz weryfikowanie ich poprawności – to tylko kilka przykładowych korzyści, których gwarantem jest DevOps. Ta innowacyjna metodologia wprowadziła…
    Czytaj dalej

    9 powodów, dla których powinno się wykorzystywać chmurę w prowadzeniu biznesu

    Zgodnie z raportem firmy RightScale „2019 State of the Cloud Report from Flexera”, aż 94% firm używa chmury. To nie przypadek, że tyle…
    Czytaj dalej

    Jak zacząć przygodę z Azure i przygotować się do certyfikacji AZ-900

    Zapotrzebowanie na specjalistów w obszarze Cloud stale rośnie. Jak zdobyć szeroki zakres kompetencji i szybko odnaleźć się w temacie chmury? Najlepiej zacząć od…
    Czytaj dalej

    Chmura na czas kryzysu, czyli jak usprawnić pracę w swojej firmie

    Świat, który znaliśmy przez ostatnie lata mocno się zmienia. Wymusza na nas zmianę przyzwyczajeń, a także sposobów w jaki pracujemy i realizujemy nasze…
    Czytaj dalej

    Jak zadbać o bezpieczeństwo aplikacji serverless w AWS?

    Konferencja AWS re:Invent 2019, podobnie jak jej poprzednie edycje, obfitowała w ciekawe wykłady typu breakout sessions, których celem było przybliżenie uczestnikom wybranego zagadnienia…
    Czytaj dalej

    Parametry SSM w automatyzacji AWS

    Jakiś czas temu zostałem zaangażowany w projekt, który miał dostarczyć Windchilla w sposób wysoko dostępny – w sumie nic nowego, klaster załatwia sprawę…
    Czytaj dalej

    Jak dotknęliśmy chmur – relacja z AWS re:invent 2019

    Udział w konferencji AWS re:Invent wymaga od uczestników, pomijając finansowanie, nieco zaangażowania i odrobiny samozaparcia. W naszym przypadku zakup wejściówek na konferencje w…
    Czytaj dalej

    Najważniejsze nowości z AWS re:Invent 2019

    Ciekawi Cię jakie nowości zostały zaprezentowane na AWS re:Invent, ale nie masz czasu stale przeglądać doniesień z Vegas? Nie musisz już szukać. Specjalnie…
    Czytaj dalej

    Jak wykorzystać Talend Open Studio w branży medycznej?

    Wykorzystywanie nowoczesnych technologii w medycynie jest coraz powszechniejsze. Papierowe karty pacjentów wypadają z obiegu i zastępują je elektroniczne formy przechowywania danych. Proces digitalizacji…
    Czytaj dalej

    Czym jest chmura Amazon Web Services?

    Chmura obliczeniowa to jedna z najdynamiczniej rozwijających się technologii na świecie. Stopniowo wypiera tradycyjne rozwiązania serwerowe, zgarniając dla siebie coraz większą część rynku.…
    Czytaj dalej

    Dlaczego serverless jest przyszłością aplikacji

    Co kilka lat, w świecie IT, pojawia się nowe, przełomowe rozwiązanie. Aktualnie, wszystkie oczy są skupione na Machine Learning(ML) oraz Sztucznej Inteligencji(AI). Wcześniej…
    Czytaj dalej

    _Zostańmy w kontakcie

    Skontaktuj się