Chmura według Microsoftu – rozmowa z Arturem Żarskim o Windows Azure

Specjalnie dla czytelników IT Tech Blog wywiad z Panem Arturem Żarskim, pracownikiem polskiego oddziału Microsoftu, który odpowiedział na kilka pytań dotyczących chmury.

Czym jest chmura, a właściwie cloud computing? – Na to pytanie świetnie odpowie Wikipedia:

Cloud computing (ang. “przetwarzanie w chmurze, chmury obliczeniowe”) – model przetwarzania oparty na użytkowaniu usług dostarczonych przez zewnętrzne organizacje.

Funkcjonalność jest tu rozumiana jako usługa (dająca wartość dodaną użytkownikowi) oferowana przez dane oprogramowanie (oraz konieczną infrastrukturę). Oznacza to eliminację konieczności zakupu licencji czy konieczności instalowania i administracji oprogramowaniem. Konsument płaci za użytkowanie określonej usługi, np. za możliwość korzystania z arkusza kalkulacyjnego.

Zaglądając głębiej w chmurę możemy ją podzielić na kilka warstw/kategorii:

1. Pierwszą kategorią jest kolokacja. Zapewnia ona jedynie miejsce w serwerowni. Resztę – czyli sprzęt, system operacyjny, aplikacje, czy zabezpieczenia – musimy zapewnić sobie sami.

2. Drugą kategorię stanowi Infrastructure as a Service, w skrócie IaaS. Ta opcja rozszerza kolokacje o zapewnienie sprzętu przez dostawcę.

3. Platform as a Service (PaaS) to warstwa trzecia. Oprócz wyżej wymienionych funkcji dostajemy system operacyjny. MS zapewnia nam to poprzez Windows Azure.

4. Czwarta, przedostatnia kategoria nazywa się Software as a Service (SaaS). Daje nam ona praktycznie wszystko. Nas, z punktu widzenia użytkownika, nie obchodzi ani sprzęt, ani system operacyjny. Skupiamy się jedynie na korzystaniu z dostarczonych nam aplikacji.

5. Ostatnią – piątą warstwą jest Software + Services (S+S). Czym się różni od poprzedniej? Otóż ta funkcjonalność daje nam możliwość korzystania z klasycznego oprogramowania lub korzystania na zasadzie usługi. Wszystko uzależnione jest od naszych potrzeb. Istnieje również możliwość połączenia tych dwóch funkcjonalności.

MARCIN BRYK: Proszę opowiedzieć czytelnikom ittechblog.pl, jak wygląda umieszczanie (wdrażanie)  aplikacji w Azure przez klientów. Czy administracja tego projektu (osoby ze strony MS) może w razie problemów zainstalować coś zdalnie za klienta?

ARTUR ŻARSKI: Narzędzia developerskie wspierają proces deploymentu aplikacji na Azure, w związku z tym bardzo łatwo zainstalować i umieścić odpowiednią aplikację w chmurze. Nie ma możliwości, aby ktokolwiek poza użytkownikiem, który jest administratorem swojego własnego systemu, mógł wdrożyć aplikację. Osoba ta może przekazać uprawnienia do wdrażania takiego systemu komuś innemu i wtedy wskazany login będzie miał prawo do administrowania usługą. Dział wsparcia ma możliwość jedynie przeglądania logów systemowych, na których oparte są identyfikatory sesji i na ich bazie odszukiwane są wpisy w logach. Nie ma możliwości, aby ktokolwiek mógł ingerować w instalację klienta Windows Azure.

Jak wygląda bezpieczeństwo w chmurze? Jak przechowywane są poufne dane o klientach?

Jeśli chodzi o bezpieczeństwo fizyczne, to centra danych Microsoft spełniają wszystkie wymagania odnośnie zabezpieczenia danych. Możemy się pochwalić posiadaniem większości certyfikatów dostępnych na rynku związanych z bezpieczeństwem danych:

1.Usługi Microsoft Online Services – dedykowane:

  • SAS 70 Type II atestowane centra danych i usługi,
  • ISO 27001 certyfikowane centra danych,
  • Wkrótce – usługi z certyfikatem ISO 27001, FISMA DC i usługi.

2.Usługi Microsoft Online Services – standardowe:

  • Cybertrust,
  • SAS 70 Type II atestowane centra danych,
  • ISO 27001 certyfikowane centra danych,
  • Wkrótce – usługi z certyfikatem ISO 27001, DC i usługi FISMA.

Oczywiście, jak w większości przypadków, najsłabszym ogniwem jest człowiek, który dostaje dostęp do serwera. Jego hasło (czy jest skomplikowane, czy nie), czy administrator zestawił połączenie po szyfrowanym łączu, etc.

Microsoft oferuje klientom wybór uruchomienia aplikacji we własnych centrach danych lub w chmurze. Jaka jest różnica pomiędzy tymi dwoma rozwiązaniami? Jakie są ich plusy i minusy?

Różnica jest zasadnicza – jedno (on-premis, czyli we własnym centrum) wymaga posiadania odpowiedniej infrastruktury, serwerów, administracji, specjalistów IT do zarządzania, z drugiej strony – mamy do czynienia z usługą, czyli wynajmujemy jakąś moc obliczeniową, jakąś przestrzeń dyskową i wymagamy sprawnego działa – nie interesuje nas infrastruktura i pozostałe elementy IT. W przypadku cloud płacimy za to, co zużyjemy (pay as you go), a w przypadku on-premis musimy utrzymywać infrastrukturę i płacić za nią nawet wtedy, gdy nie używamy jej w 100%. Nawet z czysto księgowego punktu widzenia mamy dwa modele – capex i opex.

Jak wygląda migracja z innych tego typu usług dostarczanych m.in. przez Amazon czy Google?

