Sieć – wąskie gardło wirtualizacji

0

Wirtualizacja znacznie poprawiła współczynnik wykorzystania mocy obliczeniowej serwerów, ale jednocześnie doprowadziła ilość operacji wejścia/wyjścia do granic możliwości technicznych sprzętu. Wirtualne serwery potrzebują większej liczby połączeń z siecią i pamięciami masowymi, a także potrzebują większej przepustowości, co czyni sieć w serwerowni bardziej skomplikowaną i kosztowną. Czy jest na to jakieś lekarstwo?

Wirtualizacja upraszcza zarządzanie serwerami, ale dla kontrastu znacznie komplikuje zarządzanie operacjami wejścia/wyjścia. Mnóstwo interfejsów sieciowych, kabli i portów w przełącznikach, które oryginalnie nie były projektowane z myślą o wirtualizacji serwerów, podwyższa koszty i ogranicza elastyczność oraz skalowalność aplikacji. Czasochłonne zadania, jak montowanie kart sieciowych w serwerach, instalacja kabli i dodawanie kolejnych portów w przełącznikach wciąż są utrapieniem administratorów, pamiętanym z czasów sprzed wirtualizacji. Niestety, te zadania nie należą do rzadkości, ich realizacja może zająć nawet wiele dni, są podatne na błędy i potrafią angażować pracowników różnych zespołów IT. Co gorsza, zbudowana w ten sposób infrastruktura często nie daje optymalnych rezultatów, a w efekcie może nawet ograniczać wydajność serwerów.

Wpływ wirtualizacji na wymagania wejścia/wyjścia
Termin wejście/wyjście (I/O) odnosi się po prostu do przesyłania danych z jednego urządzenia do drugiego. W przypadku operacji I/O serwerów mamy na myśli przede wszystkim pierwszy skok, którym jest połączenie serwera z przełącznikiem, pamięcią masową lub innym serwerem.

Podłączenie serwera do przełącznika lub dwóch wydaje się prostym zadaniem. Jeśli serwer obsługuje jedną aplikację, rzeczywiście tak jest. W tym przypadku to aplikacja definiuje wymagania dotyczące łączy sieciowych, które dodatkowo rzadko zmieniają się z upływem czasu.

Jednak wirtualizacja serwerów ma znacznie większe wymagania dotyczące I/O. Kiedy serwer obsługuje kilka czy kilkanaście aplikacji, a te aplikacje mogą się zmieniać, np. w wyniku migracji między serwerami, należy liczyć się z trzema rzeczami:

  • Więcej interfejsów I/O. W serwerowni działa z reguły od dwóch do dziesięciu fizycznie odseparowanych sieci. W różnych momentach wirtualne serwery mogą potencjalnie wymagać łączności ze wszystkimi sieciami, co znacznie zwiększa liczbę połączeń do serwerów.
  • Więcej przepustowości.Wraz z rosnącym współczynnikiem wykorzystania mocy serwerów (w wirtualnym środowisku wynosi on 50% i więcej) w naturalny sposób rośnie liczba operacji I/O. Jeśli natomiast moc serwerów jest wykorzystywana w niewielkim procencie, również interfejsy wejścia/wyjścia nie będą intensywnie wykorzystywane. W wirtualnym środowisku większa liczba aplikacji napędza ruch sieciowy, co z kolei zwiększa ryzyko powstania wąskich gardeł. Szczególnie jeśli aplikacje działają na nowoczesnych serwerach, które oferują bardzo dużą moc obliczeniową, dzięki wielu rdzeniom i dużej ilości pamięci RAM.
  • Więcej zmian.Wirtualne środowisko ma dynamiczną naturę. Ponieważ jest wysoce prawdopodobne, że wymagania będą się zmieniać, również połączenia sieciowe muszą się zmieniać.

