1 / 41

Aplikacje a chmury

Aplikacje a chmury. Tomasz Kopacz tkopacz@microsoft.com. Plan. Terminologia i próba definicji. Cloud Computing to styl wykonywania obliczeń w którym wysoce skalowalna infrastruktura IT jest udostępniona jako usługa zewnętrznym klientom. Obecnie, termin stosowany jest też:

audra-ford
Download Presentation

Aplikacje a chmury

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Aplikacje a chmury Tomasz Kopacz tkopacz@microsoft.com

  2. Plan

  3. Terminologia i próba definicji • Cloud Computingto styl wykonywania obliczeń w którym wysoce skalowalna infrastruktura IT jest udostępniona jako usługa zewnętrznym klientom. • Obecnie, termin stosowany jest też: • Jako wyróżnik typu rozwiązania (wielopodmiotowość, elastyczność, SaaS, „cloud enabled” app). • Określenie związane z infrastrukturą i wirtualizacją (“utility computing"). • Praktycznie: NOWA PLATFORMA DO URUCHAMIANIA APLIKACJI

  4. Dlaczego platforma „w chmurze”? Zmiana w „ekonomii” oprogramowania • Redukcja inwestycji i kosztów operacyjnych • Uproszczone wdrażanie i zarządzanie • Elastyczność: aplikacji i infrastruktury • Uproszczone skalowanie rozwiązań masowych (internet) • Tania obsługa obciążenia w szczycie • Pozwala skupićsięna funkcjonalności – nie infrastrukturze

  5. Aplikacje w chmurze Aplikacje „wewnętrzne” Windows Server Windows Vista/XP/7 Windows Mobile Inne

  6. Możliwości Azure Services Elastyczna platforma usług dla skali Internetu • Proste scenariusze są proste – skomplikowane można realizować • Usługi hostowane w centrach danych Microsoft • Zaprojektowany pod kątem wysokiej dostępności i skalowalności Oparty o standardy internetowe • Obsługa wielu protokołów, w tym HTTP, REST, SOAP, AtomPub • Inwestycje w otwarty dostęp (we współpracy ze społecznością) Bazuje na istniejących inwestycjach • Znane narzędzia, języki i frameworki – .NET& Visual Studio • Pozwala wybrać: „on-premise”, w „chmurze” lub rozwiązania pośrednie • Integracja z istniejącymi zasobami: AD, aplikacje zainstalowane lokalnie…

  7. Skala serwisów Obecne obciążenie: • 30 miliardów autoryzacji Live ID na miesiąc • 2 miliardy zapytań Live Search na miesiąc • 10 miliardów wizyt na stronach MSN na miesiąc • 240 miliardówkomunikatów na miesiąc Nowe inwestycje • Quincy, WA: zakończona, około 13 km2 • San Antonio, TX: zakończona w 2008, około12 km2 • Chicago, IL: wiosna/lato 2009, około 14 km2 • Dublin, Irlandia: lato 2009, około14,5 km2 • Des Moines, Iowa: Niedawno nabyty teren Centra danych to nowe „Intelectual Property”

  8. Obliczenia: Zwirtualizowane środowisko komputerowe bazujące na Windows Server Przechowywanie:Trwałe, skalowalne i olbrzymie Zarządzanie:Zautomatyzowany mechanizm zarządzania cyklem życia serwisu (w oparciu o model) Windows Azure Rozszerzyć Windows w „chmurę” Obliczenia Przechowywanie Zarządzanie

  9. Scenariusz przykładu

  10. Demo Windows Azure Platforma Windows Azure

  11. Demo: Hello Windows Azure Scenariusz: • Prosta aplikacja ASP.NET • Visual Studio 2008 SP1 • Role, instancje w konfiguracji • Śledzenie kodu lokalnie • Portal Azure • Wgranie w chmurę • Wersje, staging, produkcja Azure zapewnił: • Środowisko do uruchomienia kodu • Maszyny, szafy, przełączniki, połączenie… • Automatyczne wdrożenie i konfiguracja • Izolacja, redundancja, rozkład obciążeń • Elastyczność • Abstrakcja „datacenter”

  12. Kilka(+) szczegółów

  13. Tematy

  14. Co oferuje Windows Azure? Obliczenia Pojemnik Narzędzia developerskie

  15. Co oferuje Windows Azure? • Obliczenia • .NET 3.5 sp1 na IIS7 • Server 2008 – 64bit • Medium Trust* • Web Role • Witryna WWW (ASP.NET) • Usługa Web (WCF) • Worker Role • Zadanie obliczeniowe • Serwer bez sesji! • Http(s) Pojemnik Narzędziadeweloperskie

  16. Co oferuje Windows Azure? • Pojemnik • Trwałość, skalowalność, dostępność • Blobs • Tabele • Kolejki • Interfejs REST • Można używać bez obliczeń Obliczenia Developer Tools

  17. Co oferuje Windows Azure? Obliczenia Pojemnik • Infrastruktura • Sprzętowe urządzenia Load Balancers • Serwery • Sieć • DNS • Monitorowanie • Automatyczne zarządzanie serwisami Narzędzia developerskie

  18. Co oferuje Windows Azure? • Narzędzia deweloperskie • Windows Azure SDK • Lokalną „symulację” środowiska w chmurze • Obliczenia + pojemnik • Narzędzia z linii poleceń • API do zarządzania (proste) • Logowanie, monitoring • Dodatek do Microsoft Visual Studio 2008 Compute Storage

  19. Skalowalność i wydajność

  20. Obliczenia, kolejki i role Skalowanie = dodanie więcej main() { … } Worker Role Web Role 1) Otrzymanie zadania 4) Praca ASP.NET, WCF, itp. 2) Zadanie do kolejki 3) Pobranie zadania do wykonania Dowolna liczba klientów Tylko raz komunikat „wybrany” Rozmiar komunikatów – do 8 Kb Kolejka

  21. Demo Obliczenia i role

  22. Opcje przechowywania • Zaprojektowane dla chmury; 3 repliki • Gwarantowana spójność • Dostępność bezpośrednio z Internetu, przez REST API (opis na MSDN) • Bardzo pomocny przykład StorageClient • Prawdopodobnie przyszłe formalne API

  23. Azure Table - zasady partycjonowania • Każda encja ma 2 klucze – klucz głowny oraz partycjonujący (PartitionKey) • Filtry wymagają podania PartitionKey • Wydajność • Wybrać takiPartitionKeyktóry często używany jest w kwerendach • Encje z tym samym PartitionKey są klastrowane • Skalowalność • Azure monitoruje ruch i rozkłada obciążenie dobierając gdzie przechowywana jest partycja • Im więcej partycji – tym ten proces jest łatwiejszy

  24. Transakcje i spójność • Spójne pojedyncze wywołanie • Create, Update, Delete, Select • Izolacja klientów i snapshot (AzureTable) • Spójny widok od początku zapytania • Bez „dirtyreads” • Nie blokuje aktualizacji (wersjonowanie!) • Nie ma spójności pomiędzy kolejnymi wywołaniami kwerendy • Kilka tabel – odpowiedzialność aplikacji • Pamiętać o kolejce!

  25. Demo Opcje przechowywania

  26. Współpraca i komunikacja

  27. .NET Services .NET Service Bus Usługa Service Bus Usługa Aplikacja Aplikacja Aplikacja .NET Workflow Service Usługa http://service./ .NET Access Control Service Usługa AccessControl Przepływ SDS

  28. Access ControlServices – zadanie • Poświadczenie prawa użytkownika do wykonania danej operacji (autoryzacja + stwierdzenia) • Założenia • Federacja • Serwis | Strona poświadczająca (łańcuch) | Klient • Składniki • Portal • API klienckie • Używane w • SQL Data Services (akceptuje oprócz uużytkownika i hasło oraz tokeny z ACS • .NET Service Bus; .NET Workflow Service • Usługi (STS) • Wydaje tokeny • Współpraca z frameworkiem“Geneva”

  29. Zarządzanie

  30. Service Bus - zadanie • Dwukierunkowa komunikacja z/w • Klient w hotelu, na lotnisku, współdzielone biura • Udostępnienie lokalnie hostowanejusługi w Internecie • + Autoryzacja + integracja z workflow itp.. • Kilka szczegółów: • Konwencja nazewnicza • sb://<projekt>.servicebus.windows.net/test1/MulticastService/ • Rejestr: po prostu Feed (Atom 1.0 / WS-Transfer) • http://<projekt>.servicebus.windows.net • API R/W

  31. Service Bus –kanały komunikacyjne • Model programowania: WCF • Do tego: Publish/Subscribe, kolejki i wiele innych mechanizmów

  32. Połączenie NetTcp Direct/Hybrid Service Bus • sb://projekt.servicebus.windows.net/a/b/ ZapleczeNazwy RoutingTaśma Oneway Kom. kontrolne Węzły frontend TCP/SSL 818, 819 NAT Probing NAT Probing Połączenie typu relayed relayed znalezione Kontrolne aktualizacja aktualizacja Nadawca Odbiorca Połączenie NAT Traversal

  33. Workflow Service - zadanie • Mechanizm orkiestracji w chmurze • Pod spodem • Windows Workflow Foundation • Operacje: • IfElse ; Sequence ; Suspend ; Terminate ; While • .NET Workflow Service • CloudDelay • CloudHttpSend ; CloudHttpReceive • CloudServiceBusSend • CloudXPathRead ; CloudXPathUpdate • API do tworzenia przepływu, uruchamiania instancji, wysyłania komunikatu

  34. Demo .NET Services

  35. Live Services

  36. Live Services • Usługi „użytkowe” które pozwalają na: • Dostęp do danych użytkownika • Dostęp do usług Windows Live Applications Data Sync Devices Users Identity Storage Directory Search & Geospatial Comms & Presence Live Framework Programming Model Live Operating Environment

  37. Co można zrobić? Dostęp do danych użytkownika Dostęp do informacji na urządzeniach klienta Dostęp do „grafu powiązań społecznych” Współdzieleniedanych Synchronizacjadanych użytkownika Dostęp do profilu Wiadomości (app / dane) Zarządzanie aplikacjami Kontrola dostępu do danych użytkownika!

  38. Typy aplikacji Live Framework Witryna Mesh-enabled Web Applications • Hostowana i wdrażana w Mesh • Działa na pulpicie albo na Live Desktop • Pełne wykorzystanieLive Services Strony Web wykorzystujące Live Framework • Aplikacja może uzyskać dostęp do danych • Musi być udzielone zezwolenie na dostęp GET https://user-ctp.windows.net/v0.1

  39. Jak zacząć? (kody dostępu) • Są 3 typy kodów: • Windows Azure • .NET & SQL Services • Live Framework & Services • Jak je uzyskać? • Iść nahttp://www.azure.com • Wysłać zgłoszenie (przez Microsoft Connect) • .NET Services, SQL Services, Live Services • Azure Hosting / Storage - dostępne • Czas oczekiwania od 20 lutego – 2 dni (pracujące)

  40. Podsumowanie • Wszechstronna platforma w chmurze: Aplikacje i dane • Bez martwienia się o infrastrukturę (abstrakcja) • Elastyczność – dowolne łączenie usług • Łączność z systemami „on-premises” • Znane narzędzia i model programowania • Dużo opcji związanych z UX dzięki Live Services • Standardowe protokoły i formaty (HTTP, REST, WS-Trust...)

  41. Pytania? tkopacz@microsoft.com

More Related