W pogoni za lenistwem

Centrum danych, w którym wszystko dzieje się automatycznie, dostawcy obiecują nam od lat. Przeszkodą w realizacji tej pięknej wizji jest splot dobrze wszystkim znanych trudności, które nigdy nie przemijają: ograniczone czas i środki, niepełna wiedza i omylność ludzi, a zwłaszcza ciągła zmienność okoliczności biznesowych i technologii.

Centrum danych, w którym wszystko dzieje się automatycznie, dostawcy obiecują nam od lat. Przeszkodą w realizacji tej pięknej wizji jest splot dobrze wszystkim znanych trudności, które nigdy nie przemijają: ograniczone czas i środki, niepełna wiedza i omylność ludzi, a zwłaszcza ciągła zmienność okoliczności biznesowych i technologii.

Bezobsługowe centrum danych to idea, która przyświeca wielu dużym firmom, choć nie całkiem wiadomo, z jakich powodów. Bezobsługowość oznacza brak udziału człowieka w typowych czynnościach i procedurach, a więc ich pełną lub prawie pełną automatyzację. Oznacza także, że zjawiska niepożądane bądź groźne będą automatycznie rozpoznawane, a ich skutki i/lub przyczyny ograniczane lub eliminowane, zaś zjawiska pozytywne - wzmacniane.

Na początek wypada postawić pytanie: w jakim celu? Jeśli za główny powód dążenia do budowy zautomatyzowanego centrum danych uznać chęć obniżenia kosztów zarządzania, szybko zorientujemy się, że to ślepy zaułek. Paradoksalnie bowiem automatyzacja, choć eliminuje pewne koszty bezpośrednie, tworzy nowe koszty, dostrzegane dopiero po pewnym czasie. Automatyzacja kosztuje, ponieważ stworzenie, wdrożenie i utrzymanie rozwiązań zautomatyzowanych tworzy koszty, które są wprost proporcjonalne do stopnia skomplikowania środowiska oraz stopnia uproszczenia wynikającego z automatyzacji.

Być może więc wcale nie chodzi o rezygnację z usług człowieka jako źródła kosztów, ale istoty myślącej wolniej niż zaprogramowane przezeń automaty, działającej niepowtarzalnie i popełniającej błędy nawet w idealnych warunkach. Jeśli automat potrafi wykonać coś lepiej i szybciej niż człowiek, dlaczego nie wykorzystać automatu - utrzymać jakość na wysokim poziomie, ryzyko na niskim, a koszty - na rozsądnym?

Jest jeszcze jedna hipoteza - bezobsługowe centrum danych to takie, które pomimo zawodności różnych elementów infrastruktury, ułomności oprogramowania i nieprzewidywalności człowieka, potrafi udostępniać zadany zestaw usług z określonymi parametrami jakościowymi. Pewność, przewidywalność, stałość - to cechy, z których wynikają niskie koszty i jakość, tyle że już poza centrum danych - w sferze celów organizacji, którym służą.

Większości organizacji przyświecają zapewne wszystkie te cele jednocześnie, co jednak nie znaczy, że są one w stanie je zrealizować. Nie chodzi wyłącznie o koszty - nawet gdyby założyć, że na potrzeby automatyzacji centrum danych firmy są w stanie przeznaczyć bardzo duże kwoty, nie ma pewności, że ustalone cele zostałyby zrealizowane.

Ograniczone przenikanie

Nie wszystkie elementy centrum danych - rozumianego jako całość - nadają się do automatyzacji w równym stopniu. Czym innym jest automatyzacja procesów biznesowych, czym innym automatyzacja usług (aplikacji) realizujących te procesy, a czym innym - automatyzacja infrastruktury, w której usługi działają. Na każdym z tych poziomów automatyzacja oznacza coś innego, ma inne źródła i cele oraz inne rzeczywiste możliwości.

Jeśli poszukuje się rozwiązania automatyzującego dla centrum danych, trzeba wziąć pod uwagę choćby ten prosty podział, żaden z dostawców nie jest bowiem w stanie obsłużyć wszystkich poziomów w równym stopniu - i wątpliwe, czy kiedykolwiek będzie. Każda z tych sfer rozwija się dynamicznie i tworzy nowe obszary wiedzy specjalistycznej - zwykle hermetycznej i tylko w niewielkim stopniu przenikalnej dla pozostałych. Nawet jeśli dostawcy mówią, że są w stanie automatyzować "wszystko", a więc wszystkie trzy warstwy, na pewno zakres i jakość tej automatyzacji nie będą w każdym obszarze równie zadowalające.

