VMworld 2016 – Kontenery w vSphere – odsłona druga

Dodane 26/10/2016 by blogsadmin
OŚWIADCZENIE: ten artykuł jest starszy niż jeden rok i może nie być aktualny w przypadku ostatnich wydarzeń lub nowo dostępnych informacji.

Mikołaj Wiśniak, Senior Systems Engineer VMware

Odsłona druga… Można polemizować, czy ten tytuł jest do końca trafny. Pomimo tego, że o wsparciu technologii kontenerów słyszymy kolejny rok podczas konferencji VMworld, nie było inaczej i w tym roku: zarówno w Las Vegas jak i w Barcelonie… Jednak tym razem w Barcelonie ostatecznie zostało potwierdzone, że wiodąca platforma wirtualizacji x86 będzie posiadała oficjalne wsparcie dla kontenerów od wersji 6.5, którą zapewne św. Mikołaj przyniesie wam pod choinkę (lub poduszkę) – ale oczywiście jak to jest z Mikołajem nie każdy w niego wierzy więc nie traktujcie tych dat wiążąco.

W ramach pierwszej odsłony VIC – vSphere Integrated Containers – zaprosiliśmy wąską grupę zapaleńców do przetestowania wersji beta. Oczywiście wymagało to dość bolesnej współpracy administratorów vSphere z ich odwiecznymi „przyjaciółmi” programistami (zwanymi dalej w tekście Devs), którzy uważają nas (administratorów) za darmozjadów, którzy pracują tylko wtedy, kiedy coś się psuje (nic bardziej mylnego). Pomimo drobnych problemów ze znalezieniem wspólnego języka w/w testy spotkały się z ciepłym przyjęciem zwłaszcza w tej drugiej grupy. Ale o tym później…

Zakładam, że skoro czytasz ten artykuł to słyszałeś pewnie o Dockerze (zwłaszcza jeśli należysz do grupy Devs), jeżeli nie to przed resztą artykułu polecam zapoznanie się z podstawowymi informacjami o technologiach kontenerów (polecam ten wpis) – i zważywszy na to w jaki sposób coraz częściej tworzone są współczesne aplikacje – będzie to wiedza z pewnością przydatna nawet jeśli z pisaniem programów nie chcemy mieć nic wspólnego. W końcu nawet te ‘next-gen’ aplikacje muszą gdzieś być produkcyjnie uruchamiane – co nie?

Wracając do VIC – Idea jest prosta, udostępniamy hosta ESXi w taki sposób by był prezentowany jako host Dockera. Nowo tworzone kontenery są zwyczajnymi maszynami wirtualnymi. No może nie do końca zwyczajnymi, bo opierają się o zaprojektowany specjalnie pod kontenery bardzo „lekki” system operacyjny Photon OS, który waży tylko 25MB i potrafi się uruchomić w mniej niż 10s. Co więcej, jak pewnie wiecie wraz z vSphere 6 wprowadziliśmy technologię Instant Clone, która umożliwia sklonowanie działającej już maszyny wirtualnej ułamku sekundy. Dotychczas wydawało by się że jest to funkcja która sprawdzi się wyłącznie dla wirtualnych Desktopów, pozwalając uruchomić 1000VM w mniej niż 20 min bez dysków SSD – nic bardziej mylnego. Instant clone sprawdza idealnie dla wirtualnych kontenerów.

mwisniak01_1

Ok, teraz czas na trudne pytania. Skoro mamy kontenery, które niektórzy nazywają wirtualizacją next-gen, to po co mamy je umieszczać w dedykowanych maszynach wirtualnych. Czy każda z tych maszyn nie wymaga dedykowanych zasobów zarówno obliczeniowych, jak i dyskowych. Czy skoro używamy aplikacji rozproszonych, które swoje mikro-serwisy uruchamiają w dedykowanych kontenerach, które posiadają wysoką dostępność na poziomie aplikacji, to czy potrzebujemy HA w vSphere? Cóż jak to mawiają klasycy – bardzo dobre pytanie. Natomiast odpowiedź: To zależny… kto pyta. Jeżeli ja miałbym odpowiadać za utrzymanie tej aplikacji (jako tak zwany Ops) to zdecydowanie wolałbym by były to „twory” mi znane takie jak np. maszyny wirtualne. I o to w tym wszystkim chodzi: chcemy dać prostotę dostępu do infrastruktury dla Devs, którzy mogą powoływać, zarządzać, tworzyć kontenery jak na klasycznym hoście Dockera, nie wiedząc nawet że powoływane instancje są dedykowanymi maszynami wirtualnymi, ze światem, w którym my admini czujemy się jak ryba w wodzie, obszarem nad którym razem z zestawem znanych nam narzędzi czuwamy, i który w przypadku problemów wiemy jak naprawić.

