Nowa era – definiowana programowo

Jeszcze kilka lat temu mówiło się o sieciach definiowanych programowo. Obecnie w ten sposób budowane są całe centra przetwarzania danych oferujące niezwykłą elastyczność pracy.

Od początku swojego istnienia sieci definiowane programowo wprowadziły duże zmiany w środowisku, do którego zostały przeznaczone. Opcja konfigurowania połączeń na żądanie aplikacji sprawiła, że po raz pierwszy można było dynamicznie zestawiać tunele zgodnie z aktualną potrzebą pracy oprogramowania (np. zestawianie rozmowy telefonicznej VoIP), a także elastycznie wprowadzać założenia polityki bezpieczeństwa. Obecnie w ten sposób udaje się przeprowadzić integrację istniejącego środowiska z chmurą – przeprowadzić maszynę do innego środowiska (np. do innego data center), zachowując wszystkie założenia oraz połączenia sieciowe. W ten sposób można uruchomić środowisko chmurowe korzystające z dwóch różnych lokalizacji i przenosić aplikacje między tymi centrami przetwarzania danych, zachowując spójną adresację i ciągłe połączenia sieciowe. Uruchomiona w tak rozproszonym geograficznie środowisku aplikacja jest w stanie w dalszym ciągu odwoływać się do tej samej bazy danych (m.in. do lokalnego węzła klastra active-active), korzystać ze wszystkich elementów middleware, połączenia mogą być kierowane przez odpowiedni load balancer do właściwych instancji wirtualnych.

Krytyczne zarządzanie

Przy dostępnej wirtualizacji połączeń sieciowych, maszyn oraz całych środowisk przetwarzania danych szczególną rolę odgrywa zarządzanie. W tradycyjnym modelu data center nawet przy wdrożonej wirtualizacji serwerowej nadal wymagany jest pewien nakład pracy, by określić, czy są spełnione odpowiednie założenia właściwe do pracy danej aplikacji. Wymagania bywają różne, zależą od potrzeb biznesowych i mogą obejmować różną klasę obsługi po stronie storage'u, korzystanie z replikacji synchronicznej, równoważenie obciążenia, obsługę równoległych instancji serwerów aplikacyjnych, a także odpowiednią ochronę za pomocą zapór sieciowych. Nawet jeśli wszystkie powyższe elementy zostaną zwirtualizowane, nadal wiele warunków musi zostać spełnionych jednocześnie, by zapewnić oczekiwaną odporność na awarie lub zaplanowaną wydajność aplikacji.

Zobacz również:

Duncan Epping, główny specjalista ds. technologii w dziale Storage and Availability firmy Vmware, mówi: „Najważniejszym zagadnieniem związanym z data center definiowanym programowo jest zarządzanie bazujące na polisach. Za każdym razem, gdy maszyna wirtualna jest przenoszona, należy wziąć pod uwagę cały stos – jaki storage jest dostępny i jakie wymagania nakłada dana maszyna na całe środowisko poniżej. Jeśli maszyna była istotna z punktu widzenia biznesu i wymaga np. synchronicznej replikacji, jej wymagania muszą być spełnione także po migracji. Software defined storage pamięta i stosuje odpowiednie zasady do wirtualnej sieci vSAN i wirtualnych woluminów, co ułatwia pracę administratorów”.

Istotą nowoczesnego zarządzania bardzo zmiennym środowiskiem jest wykorzystanie zarządzania opartego na polisach. Każda z reguł określa wymagania biznesowe, jakie następnie zostają przełożone na reguły związane z konfiguracją, które z kolei zostają przypisane do każdej z maszyn wirtualnych. Od tej pory każde uruchomienie lub próba przeniesienia maszyny wirtualnej sprawia, że system w połączeniu z platformą składowania danych od razu określa docelową lokalizację maszyn wirtualnych, ich konfigurację składowania danych oraz połączenia sieciowe. W ten sposób można uniknąć przenoszenia maszyn do środowiska, w którym krytyczne dla biznesu opcje (np. wysoka dostępność oraz zerowa utrata danych w przypadku awarii) nie byłyby spełnione. Proces jest w pełni automatyczny, w ten sposób można migrować całe aplikacje, nawet jeśli składają się z wielu maszyn wirtualnych wymagających osobnej ochrony. Razem z maszynami wirtualnymi do nowego środowiska podąża cała ich konfiguracja włącznie z parametrami zasobów storage'u.