Wdrażanie sieci w wirtualnej serwerowni
Tradycyjne interfejsy I/O mogą pracować w zwirtualizowanym środowisku – tak jest w przypadku większości obecnych wdrożeń. Powszechnie występują trzy poniższe scenariusze wdrożenia:

  • Wariant 1: podłączyć wszystko. Każdy serwer jest podłączony do wszystkich sieci. To znacznie podwyższa koszty w przeliczeniu na serwer i wymaga dużych gabarytowo serwerów, w których zmieści się odpowiednia liczba kart sieciowych. Dlatego serwery blade mogą się nie sprawdzić w tym przypadku. Poza tym komplikuje wprowadzanie zmian w sieci.
  • Wariant 2: duża, płaska sieć. W serwerowni działa jedna sieć, a izolację zapewniają VLAN’y. To utrudnia spełnienie ewentualnych wymogów prawnych i komplikuje zarządzanie. Nie daje możliwości zagwarantowania wydajności i nie rozwiązuje problemu podłączenia do wielu różnych interfejsów I/O (1GE, 10GE, FC).
  • Wariant 3: podłączanie serwerów tylko do sieci, do których faktycznie muszą mieć dostęp. Ten wariant jest tańszy niż wariant 1., a jednocześnie zapewnia izolację, której brakuje w wariancie 2. Jednak w tym przypadku brakuje możliwości migracji wirtualnych maszyn między wszystkimi serwerami i jest ograniczona elastyczność mechanizmów failover. Z pewnością wraz ze zmianą potrzeb trzeba będzie zmieniać też interfejsy I/O.

Żaden z opisanych wariantów nie rozwiązuje problemu rosnącej złożoności zarządzania siecią. We wszystkich przypadkach pojawia się ważka kwestia zarządzania dużą liczbą konfiguracji I/O wdrażanych oddzielnie dla każdego serwera.

Lekarstwem wirtualne interfejsy I/O
Wirtualne interfejsy I/O to lepsze rozwiązanie, ponieważ potencjalnie redukuje koszty i upraszcza zarządzanie, a jednocześnie nie wymaga kompromisów od strony wydajności. Aby zrozumieć, jak działają wirtualne interfejsy wejścia/wyjścia, warto przyjrzeć się najpierw przykładowi ze świata fizycznego. Weźmy serwerownię, w której jest 50 serwerów, 4 sieci Ethernet oraz 2 sieci Fibre Channel. W tym przykładzie podejście połączenia wszystkiego ze wszystkim wymusi instalację 12 połączeń do każdego serwera (ze względu na redundancję do każdej sieci należy pociągnąć po 2 kable) oraz wykorzystanie 600 portów w serwerach i przełącznikach.

Dzięki wirtualnym interfejsom I/O zachowuje się możliwość podłączenia do wszystkich sieci, ale bez potrzeby montażu 12 kabli do każdego serwera. Zamiast tego wystarczą dwa urządzenia (redundancja), tzw. I/O Director. Od tych urządzeń należy pociągnąć po 2 kable do każdego z 50 serwerów (w sumie 100 połączeń). Te kable zapewnią fizyczne połączenie pomiędzy serwerami a urządzeniami I/O Director.

W następnym kroku należy utworzyć wirtualne interfejsy sieciowe (virtul NIC) i HBA (virtual HBA) w serwerach. Gdy te elementy zostaną utworzone, nastąpi ich przypisanie przez oprogramowanie zarządzające do określonych portów w I/O Director. W ten sposób powstaną dedykowane połączenia pomiędzy serwerami i poszczególnymi sieciami. Dokładnie tak samo, jak w przypadku połączeń oddzielnymi kablami z każdą siecią.

Wirtualne interfejsy wejścia/wyjścia przynoszą różne korzyści. W opisanym przykładzie występuje:

  • Konsolidacja: udało się zredukować o ok. 80% liczbę portów w serwerach i przełącznikach oraz liczbę kabli.
  • Elastyczność: Każdy serwer jest podłączony redundantnie do każdej sieci. Wirtualnymi kartami sieciowymi i HBA można elastycznie zarządzać i wdrażać je z wykorzystaniem oprogramowanie zarządzającego. Jeśli potrzebne są dodatkowe połączenia, można je utworzyć zdalnie bez fizycznej ingerencji w serwerowni.
  • Izolacja: połączenia pomiędzy poszczególnymi interfejsami wirtualnymi są izolowane. Dane nie są dostępne na innych portach. Kiedy zmienią się wymagania, można usunąć zbędne interfejsy i dane połączenie przestanie istnieć.
  • Dostępność: jeśli serwer ulegnie awarii, wirtualne interfejsy I/O mogą być przeniesione na zapasowy serwer bez konieczności ponownego mapowania.
  • Mniejsze serwery: ponieważ do serwerów przyłącza się mniej kabli, można kupić mniejsze serwery, zamiast dużych, mieszczących większą liczbę kart sieciowych.
  • Wydajność: wykorzystanie połączeń 10 GE w większości wypadków rozwiąże wszelkie problemy z zapotrzebowaniem na przepustowość.
  • Redukcja kosztów: mniejsza liczba elementów fizycznych zmniejsza koszty inwestycji w infrastrukturę i koszty zarządzania.