mwisniak01_2

Tak, te dwa światy wcale nie koniecznie muszą być od siebie oddzielone. Co więcej słowo klucz, które pojawia się w wielu branżowych artykułach DevOps w końcu przybrało postać gotowego (no… prawie gotowego) produktu.

Jednak w ramach tytułowej odsłony drugiej, pojawiły się nowe komponenty, ukryte pod intrygująco brzmiącymi nazwami projekt Admiral i projekt Harbor.

Harbor – jest to repozytorium (w oryginale nazywa się to Rejestr) obrazów Dockera, który umożliwia Devs tworzenie i utrzymywanie obrazów wraz z zestawem narzędzi do zarządzania nimi jak: GUI, kontrola dostępu, replikacja, integracja z AD/LDAP czy możliwość audytu.

Projekt Admiral z kolei odpowiada za zarządzanie kontenerami czy całymi aplikacjami zbudowanymi w oparciu o kontenery. Projekt ten zostanie włączony jako komponent platformy zarządzania chmurą (dosłowne tłumaczenie CMP), czyli vRealize Automation. Oprócz możliwości dostarczania klasycznych aplikacji, platforma ta będzie mogła zarządzać czy tworzyć aplikacje w oparciu o kontenery, w ramach wersji 7.2, która również w tym roku powinna znaleźć się pod choinką.

Ostatnim elementem wsparcia dla kontenerów jest umożliwienie im zapisywania danych bezpośrednio na dysk – z pominięciem hosta (wirtualnej maszyny), który dany kontener utrzymuje. Jest to możliwe za pomocą specjalnego drivera Docker Volume Driver, który umożliwi kontenerom przechowywanie danych bezpośrednio na datastore’ach, w tym oczywiście na vSAN.

Spostrzegawczemu czytelnikowi na pewno nie umknął uwadze fakt, że prawie wszystkie z tych projektów są udostępniane jako wolne oprogramowanie. I jest to prawda, każdy z tych komponentów może być przetestowany czy używany niezależnie, jak każde inne oprogramowanie OpenSource. Jednak jako całość, a w szczególności vSphere Integrated Containers zostanie on udostępniony klientom oprogramowania vSphere w wersji Enterprise+ i wyższej.

mwisniak01_3

Podsumowując vSphere Integrated Containers pomoże klientom przystosować ich infrastrukturę do obsługi aplikacji napisanych z wykorzystaniem technologii kontenerów bez konieczności przeprojektowywania całego data center, czy stawiania dedykowanych platform specjalnie pod ten typ aplikacji. Za pomocą jednej platformy vSphere wraz z całym eko-systemem narzędzi do monitoringu, backupu, DR możecie utrzymywać tradycyjne aplikacje jak i te ‘next-gen’, które mogą być uruchamiane równolegle na tych samych serwerach esxi, klastrach czy resource pool’ach. Ale najważniejsze jest to, że vSphere 6.5 i VIC po raz pierwszy na taką skalę, umożliwią uruchamianie aplikacji opartych o kontenery w klasycznych środowiskach produkcyjnych.

Jest jeszcze jeden aspekt takiej realizacji kontenerów… bezpieczeństwo. Ale to opiszę w osobnym artykule.


Kategoria: SDDC

Tagi:

Podobne artykuły

Komentarze

  1. Karol Junde 01/11/2016

    Ciekawy pomysł. Czekam na więcej info w kolejnych wpisach;)

    • vmwarepoland 03/11/2016

      Dziękujemy za miłe słowa. Zachęcamy do dalszego śledzenia naszego bloga. 🙂

Dodaj komentarz

Your email address will not be published.

This site uses cookies to improve the user experience. By using this site you agree to the privacy policy