Poradnik planowania działania chmury prywatnej - Zarządzanie infrastrukturą, cz. 2  Udostępnij na: Facebook

Tłumaczenie na podstawie Private Cloud Planning Guide for Operations: Krzysztof Zdrojewski

Opublikowano: 2012-10-24

Wstęp

Mając jednorodne środowisko, można je w łatwy sposób podzielić na część rozwojową, testową i produkcyjną. Ułatwia to przeprowadzenie rozwoju usług oraz testów aktualizacji. Wykorzystując mechanizmy wirtualizacji, można prowadzić prace rozwojowe, które nie powinny wpływać na część produkcyjną. Co więcej, dają one możliwość dynamicznego testowania nowych rozwiązań i szybkiego ich wdrażania. Drugim aspektem, poruszonym w tym artykule, jest zarządzanie wiedzą. To ludzie i ich wiedza stanowią o sile i skuteczności danego rozwiązania.

Ujednolicenie infrastruktury fizycznej

Ujednolicenie infrastruktury fizycznej oznacza stałość i przewidywalność dla maszyn wirtualnych, bez względu na to, na którym fizycznym hoście się znajdują, również poza środowiskiem produkcyjnym. Środowisko może zostać podzielone na część rozwojową, testową i przedprodukcyjną. Wyeliminowanie zmienności pomiędzy środowiskami umożliwia deweloperom łatwiejszą optymalizację aplikacji działających w Chmurach Prywatnych, a testerom daje poczucie pewności, że wyniki odzwierciedlają rzeczywistość produkcyjną, co z kolei znacząco poprawia efektywność testów.

Infrastruktura zwirtualizowana

