Artykuł pochodzi z OpenSource.com – http://opensource.com/business/14/7/dreamhost-and-openstack-love-story
Założony w 1997 roku, DreamHost to doświadczony biznes internetowy, który jest domem dla ponad 400,000 zadowolonych klientów, 1,5 miliona stron i aplikacji oraz setek tysięcy instalacji WordPress, dominującego otwartoźródłowego CMS. Oprogramowanie open source jest w naszej krwi i napędza każdy aspekt naszych usług od 1997 roku. DreamHost jest zbudowany na fundamencie Perl, Linux, Apache, MySQL oraz niezliczonych innych projektów open source. W naszej ponad 16-letniej historii, DreamHost był świadkiem, jak realia aplikacji internetowych i hosting zmieniały się drastycznie. Nasza podróż do chmury wymaga nieco historii i kontekstu, więc zanurzmy się w to.
Rozwój Chmury typu Black Box
Prawie dekadę temu Amazon stworzył rynek usług infrastruktury chmurowej, wprowadzając niezwykle popularne S3 do przechowywania i EC2 do obliczeń. Kolejne lata zdominowane były przez radykalne zmiany w sposobie korzystania z infrastruktury i, co ważniejsze, w podstawowym projekcie i architekturze oprogramowania. Pojawiły się także większe, ukryte konsekwencje wzrostu nieprzejrzystych usług infrastruktury chmurowej.
Chociaż chmura była rewolucyjna, była także w dużej mierze czarną skrzynką. Oprogramowanie i systemy, które napędzają Amazon Web Services, Microsoft Azure i wiele innych chmur, są zamknięte przed ciekawskimi oczami, pozostawiając użytkowników w niepewności co do implementacji najważniejszego komponentu ich stosów aplikacyjnych. Era przed chmurą reprezentowała wzrost otwartego internetu – Linux, Apache, MySQL oraz języki takie jak PHP, Perl, Python i Ruby, gdzie programiści, inżynierowie i organizacje IT miały duży stopień przejrzystości w zakresie oprogramowania, które napędzało ich aplikacje. We wczesnej erze chmury wiele tej przejrzystości zniknęło.
Nowa Nadzieja
W 2010 roku dwaj mało prawdopodobni partnerzy, NASA i Rackspace Hosting, założyli projekt OpenStack w celu stworzenia otwartoźródłowego oprogramowania chmurowego do tworzenia chmur prywatnych i publicznych. W latach od momentu powstania projekt OpenStack rozwinął się, dążąc do spełnienia swojego potencjału jako Linux dla chmur. Obecnie w projekcie uczestniczy ponad 200 firm i niezliczona liczba osób, współpracujących nad stworzeniem otwartoźródłowego oprogramowania i API, które napędzają chmury prywatne i publiczne na całym świecie.
DreamHost dołączył do projektu OpenStack na wczesnym etapie jego życia, angażując kod, wsparcie finansowe i przywództwo. Dołączyliśmy do Fundacji OpenStack jako członek Gold, a CEO DreamHost, Simon Anderson, został wybrany, aby reprezentować nas w Radzie Dyrektorów Fundacji OpenStack. Nasze zaangażowanie w sukces projektu jest głębokie.
Dlaczego OpenStack?
DreamHost nie istniałby dziś bez silnego zaangażowania w filozofię open source. Nie chcemy żyć w przyszłości, która znowu będzie zdominowana przez zamknięte, technicznie nieprzejrzyste, „magiczne” platformy chmurowe. Wielu tradycyjnych klientów hostingu jest zainteresowanych przyjęciem Usług Chmurowych, jako dodatku lub zamiennika dla ich obecnego Shared Hosting, VPS i Dedicated servers, i wierzymy, że oni również szukają prostego i przystępnego sposobu na ulepszenie. Z uwagi na nasze DNA, ma sens dla DreamHost budować dla naszych klientów to, czego chcą, używając najlepszego w swojej klasie oprogramowania open source.
Przedstawiamy DreamCompute
Pierwszym produktem DreamHost stworzonym na bazie OpenStack jest DreamCompute, który umożliwia klientom tworzenie maszyn wirtualnych, urządzeń blokowych i sieci na żądanie za pomocą standardowych interfejsów API OpenStack oraz narzędzi wiersza poleceń lub przez intuicyjny interfejs użytkownika oparty na przeglądarce. DreamCompute daje naszym klientom więcej mocy niż kiedykolwiek mieli dostęp do wcześniej i jest zbudowany na dużej bibliotece oprogramowania open source. Zgodnie z tradycją DreamHost, nawet architektura DreamCompute jest otwarta.
DreamCompute działa na mieszance zaawansowanych serwerów Dell z systemem Ubuntu Linux. Posiadamy dwa podstawowe typy serwerów: węzły przechowywania i węzły nadzorcy. Węzły nadzorcy są zoptymalizowane do hostowania maszyn wirtualnych działających na bazie otwartoźródłowego hipernadzorcy KVM i posiadają 64 rdzenie AMD oraz 192 GB RAM. Nasze węzły przechowywania to serwery o mniejszej mocy, większej gęstości, każdy z dwunastoma dyskami 3 TB, działające na Ceph, otwartoźródłowym, masowo dystrybuowanym, odpornym na awarie systemie przechowywania, który DreamHost pomógł zbudować.
DreamCompute oferuje również moduł „cockpit”, który reprezentuje „mózg” chmury. W kokpicie uruchamiamy OpenStack i jego usługi wspierające na mieszance metalu gołego i maszyn wirtualnych, w tym Horizon, Glance, Nova, Neutron,Keystone oraz Cinder, a także Apache, HAProxy load balancers, bazy danych MySQL i RabbitMQ systemy kolejkowania. Cały system jest konfigurowany i zarządzany przez Chef i monitorowany przy użyciu narzędzi open source takich jak logstash, graphite, collectd i nagios.
Nawet sprzęt i oprogramowanie sieciowe w DreamCompute opierają się na otwartych platformach i technologiach. DreamHost pozyskał wysokowydajne przełączniki 48 portowe 10 Gig bezpośrednio od producentów. Przełączniki używają Cumulus Linux, który jest systemem operacyjnym sieci Linux od naszych przyjaciół z Cumulus Networks. Ta unikalna konfiguracja umożliwia nam przygotowanie, monitorowanie i operowanie naszą infrastrukturą sieciową przy użyciu tych samych narzędzi i procesów, które stosujemy dla naszych węzłów obliczeniowych i przechowywania, znacznie minimalizując nakład operacyjny.
DreamCompute jest zgodny ze standardowymi interfejsami API OpenStack do Obliczeń, Sieci, Obrazu i Przechowywania, a w swojej istocie jest wdrożeniem OpenStack. Należy zauważyć, że DreamCompute posiada również kilka unikalnych funkcji, które odróżniają go od innych chmur. Nie powinno być zaskoczeniem, że podstawą tych funkcji jest, w rzeczywistości, oprogramowanie open source, które stworzył DreamHost.
Obawiaj się Głowonoga
Każda maszyna wirtualna w DreamCompute uruchamia się z wirtualnego urządzenia blokowego wspieranego przez klaster przechowywania Ceph o wielkości wielu petabajtów. Obrazy systemu operacyjnego są przechowywane w tym samym klastrze co te urządzenia blokowe, co umożliwia DreamCompute wykorzystanie funkcjonalności Ceph Copy-on-Write (COW). Zamiast pobierać obraz systemu operacyjnego ze sklepu centralnego do hipernadzorcy (co jest czasochłonne) a następnie przygotowywać nowe urządzenie blokowe, Ceph umożliwia naszym maszynom wirtualnym niemal natychmiastowe uruchomienie z cienko przydzielonej kopii obrazu OS. W rezultacie, maszyny wirtualne w DreamCompute mogą być tworzone i w pełni operacyjne w ciągu zaledwie 40 sekund.
Ceph również zapewnia użytkownikom DreamCompute pewność, że ich dane są bezpieczne, ponieważ każdy fragment danych przechowywany w klastrze jest replikowany łącznie trzy razy. Gdy dyski, serwery lub stojaki ulegną awarii, klaster Ceph wkracza do akcji, aby automatycznie się naprawić, zapewniając, że istnieje odpowiednia liczba replik. Gdy dodawana jest nowa pojemność, Ceph reaguje, natychmiastowo wykorzystując ją, równoważąc dane w całym klastrze.
Obliczenia Chmurowe i DreamHost
Kiedy współpracujesz z nami, Twoja strona jest w dobrych rękach! Nasze usługi łączą przyjazną wiedzę fachową z najnowocześniejszą technologią, aby dać Ci wszystko, czego potrzebujesz do odniesienia sukcesu w sieci.
Wirtualizuj wszystko … Włącznie z siecią!
Wirtualizacja serwerów i przechowywania to koncepcje bardzo znane większości, ale wirtualizacja sieci to stosunkowo nowy pomysł. DreamCompute zostało zbudowane od podstaw, aby zapewnić pełną wirtualizację sieci dla każdego klienta. W DreamCompute fizyczna sieć stanowi „podkład”, który jest niewidoczny dla klienta. Na to nakłada się wirtualna struktura sieciowa – „nakładka”, zapewniając każdemu klientowi w DreamCompute wirtualny przełącznik OSI warstwy 2 (L2), który jest całkowicie izolowany na poziomie L2 od każdego innego klienta.
Na wierzchu tej wirtualnej sieci L2, najemcy otrzymują zrouteryzowane oprogramowanie wirtualizacyjne, które dostarcza usługi L3+, takie jak routing, firewalling i więcej. DreamHost udostępnił ten projekt jako open-source, nazwał go Akanda i opublikował na liberalnej licencji open source na GitHubie.
DreamCompute jest również zbudowany od podstaw, aby obsługiwać IPv6, ponieważ wyczerpanie przestrzeni adresowej IPv4 jest już blisko. Każda maszyna wirtualna w DreamCompute jest automatycznie przypisywana adresowi IPv6 wraz z jej prywatnym adresem IPv4.
Łącząc technologię wirtualizacji sieci z API Neutron Networking OpenStack, klienci uzyskują w pełni programowalną kontrolę nad swoją siecią od L2 do L7, z izolacją.
Przyszłość Otwartej Chmury jest Jasna
DreamCompute stanowi kontynuację długiej współpracy między DreamHost a społecznością open source. Cieszymy się, że możemy dalej przyczyniać się do rozwoju OpenStack, oraz że jesteśmy częścią dynamicznego ekosystemu dostawców usług chmurowych oferujących usługi oparte na OpenStack. Przyszłość chmury open source jest bardzo obiecująca, i jesteśmy zachwyceni, że możemy być na czele tego ruchu.
DreamHost’s DreamCompute jest obecnie w prywatnej becie. Aby zarejestrować swoje zainteresowanie dołączeniem do bezpłatnego okresu beta, odwiedź DreamCompute i zarejestruj się już dziś.