Wprowadzenie do przetwarzania w chmurze Flashcards
Chmura - 5 charakterystyk
- Samoobsługa na żądanie
- Dostęp poprzez sieć szerokopasmową
- Tworzenie puli zasobów
- Szybka elastyczność
- Mierzalne usługi
Samoobsługa na żądanie
Konsument może użytkować: • Czas serwera • Dyski sieciowe – Zgodnie z potrzebami – Automatycznie bez potrzeby interakcji z człowiekiem
Przykład
– dostarczenia dodatkowej pamięci lub mocy obliczeniowej w celu skalowania wertykalnego
– żądanie dodania kolejnej instancji aplikacji w celu skalowania horyzontalnego
Dostęp poprzez sieć szerokopasmową
- Dostęp poprzez standardowy mechanizm
* Wspomaga heterogeniczne użycie cienkiego i grubego klienta
Publiczna chmura
– umożliwia dostęp z praktycznie każdego urządzenia posiadającego łączność z Internetem i heterogeniczne oprogramowanie takie jak przeglądarka internetowa
Prywatna chmura
– ogranicza dostęp do zasobów do konkretnie zdefiniowanej sieci organizacyjnej.
– W takim przypadku dostęp powinien posiadać każdy użytkownik tej sieci poprzez przeznaczone do tego celu oprogramowanie.
Tworzenie puli zasobów
Zasoby obliczeniowe dostawcy tworzą pulę
– przeznaczoną do obsługi:
• różnych klientów w
• trybie wynajmu (multi-tenant)
Zasoby fizyczne i wirtualne są
– przydzielane i wywłaszczane zgodnie z potrzebami konsumentów
Charakterystyka puli zasobów
Niezależność od lokalizacji
– Klient nie posiada kontroli i wiedzy o:
• Dokładnej lokalizacji dostarczanych zasobów
– Możliwa lokalizacja na wyższym poziomie abstrakcji:
• Np. kraj, region, centrum danych
Przykłady zasobów – pamięć dyskowa – Jednostka przetwarzająca – pamięć operacyjna – przepustowość sieci – maszyny wirtualne
Szybka elastyczność
• Wymagane potrzeby zasobowe mogą być szybko i w sposób elastyczny zapewnione
– zazwyczaj automatycznie – skalowalne w górę i w dół
• Z punktu widzenia klienta zapewniane zasoby:
– wydają się być nieograniczone i
– mogą być kupione w dowolnej ilości w czasie
Mierzalne usługi
Automatyczna kontrola i optymalizacja zasobów:
– Możliwości pomiaru na pewnym poziomie abstrakcji
– Odpowiednim do konta użytkownika i typu usługi
• pamięć dyskowa, przetwarzanie, pamięć operacyjna, przepustowość sieci, maszyny wirtualne
Użycie zasobów – monitorowane – kontrolowane – raportowane • z zapewnieniem przejrzystości dla dostawcy i konsumenta
Architektura oparta na usługach
Koncepcja tworzenia systemów informatycznych
– główny nacisk stawia się na definiowanie usług
– spełniających wymagania użytkownika.
• Obejmuje zestaw metod organizacyjnych i technicznych
• mających na celu lepsze powiązanie
– biznesowej strony organizacji z jej
– zasobami informatycznymi.
Usługi w SOA (architektura zorientowana na usługi)
Każdy element oprogramowania
– mogący działać niezależnie od innych
– posiadający zdefiniowany interfejs
• za pomocą którego udostępnia realizowane funkcje.
Działanie każdej usługi w całości zdefiniowane przez interfejs
– ukrywający szczegóły implementacyjne
– niewidoczne i nieistotne z punktu widzenia klientów.
Zorientowanie na usługi
• Usługi dostarczają reużywalnych funkcjonalności biznesowych
– poprzez dobrze zdefiniowane interfejsy.
• Występuje rozdzielenie pomiędzy interfejsem serwisu, a implementacja serwisu.
• Usługi dla konsumentów są budowane korzystając z funkcjonalności dostępnych serwisów.
• Infrastruktura SOA umożliwia
– odkrywanie (discovery),
– kompozycję i
– wywołanie usług.
• Protokoły bazują głównie na wymianie, bazującej na wiadomościach.
Model usług chmury
• Oprogramowanie jako usługa – Software as a Service - SaaS • Platforma jako usługa – Platform as Service - PaaS • Infrastruktura jako usługa – Infrastructure as a service – IaaS
Kolokacja
• Wynajęcie pomieszczenia serwerowni, prądu, klimatyzacji i dostępu do Internetu.
• Opłata za użyczenie miejsca w serwerowni
• Firma korzystająca opłaca pozostałe składniki:
– sprzęt
– zabezpieczenia (firewall, czy load balancery)
– system operacyjny
– oprogramowanie i aplikacje
• Ktoś daje nam miejsce w serwerowni, prąd, klimatyzacje i podłączenie do Internetu.
• Tu płacimy po prostu za użyczenie miejsca w serwerowni.
Infrastruktura jako usługa
• Dostarczenie klientowi infrastruktury informatycznej
– Sprzętu
– Oprogramowanie (systemowe, …)
– Serwisowania
• Klient wykupuje np. konkretną liczbę
– serwerów, przestrzeni dyskowej, lub określony zasób pamięci i mocy obliczeniowej.
• Klient dostarcza usługodawcy własne oprogramowanie
– do zainstalowania na wynajmowanym sprzęcie.
• Dawniej – płacimy za dedykowany serwer
• Aktualnie
– stosujemy wirtualne maszyny
– płacimy za faktycznie zużytą moc serwerów
Wirtualizacja
• Emulacja
– Na zadanym sprzęcie (z działającym na nim systemem operacyjnym)
– tworzymy całkowitą iluzję innego sprzętu.
• Pełna wirtualizacja
– Uruchomienie kilku systemów na jednym sprzęcie
– kompatybilnym z tymi systemami
– w taki sposób, aby jak najwięcej instrukcji wykonywało się bezpośrednio.
Hypervisor
Virtual Machine Manager (VMM)
• Technika wirtualizacji sprzętu
– Pozwalająca na działaniu wielu systemów operacyjnych
– W trybie współbieżnym na komputerach głównych (host computers)
• Wiele instancji różnych systemów operacyjnych
– Dzieli zwirtualizowane zasoby sprzętowe
Platforma jako usługa
• Sprzedaż gotowego kompletu aplikacji – Dostosowanego do potrzeb użytkownika – Wszystkie potrzebne programy znajdują się na serwerach dostawcy. • Klient po swojej stronie ma dostęp do interfejsu – w postaci ujednoliconego środowiska pracy • klienta, np. przeglądarkę internetową • Np. Microsoft zapewnia platformę – .NET Framework do pisania aplikacji • Rozliczamy się za zużycie zasobów – czas procesora – miejsce na dysku – liczbę zapytań – transfer danych – …
Oprogramowanie jako usługa
• Klient otrzymuje konkretne, potrzebne mu funkcjonalności i oprogramowanie.
• Korzysta z takiego oprogramowania, jakiego potrzebuje.
• Programy działają na serwerze dostawcy.
• Klient nie jest zmuszony nabywać licencji na nie.
• Płaci jedynie za każdorazowe ich użycie, a dostęp do nich uzyskuje na żądanie.
• My korzystamy tylko
– określonej aplikacji i
– jej funkcjonalności.
• Rozliczamy się
– np. opłata za jednego użytkownika
– za miesiąc korzystania z aplikacji.
Czas zapewnienia usług
• Czas potrzebny na zapewnienie odpowiedniego poziomu usług
– Średni czas potrzebny na dostarczenie usług po wyborze i skonfigurowaniu zbioru potrzebnych usług
Izolacja – Wynajem danych
- Zdolność do izolacji danych pojedynczego lub wielu konsumentów, na różnych poziomach izolacji
- Izolacja może dotyczyć użytkownika, usługi, punktu końcowego (end point), dostępu, środowiska, domeny sieciowej, …
Wielo-dzierżawienie
• Obsługa wielu użytkowników, zapewniająca dla każdego bezpieczne otoczenie :
– infrastruktura
– platforma
– oprogramowanie
– aplikacje
• IaaS
– Wirtualizacja zasobów infrastruktury
• SaaS
– Zależna od danych i konfiguracji organizacji klienta
-> Aktualnie aplikacje zaprojektowane dla
pojedynczego najemcy
-> Niekiedy model wielo-dzierżawienia może być zaadaptowany bez dużych zmian w architekturze
• Zależy od innych charakterystyk
– Zapewnienia, pomiarów, opłat
• Wymaga oprócz zapewnienia użytkownika dodatkowo
– Zdolności zapewnienia dla każdego wynajemcy
– Infrastruktury, platformy, oprogramowania i usług aplikacji
• Wymaga dokonywania pomiarów
– Na poziomie usług infrastruktury
– Na poziomie usług aplikacji dla wyznaczania opłat
Odseparowane bazy danych
• Najprostszy model izolacji danych
• Dane każdego najemcy przechowywane w oddzielnych bazach danych
• Podejście bezpieczne, skalowalne i o wysokiej wydajności
• Odzyskanie danych najemcy w wyniku awarii systemu – relatywnie proste
• Koszt sprzętu i utrzymania baz danych relatywnie wysoki
– Rozwiązanie stosowane wtedy, gdy klient akceptuje wysokie koszty
Schemat bazy danych
• W obiektowych bazach danych schemat jest formalnym opisem – zawartości bazy danych uwzględniającym • klasy, • specyfikacje atrybutów, • specyfikacje metod, • typy, • powiązania pomiędzy klasami obiektów oraz • inne informacje
Wspólne bazy danych, rozłączne schematy
• Wysoki stopień izolacji dla klientów o posiadających wysoką potrzebę bezpieczeństwa
• Wspomaga wirtualnie nieograniczoną liczbę najemców na jeden serwer bazodanowy
– Każdy najemca posiada dostęp do własnego zbioru tablic
• Może być jak nisko-kosztowe rozwiązanie
– Tylko pojedynczy serwer może mieć wiele najemców
– Klienci akceptują logiczne odseparowanie najemców
• Wdrożenie SaaS przy zastosowaniu tej metody
– Całkowita elastyczność zapewnienia oddzielnych obszarów dla tablic i SLA
• Odzyskanie danych po awarii jest trudniejsze w przypadku
– Gdy wymagane jest niepełne odzyskanie danych
Wspólne bazy danych, wspólne schematy
- Najemcy będą posiadać pojedynczą bazę danych i jeden wspólny schemat
- Każdy najemca będzie posiadał swój oddzielny identyfikator
- Kolumna z identyfikatorem najemcy pozwala na identyfikację danych dla poszczególnych najemców
- Tablica może mieć rekordy wielu najemców w różnym porządku
- Rozwiązanie cechuje się najniższymi kosztami sprzętu i przeprowadzania kopii zapasowych (backup)
- Ponieważ różni najemcy posiadają te same bazy danych i schematy, powinny być użyte rozwiązania podwyższające bezpieczeństwo danych