Patrząc wstecz, firmy zajmujące się automatyzacją infrastruktury starały się zrozumieć to, co znajduje się ponad warstwą, w której się specjalizują. Oprogramowanie zarządzające serwerami i sieciami dążyło i nadal dąży do najlepszego "ułożenia się" względem potrzeb usług i aplikacji.

Projektanci systemów wiedzą, że ich rozwiązania służą aplikacjom - tworom nie całkiem przewidywalnym. Wiedzą, jak działają aplikacje - z punktu widzenia systemu operacyjnego, sieci, systemu pamięci masowych, wymagań w dziedzinie bezpieczeństwa, ale czy rozumieją, dlaczego dzieje się tak, a nie inaczej i co jest naprawdę ważne dla aplikacji? Tylko w pewnym stopniu.

Projektanci rozwiązań do zarządzania warstwą usług i aplikacji to zwykle projektanci środowisk middleware ściśle z nimi powiązanych, jak serwery aplikacji i serwery baz danych. Oni rozumieją, co aplikacje rzeczywiście robią - to ich chleb powszedni, ale o tym, co dzieje się pod spodem, wiedzą tylko tyle, ile konieczne. Zwykle oczekują, że warstwa sprzętowo-systemowa będzie działać stabilnie i niezawodnie oraz że będzie się skalować, jeśli zajdzie taka potrzeba. Czy jednak rozumieją wszystkie jej niuanse i ograniczenia?

Nie, ponieważ są rozliczani z tego, jak precyzyjnie i wygodnie stworzona przez nich funkcjonalność realizuje potrzeby biznesowe klientów w dziedzinie zarządzania aplikacjami np. ich konfiguracją, wydajnością, dostępnością itd. Muszą też pilnować, czy ich rozwiązania dorównują temu, co już stworzyła konkurencja. Twórcy rozwiązań do zarządzania aplikacjami starają się przede wszystkim dostosować do reguł rządzących biznesem. Reguły te są dla nich jednak nieprzeniknione - tak jak pogoda dla rolnika. Są czymś, do czego trzeba się dostosować bez dyskusji.

Najwyżej w hierarchii abstrakcji stoją rozwiązania do zarządzania usługami biznesowymi, czyli procesami biznesowymi, na które składa się wiele aplikacji, usług i systemów - często bardzo różnorodnych. Zarządzanie usługami biznesowymi to domena pracowników biznesowych, nie informatyków, ze specyficznym dla poszczególnych obszarów słownictwem, wiedzą fachową, a także wymaganiami opisanymi nie algorytmami, lecz prawniczym językiem umów SLA. Z punktu widzenia rozwiązań do zarządzania procesami biznesowymi ich technologiczne podłoże jest drugorzędne - liczy się zdolność do zamodelowania pewnego scenariusza biznesowego i możliwość jego bieżącego korygowania.

Nic nie stoi w miejscu

Idealnie byłoby, gdyby automatyzację wszystkich opisanych wyżej sfer dało się wykonać za pomocą jednego, spójnego architektonicznie i funkcjonalnie pakietu oprogramowania. W praktyce raczej się to nie uda - na przeszkodzie stoi skala potencjalnych problemów, brak możliwości zgromadzenia pod jednym dachem kompetencji we wszystkich dziedzinach, a nawet gdyby to się udało - problemem pozostanie ich wzajemna koordynacja.

Nie uda się po pierwsze dlatego, że o ile pewna uniwersalność jest możliwa na poziomie zarządzania infrastrukturą, to w dziedzinie zarządzania aplikacjami, a już na pewno w warstwie zarządzania procesami biznesowymi, różnice między firmami będą ogromne. Nawet gdyby rozważania zatrzymać na poziomie różnic między branżami, będą one tak duże, że wymagałyby oferowania dziesiątek rozwiązań branżowych, na co się nie zanosi. Alternatywą byłoby stworzenie rozwiązania o konfigurowalności graniczącej z programowaniem, co jednak ani z automatyzacją, ani z oczekiwanymi w związku z nią oszczędnościami raczej niewiele ma wspólnego.