To zależy od rozwiązania. Należy pamiętać, że Azure to system operacyjny wspierający platformę .NET, języki PHP i Java (wymagane instalowanie Tomcat na Azure) oraz baza danych SQL Azure. Pytanie, jak wygląda rozwiązanie w Amazon i Cloud – są scenariusze migracji, ale każdorazowo trzeba przeprowadzić odpowiednie przygotowania do tego.

A cena?

Cena Azure zależy od wielu czynników: ilości procesorów, wykorzystania łączy  etc. Najlepiej odzwierciedla to następujący  link: http://www.microsoft.com/windowsazure/offers/popup/popup.aspx?lang=en&locale=en-US&offer=MS-AZR-0003P

Cena CDN dla Europy i Ameryki Płn. za transfer danych jest niższa od ceny dla reszty świata, czym jest to spowodowane?

W Windows Azure CDN opłaty za transfer danych nie opierają się na lokalizacji użytkownika, a o lokalizację centrum danych, gdzie ruch został doręczony. Są cztery regionalne centra danych CDN, pokrywające swoim zasięgiem:

  • Azję i Pacyfik,
  • Europę,
  • Amerykę Łacińską,
  • Amerykę Północną.

Deweloperzy nie mogą kontrolować, które z nich są używane do dostarczania treści. Żądania użytkownika są skierowane do CDN w oparciu o ich usługodawcę internetowego, tabele routingu oraz warunki panujące w sieci. Użytkownicy mogą być kierowani do miejsc, które są preferowane przez ISP i/lub węzły, które są oceniane jako „bliższe” w sensie logicznym, niekoniecznie bliskości fizycznej. Na przykład, jeśli deweloper i użytkownicy końcowi są w Europie i regionie Azji i Pacyfiku, deweloper prawdopodobnie zobaczy opłaty za dostawy w tych właśnie regionach. Jednak niektórzy użytkownicy mogą być przypisani do innego regionu geograficznego, na przykład Ameryki Północnej, w oparciu o tablice routingu i stan sieci, co może mieć miejsce gdy węzły CDN w Azji i Pacyfiku stały się nieosiągalne. Wtedy deweloper będzie płacił za transfer danych w Ameryce Północnej.

Gdy CDN otrzymuje zapytanie o dany obiekt, którego nie ma w jego zasobach, złoży w imeniu użytkownika zapytanie o te dane do Windows Azure Storage. Opłaty CDN nie obejmują opłat związanych z przeniesieniem tych danych z Windows Azure Storage do CDN. Wszelkie opłaty za transfery danych i transakcje składowania, poniesione w celu uzyskania danych z systemu Windows Azure Storage do CDN, są pobierane oddzielnie po normalnych stawkach Windows Azure Storage. Opłaty CDN dotyczą zapytań o dane oraz ich przesyłu.

Dostępność treści w pamięci podręcznej lokalnego Windows Azure CDN (zwane często „skutecznością cache” lub „odciążania”) jest niedeterministyczna, ale zależy od wielu czynników, w tym od:

  • daty wygaśnięcia (“max-age”) nagłówka wartości,
  • całkowitej łącznej wielkości treści danego autora w bibliotece,
  • aktywnego zestawu roboczego w użyciu,
  • ruchu w CDN,
  • bufora rezygnacji (jak często obiekty są dodawane do pamięci podręcznej lub usuwane ze względu na zdezaktualizowanie).

Na przykład, deweloper z dużą biblioteką o wysokiej rezygnacji z ruchu i wysokiej skuteczności będzie miał mniejszy cache od innych użytkowników, ponieważ generuje większy ruch (obiekty są częściej zamienianie i dłużej obecne). Ogólnie rzecz biorąc, opłata Windows Azure Storage za transfer danych będzie tutaj proporcjonalnie wyższa, ponieważ wymaganych jest więcej wniosków pochodzenia. Użytkownik końcowy w tym przykładzie otrzyma dane nieco wolniej, ponieważ mniej wniosków jest podawanych z cache.

Głównym czynnikiem kontroli kosztów dla deweloperów wpływającym na skuteczność cache jest „max-age” nagłówka HTTP. Duże „max-age” nagłówka umożliwia CDN trzymanie przedmiotów dłużej i ogranicza konieczność składania wniosków pochodzenia.

Czy jeśli wykupię bazę danych SQL Azure do 1GB za miesiąc i przekroczę ten limit to ponoszę jakieś dodatkowe opłaty?

Określenie wielkości bazy na początku pokazuje, jaką wielkość może ona przyjąć maksymalnie. Oznacza to tyle, że jeśli będziemy chcieli ją przekroczyć, to nie będziemy tego mogli zrobić, póki nie zmienimy parametrów bazy. Zmiana parametrów bazy powoduje przejście na inne cenniki.

Czy istnieje możliwość hostowania domen w chmurze? Jeśli nie, to czy myślicie nad utworzeniem takiej opcji?

Jeśli chodzi o postawienie serwera DNS, to nie. Myślimy o takiej opcji, ale na tym etapie jest jeszcze za wcześnie na podawanie jakichkolwiek szczegółów.

Czy przeciętny Kowalski może z tego korzystać? Na jakich warunkach?

Oczywiście. Wystarczy tylko podać numer karty kredytowej i korzystać z usług.

Dziękuję za rozmowę.


Dzięki uprzejmości Pana Artura dostaliśmy również kilka screenów przedstawiających SQL Azure, SQL Server Management Studio, Panel administracyjny Azure, datacenter od środka oraz z lotu ptaka.

Rys.1 SQL Azure

Rys.2 SQL Server Management Studio

Rys.3 Panel administracyjny Azure

Rys.4 Datacenter od środka

Rys.5 Datacenter z lotu ptaka

Cloud computing