Wirtualne interfejsy wejścia/wyjścia, o których jeszcze parę lat temu nikt nie słyszał, obecnie stały gorącym tematem. Jest szereg producentów, którzy oferują tego typu rozwiązania przeznaczone na różne segmenty rynku. Producenci serwerów i urządzeń sieciowych, jak Dell, Cisco i HP, mają w swojej ofercie rozwiązania do wdrażania wirtualnych interfejsów I/O. Inni producenci, jak Intel, wprowadzają wbudowane rozwiązania, dzięki którym funkcjonalność wirtualnych interfejsów I/O pojawia się bezpośrednio w płytach głównych serwerów.

Czym się kierować przy wyborze wirtualnych interfejsów I/O?
Podobnie jak w przypadku innych technologii, rynek wirtualnych interfejsów I/O gwałtownie się rozwija i pojawiają się rozwiązania oferujące coraz szerszy wachlarz funkcji. Z punktu widzenia wdrożenia w firmie należy zwrócić uwagę na następujące elementy:

  • Wirtualne karty sieciowe i HBA powinny być skalowalne i przeźroczyste. Żeby to zapewnić, potrzebne są wirtualne karty sieciowe i HBA, które można wdrażać w locie, nawet na działających serwerach. Sieci Ethernet i Fibre Channel powinny być zunifikowane – cały ruch powinien odbywać się po pojedynczym okablowaniu serwerowym 1 GE lub 10 GE.
  • Wydajność. Należy się upewnić, czy dostępna przepustowość spełni wymagania poszczególnych serwerów bez potrzeby instalowania więcej niż 2 kabli do danego serwera.
  • Kontrolowanie mechanizmów Quality of Service. Ponieważ wirtualne interfejsy I/O są z definicji współdzielonym zasobem, bardzo ważne stają się mechanizmy QoS, które mają zapewnić najważniejszym aplikacjom wymaganą przez nie przepustowość. Reguły QoS powinny być kontrolowane sprzętowo.
  • Otwartość: Czy dane rozwiązanie działa z używanymi w firmie serwerami, macierzami i urządzeniami sieciowymi? Lub z tymi, które planujesz dodać? Nie uda się osiągnąć korzyści z wirtualnych interfejsów I/O, jeśli trzeba będzie korzystać z wielu rozwiązań.
  • Mobilność: Możliwość migrowania wirtualnych interfejsów I/O pomiędzy serwerami.
  • Jedna konsola zarządzania. Istotne z punktu widzenia zarządzania i migrowania zasobów pomiędzy wszystkimi serwerami.
  • Skalowalność: Sprawdź maksymalną liczbę wirtualnych kart sieciowych i HBA na serwer obsługiwanych przez dane rozwiązanie. Należy wybrać rozwiązanie oferujące nadwyżkę ponad bieżące potrzeby firmy.
  • Integracja z platformą wirtualizacji, np. z VMware vSphere. Możliwość przeglądania w jednym oknie informacji o wirtualnych połączeniach, wirtualnych maszynach i wirtualnych przełącznikach. To bardzo ważne, ponieważ ułatwia monitorowanie przypisania wirtualnych zasobów do sieci i pamięci masowych.
  • Zdalne zarządzanie. Aby uniknąć wycieczek do serwerowni, należy się upewnić, żeby wszystkimi aspektami danego rozwiązania można zarządzać zdalnie.

Perspektywy na przyszłość
Wydaje się, że wirtualne interfejsy I/O staną się w przyszłości ważnym elementem serwerowni. Już dzisiaj ta technologia ułatwia wdrażanie wirtualizacji, zarówna na małą, jak i dużą skalę. Zapewnia elastyczną infrastrukturę, odpowiednią dla specyfiki wirtualnych serwerów. Znaczenie wirtualnych interfejsów I/O wzrośnie wraz z przechodzeniem wirtualizacji w kierunku chmur obliczeniowych. W tym modelu kluczem do sukcesu jest elastyczne przydzielanie zasobów, w czym pomagają wirtualne interfejsy I/O. Dobra wiadomość jest taka, że rozwiązania te będą dostępne także w wersjach dla małych wdrożeń, a zaawansowane funkcjonalność z wersji korporacyjnych będą z czasem pojawiały się także w tańszych rozwiązaniach.

BRAK KOMENTARZY

ZOSTAW ODPOWIEDŹ