Automatyzacja wszystkich warstw abstrakcji w centrum danych przez jedno rozwiązanie nie jest możliwa także dlatego, że nie ma firmy, która posiadałaby kompetencje, by je zbudować i utrzymywać. W każdej warstwie zmiany zachodzą stale i zbyt szybko, by śledzić je wszystkie z uwagą, która gwarantowałaby zadowolenie klienta jednocześnie w każdej z dziedzin. Z podobnych przyczyn nie ma też firmy, która byłaby w stanie takie uniwersalne rozwiązanie wdrożyć, zwłaszcza w rozsądnym czasie, a tym bardziej utrzymać i wspierać istniejącą instalację.

Rozwój następuje przez ciągłe przejęcia rozwiązań specjalistycznych i ich integrowanie. Nawet najbardziej rozbudowane funkcjonalnie zestawy rozwiązań do zarządzania systemami, aplikacjami i procesami są spójne jedynie z nazwy. Pod spodem kryje się zazwyczaj gąszcz nakładających się funkcji, wzajemnie sprzecznych interfejsów API i kilka generacji technologii. No właśnie, nawet same technologie leżące u podstaw narzędzi służących do zarządzania także ewoluują, a z nimi wiedza i zainteresowania deweloperów.

Nie odpuścić standardów

I jak tu utrzymać spójność? Nie mówimy tu przecież o automatyzowaniu jednej czy dwóch kluczowych funkcji, lecz automatyzacji totalnej, w której człowiek dba jedynie, by zaprogramowane procedury automatycznie prawidłowo się wykonywały. Jeżeli firma chce automatyzować działanie centrum danych, powinna w pierwszym rzędzie zastanowić się, jakie są jej priorytety i w związku z tym na początku skupić się na automatyzowaniu warstwy dla niej najistotniejszej. Priorytety będą inaczej wyglądać u dostawcy Internetu, inaczej w firmie logistycznej, a jeszcze inaczej w banku.

Świadomość tego, że - pomimo solennych deklaracji dostawców - żadne rozwiązanie nigdy nie zautomatyzuje wszystkich interesujących firmę obszarów działania centrum danych, powinna wieść klientów ku wdrażaniu systemów najlepiej zaspokajających ich potrzeby w poszczególnych obszarach i ich integrowaniu. Takie podejście wydaje się rozsądne z wielu względów. Przede wszystkim pozwala mieć nadzieję, że przynajmniej to, co jest istotne z punktu widzenia firmy, będzie zautomatyzowane tak jak należy.

Spokojne, etapowe podejście skłania do oceny ważności obszarów automatyzacji i stworzenia listy priorytetów. Uniemożliwia uleganie pokusie uruchomienia "jednego wielkiego projektu", który dla klienta prawie zawsze okazuje się pułapką i nie spełnia ustalonych u jego zarania założeń. Pozwala poświęcić więcej czasu na analizę przydatności konkretnych rozwiązań i badanie ich rzeczywistych możliwości, przez co prawdopodobieństwo popełnienia błędu przy wyborze jest minimalizowane.

Z etapowego podejścia do sprawy automatyzacji wynika jeszcze jedno - możliwość skłonienia dostawców do starania się o względy klienta nie raz, lecz wiele razy. To tworzy także okoliczności, w których wymóg stosowania się do standardów - i w efekcie rzeczywista zgodność z nimi wdrażanych rozwiązań - nie będzie tylko mrzonką. Jeśli zaś wdrażane rozwiązania trzymać się będą standardów - nie tylko w teorii, ale i w praktyce, kiedyś, za kilka lat, automatyzować uda się być może prawie wszystko. Być może... o ile za kilka lat ważniejsze nie okażą się inne problemy.

Wiara w automagiczność

Bezobsługowe centrum danych to wizja, która skutecznie odwraca uwagę klientów od realnych problemów. Handlowcom wygodniej jest roztaczać przed klientami wizję prostoty mającą ziścić się w przyszłości, niż pozwalać im skupiać się na przyziemnych problemach wywołanych przez oprogramowanie, o którym kilka lat temu ich poprzednicy mówili, że rozwiąże wszystkie problemy. To zaskakujące, że kolejne generacje informatyków wierzą, że rozwiązania zbudowane przez jednych informatyków cudownie uzdrowią rozwiązania stworzone kiedyś przez innych.


TOP 200