Infrastruktura zwirtualizowana umożliwia łatwiejsze przenoszenie obciążeń pomiędzy środowiskami. Wszystkie maszyny wirtualne powinny być zbudowane ze wspólnych szablonów, utrzymywanych w bibliotece, która jest wykorzystywana we wszystkich środowiskach. Współdzielona biblioteka może zawierać szablony wszystkich komponentów zatwierdzonych do produkcji, takich jak obrazy maszyn wirtualnych, złote obrazy systemów operacyjnych, szablony ról serwerów oraz szablony platform. Wzory komponentów pobierane są ze współdzielonej biblioteki i stają się budulcem dla środowiska rozwojowego. Aby utworzyć pakiet testowy (w postaci wirtualnego twardego dysku (VHD), który jest następnie ładowany do biblioteki, elementy te, ze środowiska rozwoju, pakowane są razem. Następnie, paczka ta może zostać sprawdzona poprzez uruchomienie dysku VHD w środowisku testowym. Gdy testy zostaną zakończone, paczka ta może zostać ponownie dodana do biblioteki, tym razem jako kandydat do wdrożenia – w środowisku przedprodukcyjnym, a docelowo w środowisku produkcyjnym.

Ponieważ obciążenie jest generowane przez uruchamianie maszyny wirtualnej z pliku VHD, proces Zarządzania Wersją zachodzi bardzo szybko, wskutek przeniesienia pakietu VHD do różnych środowisk. Pozwala to również na szybkie wycofanie zmian, w wypadku gdy proces nie powiedzie się, obecna wersja zostanie usunięta, maszyna wirtualna uruchomi się z poprzednim plikiem VHD.

Wirtualizacja i wykorzystywanie standardowych szablonów maszyn wirtualnych pozwala nam na przemyślenie procesu zarządzania uaktualnieniami i łatami. Z uwagi na fakt, że w środowisku produkcyjnym występują niewielkie różnice, a wszystkie usługi zbudowane są na wspólnym zestawie szablonów, nie jest konieczne wgrywanie aktualizacji na produkcji. Zamiast tego, mogą zostać one zaaplikowane w szablonach we współdzielonej bibliotece. Każda usługa w środowisku produkcyjnym, wykorzystująca dany szablon, będzie wymagała nowego wydania wersji. Pakiet taki jest następnie budowany, testowany i ponownie wgrywany, jak przedstawiono na Rys. 1. Proces wersjonowania.

Proces wersjonowania

Rys. 1. Proces wersjonowania.

Może się to wydawać nieintuicyjne w scenariuszu aktualizacji krytycznych dziur, gdy np. zostanie wykryta, nadająca się do wykorzystania, luka w zabezpieczeniach. Ale dzięki zastosowaniu technologii wirtualizacyjnych i automatycznym skryptom do testów, nowa wersja usługi może zostać bardzo szybko zbudowana, przetestowana i wdrożona.

Minimalizacja zaangażowania człowieka

Zmienność może zostać również wyeliminowana poprzez wprowadzenie zestandaryzowanych, zautomatyzowanych scenariuszy testowych. Choć nie wszystkie scenariusze testowe są lub powinny być zautomatyzowane, te które są, poprawią przewidywalność, przyspieszą testy i skrócą czas wdrożeń. Scenariusze testowe, które są wspólne dla wszystkich aplikacji, lub te, które mogą być współdzielone przez pewną grupę aplikacji, stanowią kluczową grupę kandydatów do automatyzacji. Takie zautomatyzowane skrypty testowe mogą być wymagane dla wszystkich kandydatów do wdrożenia przed ich implementacją na produkcji, co daje pewność na dalszą redukcję zmienności w środowisku produkcyjnym.

Zarządzanie wiedzą

Zarządzanie wiedzą to proces zbierania, analizowania, przechowywania i dzielenia się wiedzą oraz informacją wewnątrz organizacji. Celem Zarządzania Wiedzą jest zapewnienie, że odpowiedni ludzie mają dostęp do informacji, której potrzebują, aby utrzymać działanie Chmury Prywatnej. W miarę jak wiedza praktyczna powiększa się i dojrzewa, zdolność do inteligentnego automatyzowania zadań poprawia się, dostarczając coraz dynamiczniejszego środowiska.

Podejście dostawcy usług do dostarczania infrastruktury

Niedojrzałe podejście do Zarządzania Wiedzą przyczynia się do wolniejszego, mniej wydajnego rozwiązywania problemów w organizacji. Każdy problem lub nowa sytuacja, która powstaje, staje się kryzysem, który należy rozwiązać. Zaledwie kilka osób w organizacji może już posiadać doświadczenie i być w stanie rozwiązać problem szybko oraz spokojnie, ale ich wiedza nie jest współdzielona. Niedojrzały proces zarządzania wiedzą powoduje większy stres u pracowników odpowiedzialnych za utrzymanie i zazwyczaj skutkuje większym rozczarowaniem klienta oraz częstszymi i dłużej trwającymi, niespodziewanymi awariami. Dojrzałe procesy Zarządzania Wiedzą są konieczne w celu osiągnięcia podejścia dostawcy usług do dostarczania infrastruktury. Zdobyta wiedza i doświadczenie są udokumentowane, przekazane pracownikom oraz dostępne w miarę potrzeb. Zespoły utrzymaniowe nie są już sterowane kolejnymi kryzysami, gdyż zdarzeń wpływających na usługi jest mniej i są one szybciej rozwiązywane.

W procesie projektowania Chmury Prywatnej opracowanie modelu zdrowia będzie powodowało zebranie większości informacji koniecznych dla zarządzania wiedzą. Model zdrowia określa stany idealne dla każdego składnika infrastruktury oraz spis czynności, które należy wykonać codziennie, tygodniowo, miesięcznie oraz w miarę potrzeb, aby utrzymać ten stan. Model zdrowia określa również stany odwrotne dla każdego składnika infrastruktury oraz czynności, jakie należy podjąć, aby dany komponent przywrócić do działania. Informacja ta będzie stanowić podstawę bazy danych Zarządzania Wiedzą.

Określanie przewidywalności

Synchronizowanie Modelu Zdrowia z alertami powoduje, że powiadomienia mogą zawierać odnośniki do bazy Zarządzania Wiedzą, opisujące konkretne czynności, jakie należy wykonać w odpowiedzi na powiadomienie. Pozwoli to na rozwój przewidywalności jako spójnego oraz sprawdzonego zestawu czynności, który należy podjąć dla rozwiązania zgłoszenia.

Minimalizowanie zaangażowania człowieka

Ostatnim etapem do stworzenia Chmury Prywatnej jest automatyzacja odpowiedzi na każdy alert, tak jak zostało to zdefiniowane w bazie danych Zarządzania Wiedzą. Jak tylko odpowiedzi te zostaną pozytywnie zweryfikowane, powinny zostać w maksymalny sposób zautomatyzowane. Należy jednak pamiętać, że automatyzacja odpowiedzi na alerty nie powinna powodować, że staną się one niewidoczne i można o nich zapomnieć. Nawet, gdy zgłoszenia generują w pełni zautomatyzowaną odpowiedź, informacja o tym powinna zostać przechwycona przez system Zarządzania Usługami. Jeżeli zgłoszenie wskazuje na konieczność zmiany, powinien zostać utworzony rekord dotyczący zmiany. Podobnie, jeżeli alert jest odpowiedzią na incydent, w logu powinien zostać utworzony zapis dotyczący tego incydentu. Schematy te powinny być regularnie poddawane przeglądom przez zespół Utrzymania, aby mieć pewność, że czynności te przynoszą oczekiwane wyniki. Na koniec, w miarę jak środowisko zmienia się wraz z upływem czasu lub kiedy zdobywana jest nowa wiedza, baza danych procesu Zarządzania Wiedzą musi zostać zaktualizowana wraz z automatycznymi schematami działania, bazującymi na tej bazie danych.

Podsumowanie

W tym artykule omówione zostały zalety jednolitej infrastruktury informatycznej oraz sposób prowadzenia testów w środowisku wirtualnym. Posiadając infrastrukturę wirtualną można w łatwy sposób przeprowadzać na wydzielonej części prace rozwojowe. Po ich zakończeniu, w szybki i sprawny sposób można je wdrożyć na produkcję. Uzupełnieniem dla udanego funkcjonowania Chmury Prywatnej jest zarządzanie wiedzą oraz mechanizmami do jej gromadzenia.