Roboty w chmurze czy on-premise?
TL DR;
Roboty można budować i utrzymywać w pełnym modelu chmurowym, on-premise, a także w modelu hybrydowym, gdzie część komponentów jest rozdzielona pomiędzy chmurę i wewnętrzną serwerownię.
Modele on-premise i hybrydowy sprawdzają się dla pewnych specyficznych i coraz bardziej niszowych przypadków, ale w zdecydowanej większości przypadków pełny model chmurowy jest najlepszy biorąc pod uwagę bezpieczeństwo, compliance, skalowalność, ciągłość pracy, a przede wszystkim całkowity koszt rozwiązania.
Jak można wdrażać roboty ?
Roboty, jak każde oprogramowanie, wymagają technicznej infrastruktury, która zapewni bezpieczne, wydajne i skalowalne dostarczanie usług. Praktycznie każda platforma robotyczna, której można użyć w nietrywialnych rozwiązaniach klasy enterprise składa się z części serwerowej oraz stacji roboczych, na których pracują roboty. Dla uproszczenia można przyjąć, że podejmując decyzję o wyborze modelu infrastruktury mamy do wyboru 3 warianty:
- Chmurowy, w którym wszystkie komponenty serwerowe oraz stacje robocze znajdują się w publicznej lub prywatnej chmurze obliczeniowej, a jedynym komponentem umieszczonym po stronie środowiska Klienta jest końcówka bezpiecznego tunelu (VPN), dzięki któremu roboty mają dostęp do wszelkich zasobów niezbędnych do pracy
- On-premise, w którym wszystko umieszczamy wewnątrz środowiska Klienta, a z zewnątrz zarządzamy robotami przy pomocy zdalnego dostępu do konkretnych maszyn
- Hybrydowy, w którym komponenty serwerowe umieszczone są w chmurze, a stacje robocze w środowisku Klienta (również z bezpiecznym tunelem pomiędzy środowiskami)
Argumenty za i przeciw każdemu z tych wariantów dotyczą w większości każdej innej aplikacji lub systemu. Nie będę szczegółowo ich opisywał, a skupię się przede wszystkim na aspektach charakterystycznych lub szczególnie istotnych dla robotów.
Bezpieczeństwo
Na pierwszy rzut oka to kategoria, w której instalacje on-premise powinny mieć wyraźną przewagę nad każdym innym modelem. Czy tak jest w rzeczywistości ? Przekonanie, że tylko trzymając wszystkie dane wewnątrz własnej serwerowni zapewniamy najwyższą poufność jest coraz bardziej złudne. W największym skrócie na bezpieczeństwo składają się technologia, procesy i ludzie. Jest bardzo niewiele organizacji, które mogą sobie pozwolić na utrzymanie dowolnej z tych składowych na poziomie porównywalnym z renomowanymi dostawcami publicznej chmury. Wcześniej, czy później utrzymując własne środowisko musimy pójść na jakiś kompromis. Z takim kompromisem nie muszą liczyć się globalne firmy inwestujące miliardy dolarów w najszybciej rozwijającą się gałąź rynku IT. Nawet jeśli będziemy regularnie kupować najnowszy sprzęt i dbać o oprogramowanie, to niestety nie możemy liczyć, że zatrudnimy najlepszych ludzi.
To w konsekwencji prowadzi do tego, że procesy, czyli najważniejszy czynnik decydujący o bezpieczeństwie, również z czasem mogą się degradować. Stąd już tylko krok do problemów. Samodzielne zarządzanie bezpieczeństwem jest coraz droższe i wymaga coraz więcej wysiłku. Nawet największe i najbogatsze firmy muszą się zwykle posiłkować zewnętrznym wsparciem, co w praktyce zbliża model on-premise do chmurowego.
Compliance
Również z perspektywy compliance sprawa wygląda podobnie. Dostawcy chmury konkurują między innymi długą listą certyfikatów i norm, które spełniają ich rozwiązania. Nie jest to tylko czysty marketing. Za każdą taką etykietką stoi ogromny wysiłek włożony w to, aby platformy spełniały najwyższe wymagania organizacji, które zajmują się compliance. Z drugiej strony organizacje IT, które wspierają rozwiązania on-premise zwykle muszą dzielić czas pomiędzy zadania rozwojowe, które przynoszą wartość biznesową, a realizację wymogów bezpieczeństwa i compliance, więc z natury rzeczy starają się minimalizować wysiłek na zadania o niższej wartości dodanej.
Roboty nie są pod tym względem wyjątkowe. Renomowani dostawcy platform dbają o to, żeby spełniały one najbardziej wyśrubowane wymagania bezpieczeństwa i compliance. Jednocześnie każdy z nich dba szczególnie o model oparty o chmurę.
Jedynym powodem, dla którego model on-premise ciągle funkcjonuje są regulacje, które uniemożliwiają przetwarzanie danych poza infrastrukturą należącą do klienta. Na szczęście nawet najbardziej konserwatywne instytucje regulujące rynki (w szczególności finansowy) coraz przychylniej spoglądają w kierunku chmury.
Pewnym kompromisem może być zastosowanie wariantu hybrydowego, czyli pozostawienie stacji robotycznych w środowisku Klienta przy jednoczesnym uruchomieniu instalacji serwerowej w chmurze publicznej. W takim scenariuszu stacje robocze nadal pozostają pod kontrolą i w granicach procedur Klienta. W takim scenariuszu można zminimalizować zakres danych wysyłanych i przechowywanych poza środowiskiem Klienta i w ten sposób spełnić wymogi regulacyjne.
Skalowalność
Prawdopodobnie w tej kategorii chmura ma największą przewagę nad wariantem on-premise, bo oferuje praktycznie nieograniczony dostęp do zasobów. Na dodatek przy odpowiednim stopniu automatyzacji dzieje się to praktycznie od ręki. Ma to szczególne znaczenie, kiedy wolumeny zadań dla robotów mają nieregularny charakter. Jeśli na przestrzeni tygodnia, miesiąca, czy kwartału następują gwałtowne spiętrzenia prac, po których sytuacja wraca do normy. Wówczas utrzymywanie odpowiedniego zapasu w instalacji on-premise jest bardzo kosztowne. Podobnie w dość częstej sytuacji, w której wolumeny zadań rosną w czasie. Dokładanie kolejnych robotów, czy zwiększenie wydajności infrastruktury serwerowej w chmurze jest znacznie łatwiejsze, niż dla środowiska on-premise.
Ciągłość pracy
Pandemia, czy też niedawny pożar serwerowni OVH uświadomił wszystkim, że czasem mogą się pojawić zdarzenia o bardzo niskim prawdopodobieństwie, ale o katastrofalnych skutkach. W takiej sytuacji nie sposób nie docenić łatwości i szybkości odtworzenia środowiska w chmurze. Oczywiście również w przypadku on-premise można utrzymywać zapasową infrastrukturę gotową w każdej chwili do przełączenia. Koszty takiego rozwiązania są jednak w przybliżeniu podwójne. Tymczasem w przeważającej większości typowych zastosowań robotów nie bazują one na historycznych danych. W przypadku chmury często nie jest nawet konieczne odtworzenie zachowanej bazy danych. To oznacza, że nawet awaria całej serwerowni może nie mieć zauważalnego wpływu na ciągłość pracy.
Automatyzacja i zdalna praca
Wydawać by się mogło, że jeśli chodzi o zdalną pracę i automatyzację nie ma większych różnic pomiędzy wariantami. W praktyce jednak serwerownia to fizyczny byt, o który ktoś się musi zatroszczyć. W przypadku awarii komponentów, które trzeba wymienić, ktoś musi stawić się na miejscu. Czasami takie fizyczne dostępy są wręcz wymuszane przez wewnętrzne regulacje. W przypadku środowisk chmurowych wszelki fizyczny dostęp jest niemożliwy, więc wszelkie rekonfiguracje są dostępne wyłączne zdalnie.
Podobnie z automatyzacją – nie ma przeszkód, aby instalacje on-premise były w pełni zautomatyzowane. Różnica polega na tym, że środowiska chmurowe są projektowane z myślą o automatyzacji. Oferują w związku z tym cały szereg narzędzi naturalnie wspierających automatyzację. W przypadku środowisk on-premise zawsze istnieje pokusa, aby z braku czasu pozostawić jakieś drobne ręczne obejścia. Niestety z takich skrótów często się korzysta, a rozwiązania tymczasowe istnieją potem bardzo długo.
Podział odpowiedzialności
Dobrze zaprojektowane rozwiązanie informatyczne powinno minimalizować koszty utrzymania. W związku z tym, że systemy są zwykle użytkowane przez wiele lat, nawet drobne różnice w kosztach miesięcznego wsparcia mogą skumulować się do bardzo poważnych kwot.
Roboty ze swej natury działają w zmiennym otoczeniu i muszą reagować na wszelkie modyfikacje systemów informatycznych i procesów, które automatyzują. Najczęściej podkreślaną cechą robotów jest bardzo niski w porównaniu z innymi technologiami koszt wytworzenia robota. Niestety zwykle nie mówi się dużo o wysiłku, który należy podjąć później, aby zapewnić, że roboty będą działały bez przestojów, kiedy zajdzie potrzeba modyfikacji sposobu ich pracy.
Z tego punktu widzenia bardzo istotne jest, aby właściwie podzielić odpowiedzialność pomiędzy jednostkami odpowiedzialnymi za rozwój i utrzymanie instalacji robotycznej.
W pełnym modelu chmurowym całość tej odpowiedzialności leży po jednej stronie. Jeśli dojdzie do jakichkolwiek usterek, przestojów lub awarii, czas ich naprawy jest minimalizowany przez skrócenie ścieżek komunikacji pomiędzy różnymi organizacjami.
W modelu hybrydowym lub on-premise odpowiedzialność za cześć lub całość komponentów infrastruktury jest rozdzielona, więc może dochodzić do sporów kompetencyjnych. W najlepszym przypadku oznacza to wydłużenie czasu analizy z powodu konieczności włączenia pracowników kilku jednostek organizacyjnych. Zwykle roboty wykonują zadania, które zajmują dużo czasu, więc każde dodatkowe opóźnienie może wpłynąć na niedotrzymanie oczekiwanych terminów. Oczywiście przy zapewnieniu odpowiednich procedur i ścieżek komunikacji, a także budując relacje międzyludzkie można z powodzeniem utrzymywać instalacje on-premise, czy hybrydowe i nadal osiągać bardzo wysokie wskaźniki dostępności. Wymaga to jednak dużo większego wysiłku.
Koszty
Stosunkowo łatwo porównać bezpośrednie koszty każdego z wariantów sprawdzając ceny niezbędnych sprzętowych komponentów rozwiązania. Jak w każdym klasycznym dylemacie – wynajmij albo kup, opcja zakupu własnej infrastruktury powinna w końcu być tańsza niż jej wynajmowania. Niestety to czysto teoretyczne ćwiczenie. W rzeczywistości, jeśli zrezygnujemy z jednej z największych zalet chmury, czyli elastyczności, to ceny rezerwowanych na długi okres maszyn zaczną się zbliżać do tych kupionych na własność. Wariant on-premise sprawdza się przy stosunkowo stabilnym rozwiązaniu. Jest natomiast zaporowy kosztowo, jeśli chcemy czegoś spróbować, żeby się upewnić, czy rozwiązanie ma sens. W przypadku robotów to bardzo powszechny scenariusz, dlatego w zdecydowanej większości przypadków koszty chmury są znacznie niższe.
Dodatkowo wariant on-premise niesie za sobą cały zestaw ukrytych kosztów, o których często zapomina się porównując tylko bezpośrednie koszty sprzętu. Obejmują one głównie aktualizację sprzętu i oprogramowania, zapewnienie wydajności, bezpieczeństwa, utrzymania, czy zarządzania zmianą.
Podsumowując – rzetelnie wykonane porównanie kosztów z pewnością pokaże ogromną przewagę chmury nad każdym innym wariantem.
Podsumowanie
- Wariant on-premise ma zastosowanie w coraz bardziej niszowych przypadkach. Ma on sens praktycznie wyłącznie tam, gdzie istnieją twarde zewnętrzne ograniczenia prawne lub w nielicznych przypadkach wewnętrznych ograniczeń regulacyjnych.
- Wariant hybrydowy może być użyteczny tam, gdzie kosztowne jest zbudowanie obrazu stacji roboczej i udostępnienie go poza środowiskiem Klienta oraz ze względu na możliwość ograniczenia transmisji danych wrażliwych do chmury
- Wariant chmurowy sprawdzi się najlepiej we wszystkich pozostałych przypadkach oferując lepsze bezpieczeństwo, stabilność, wydajność i elastyczność rozwiązania
Zwykle w sytuacjach, w których mamy możliwość wyboru kilku wariantów odpowiedź na pytanie o najlepszy brzmi – „to zależy”.
Jestem przekonany, że w przypadku robotów ta odpowiedź w przytłaczającej liczbie przypadków to – „zdecydowanie chmura”.
Które procesy warto zautomatyzować ? Pobierz przegląd zastosowań RPA w poszczególnych działach