Duncan Epping wyjaśnia: „Środowiska klasy Enterprise są skomplikowane. Gdy mówimy o więcej niż 10 podsieciach LAN, zarządzanie staje się coraz trudniejsze. Administratorom trudno znaleźć charakterystyki, które powinny być włączone dla każdej z tych podsieci. Większość klientów enterprise, nie używa zarządzania bazującego na polisach i ma problemy ze stwierdzeniem zgodności maszyn z wymaganiami biznesu. Jeśli biznes wymaga SLA obejmującego zerową utratę danych, czyli RPO równe zero, dział IT musi stwierdzić, jaki jest ten parametr dla maszyny wirtualnej i czy nadal znajduje się ona na zasobie, który pasuje do ustawionego SLA. W praktyce występuje tu wielokrotne szukanie, czy każdy aspekt jest poprawnie skonfigurowany. To samo dotyczy wszystkich używanych woluminów. Nowoczesne zarządzanie oparte na polisach znacznie to upraszcza”.

Sieć wirtualna na okręcie podwodnym

Aplikacje krytyczne muszą mieć zagwarantowaną dostępność zasobów niezależnie od awarii sprzętowych. Jednym z najciekawszych przypadków jest wdrożenie wirtualnej sieci vSAN na okręcie podwodnym marynarki wojennej.

Duncan Epping mówi: „Na pokładzie okrętu zbudowano klaster geograficzny wyposażony w oprogramowanie vSAN, aby zapewnić pracę aplikacji niezależnie od ewentualnych uszkodzeń. Uruchomienie dwóch węzłów na dziobie i rufie tego samego okrętu sprawia, że gdyby coś zdarzyło się z tym okrętem, jedna z jego części nadal powinna być funkcjonalna”.

Szybciej sięgnąć po dane

Wirtualizacja storage'u w połączeniu z wirtualizacją sieci sprawia, że w nowoczesnym data center można radykalnie usprawnić pracę serwerów, przyspieszając dostęp do podsystemu składowania danych. Użycie pamięci Flash jako pamięci podręcznej przy odczycie i zapisie sprawi, że wszystkie operacje widoczne dla maszyny wirtualnej zostaną przeprowadzone znacznie szybciej niż w klasycznym modelu.

Duncan Epping mówi: „Każdy węzeł vSAN dostarczający zasobów składowania danych ma co najmniej jeden zasób flash. Jest on wykorzystywany jako pamięć podręczna przy odczycie oraz bufor przy zapisie porcji danych do warstwy poniżej. Gdy maszyna wirtualna zapisuje informacje do warstwy trwałego zapisu, dane będą zapisane w pierwszej kolejności do pamięci Flash. To oznacza, że potwierdzenie zapisu do systemu operacyjnego dotrze po czasie rzędu milisekundy, czyli wielokrotnie szybciej niż w przypadku tradycyjnego systemu storage. Można także zdefiniować jakość danej usługi, wprowadzając rezerwację pasma i operacji, lub zagwarantować niskie opóźnienia, zależnie od tego, co może zaoferować podsystem składowania danych. Na tej podstawie udaje się określić lokalizację, do której może trafić maszyna wirtualna w przypadku migracji za pomocą znanych mechanizmów, właściwych dla środowiska wirtualizowanego”.

Wydajność dla krytycznych obciążeń

Wprowadzenie mechanizmów API pozwala na budowanie filtrów, które są w stanie wykorzystać lokalne urządzenia do budowy szybkiej pamięci podręcznej. Przyspieszenie osiągane za pomocą tej technologii jest istotne dla wydajności wielu aplikacji, gdyż można wykorzystać pamięć podręczną zainstalowaną na hoście, który uruchamia maszyny wirtualne. Jest to bardzo szybka pamięć.

Duncan Epping wyjaśnia: „W ten sposób można wykorzystać lokalną pamięć cache jednocześnie z tradycyjnymi systemami storage, włączając cache na lokalnym hoście, za pomocą lokalnych zasobów pamięci podręcznej. Gdy maszyna coś zapisze lub chce przeczytać, można mieć nadzieję, że dane będą pochodzić z lokalnego cache'u znajdującego się w hoście, dzięki czemu operacja zostanie przeprowadzona bardzo szybko. Mówimy tu o opóźnieniach poniżej milisekundy, co ma znaczenie przy silnie obciążonych aplikacjach, szczególnie klasy mission critical. Taką aplikacją może być SAP, Exchange, baza danych SQL. Jeden z naszych klientów uruchomił system billingowy obsługujący ok. 6–7 milionów klientów. VDI jest też bardzo wymagającym zastosowaniem, jeśli chodzi o storage i jest to jeden z typowych przykładów użycia vSAN".