Rozumienie koncepcji najemcy w chmurze
W kontekście przetwarzania w chmurze, termin „najemca” odnosi się do grupy użytkowników lub pojedynczej osoby, która korzysta ze wspólnych zasobów obliczeniowych. Do tych zasobów zaliczamy między innymi przestrzeń dyskową, serwery oraz różnego rodzaju aplikacje. Dostęp do nich jest zapewniany przez dostawcę usług chmurowych.
Każdy najemca działa w izolacji od pozostałych, co oznacza, że nie ma możliwości dostępu do danych czy zasobów innych użytkowników. Wiele podmiotów może korzystać z tej samej infrastruktury, a jednocześnie zachować pełną prywatność i bezpieczeństwo swoich informacji. Najemcami mogą być zarówno osoby fizyczne, jak i organizacje, czy też wydziały w obrębie większej firmy.
W sytuacji, gdy zasoby i cała infrastruktura są dedykowane wyłącznie jednemu najemcy, mówimy o architekturze opartej na pojedynczym najemcy. Natomiast gdy ta sama pula zasobów jest współdzielona przez wielu różnych najemców, mamy do czynienia z architekturą wielodostępną.
Rozróżnienie między architekturą jedno- i wielonajemcową nie zawsze jest oczywiste. Przykładowo, korzystając z usług AWS, możemy skonfigurować zarówno infrastrukturę dedykowaną, jak i współdzieloną. Kluczowa różnica tkwi w szczegółach konfiguracji. Poniżej przedstawiamy istotne aspekty.
Źródło: blogi.sap.com
Zanim przejdziemy do szczegółowej analizy, przyjrzyjmy się zestawieniu kluczowych cech obu architektur.
Porównanie cech architektur jedno- i wielonajemcowej:
Cecha | Architektura dla jednego dzierżawcy | Architektura dla wielu dzierżawców |
---|---|---|
Udostępnianie zasobów | Zasoby niewspółdzielone z innymi | Zasoby udostępniane wielu klientom |
Personalizacja | Wysoka możliwość konfiguracji | Ograniczona personalizacja |
Koszt | Z reguły wyższy | Zasadniczo niższy |
Bezpieczeństwo | Podwyższone bezpieczeństwo | Niższy poziom bezpieczeństwa |
Wydajność | Przewidywalna wydajność | Wpływ na skalowalność |
Konserwacja | Klient utrzymuje zasoby | Dostawca chmury obsługuje konserwację |
Współpraca | Ograniczona współpraca | Większa współpraca |
Zgodność | Lepsza zgodność z określonymi przepisami | Standardowe procesy dla wszystkich najemców |
Architektura dedykowana dla jednego najemcy
Aplikacje chmurowe zaprojektowane dla pojedynczego najemcy są przeznaczone do obsługi konkretnego klienta lub organizacji. Charakteryzują się przydzieleniem dedykowanych zasobów, które nie są współdzielone z innymi użytkownikami.
Źródło: cncf.io
W tym modelu, pojedynczy klient ma wyłączny dostęp do serwera, aplikacji czy też infrastruktury w chmurze. Zyskuje on pełną kontrolę nad przydzielonymi zasobami i może je dostosować do swoich indywidualnych potrzeb, co oznacza, że zasoby chmurowe są w całości przeznaczone tylko dla niego.
Dzięki temu, najemca ma możliwość skonfigurowania zasobów w sposób idealnie dopasowany do jego wymagań. Przekłada się to na zwiększoną elastyczność i kontrolę nad środowiskiem chmurowym.
Należy jednak pamiętać, że architektura dedykowana dla jednego najemcy jest zazwyczaj droższa niż model wielodostępny, ponieważ klient samodzielnie ponosi koszty związane z utrzymaniem dedykowanych zasobów.
Poniżej przedstawiono przykładowy sposób konfiguracji kompleksowej architektury opartej na jednym najemcy w środowisku chmury AWS:
- Utworzenie wirtualnej sieci prywatnej (VPC) w celu odizolowania zasobów dedykowanych konkretnemu najemcy. VPC zapewnia separację i ochronę sieci.
- Wykorzystanie systemu zarządzania tożsamością i dostępem (IAM) w celu kontroli dostępu do zasobów. IAM definiuje zasady, które określają, do jakich elementów infrastruktury ma dostęp konkretny najemca.
- Zastosowanie usługi Elastic Compute Cloud (EC2) do uruchamiania maszyn wirtualnych dedykowanych jednemu najemcy. EC2 umożliwia tworzenie instancji o zdefiniowanych parametrach, zapewniając pełną kontrolę nad zasobami.
- Wykorzystanie Elastic Block Store (EBS) do obsługi przechowywania danych na poziomie bloków dla maszyn wirtualnych.
- Zastosowanie usługi relacyjnej bazy danych (RDS) w celu udostępnienia zarządzanej bazy danych dedykowanej konkretnemu najemcy. Możliwe jest utworzenie oddzielnej instancji bazy danych, co zapewnia izolację i bezpieczeństwo danych.
- Wykorzystanie usługi Amazon S3 do przechowywania zasobów statycznych, takich jak obrazy, pliki wideo i dokumenty. Możliwe jest utworzenie odrębnego „kubełka” dla każdego najemcy, dostępnego tylko dla niego.
- Wykorzystanie Elastic Load Balancer (ELB) do rozkładu obciążenia między wieloma instancjami aplikacji w ramach zasobów przypisanych wyłącznie jednemu najemcy.
Przykłady aplikacji chmurowych z dedykowaną architekturą
Oto kilka znanych przykładów aplikacji chmurowych, które mogą być wykorzystane w architekturze dedykowanej dla jednego najemcy:
- Workday – oprogramowanie chmurowe do zarządzania zasobami ludzkimi i finansami, które oferuje swoim klientom architekturę opartą na jednym najemcy.
- Platforma chmurowa SAP HANA.
- Rozwiązania Oracle Cloud.
- IBM Cloud Dedicated – z zasobami dedykowanymi, które nie są współdzielone z innymi klientami.
- Prywatna chmura Rackspace.
Zalety architektury dedykowanej w chmurze
Architektura chmurowa oparta na jednym najemcy posiada szereg zalet w porównaniu z architekturą wielodostępną:
- Podwyższony poziom bezpieczeństwa, wynikający z faktu, że zasoby są dedykowane tylko jednemu klientowi. Klient ma pełną kontrolę nad bezpieczeństwem swoich zasobów. Eliminuje to ryzyko wycieku danych lub nieautoryzowanego dostępu, które potencjalnie mogą wystąpić w środowiskach z wieloma najemcami.
- Zwiększona możliwość personalizacji. Klient ma możliwość dostosowania zasobów do swoich indywidualnych potrzeb, co przekłada się na wyższą wydajność i efektywność. Dostępna jest większa swoboda w zakresie wyboru oprogramowania i sprzętu.
- Przewidywalna wydajność, ponieważ zasoby są dedykowane jednemu klientowi. Można oczekiwać stałych parametrów wydajności, co ma znaczenie w przypadku aplikacji wymagających wysokiej sprawności i niezawodności.
- Lepsza zgodność z konkretnymi przepisami i normami, ponieważ zasoby są przypisane tylko jednemu najemcy.
- Większa skalowalność, ponieważ klient ma możliwość zwiększania lub zmniejszania zasobów w zależności od aktualnych potrzeb.
Należy jednak pamiętać, że architektura oparta na jednym najemcy jest zazwyczaj droższa niż architektura wielodostępna, dlatego nie zawsze jest optymalnym wyborem dla wszystkich organizacji.
Przykłady zastosowań architektury dedykowanej w chmurze
Poniżej przedstawiono kilka przykładów zastosowań, w których architektura dedykowana dla jednego najemcy sprawdza się najlepiej:
- Podmioty z sektora opieki zdrowotnej, które muszą przestrzegać rygorystycznych przepisów, takich jak HIPAA, wymagających wysokiego poziomu bezpieczeństwa i prywatności. Architektura dedykowana pozwala im na pełną kontrolę nad zasobami i wdrożenie zabezpieczeń dostosowanych do potrzeb pacjentów i personelu.
- Instytucje finansowe, które muszą spełniać surowe wymagania regulacyjne, takie jak PCI DSS. Architektura oparta na jednym najemcy stanowi dla nich korzystne rozwiązanie.
- Organizacje rządowe, które muszą przestrzegać restrykcyjnych przepisów, takich jak FISMA, wymagających wysokiego poziomu bezpieczeństwa i zgodności.
- Instytucje naukowe i badawcze, które często potrzebują wysokiego poziomu dostosowania i wydajności.
- Przedsiębiorstwa zajmujące się handlem elektronicznym. Architektura dedykowana umożliwia im elastyczne skalowanie zasobów w górę lub w dół w zależności od zmieniających się potrzeb klientów.
Architektura współdzielona dla wielu najemców
Źródło: aws.amazon.com
Architektura wielodostępna to często najlepszy wybór dla organizacji, dla których priorytetem są niskie koszty, skalowalność i współpraca, a nie zaawansowane zabezpieczenia i możliwości dostosowania.
- Współdzielenie tych samych zasobów chmurowych przez wielu klientów. Oznacza to, że zasoby nie są przypisane do konkretnego klienta, lecz są dzielone między wszystkimi użytkownikami.
- Architektura wielodostępna jest z reguły tańsza niż architektura dedykowana, co wynika z samego faktu współdzielenia zasobów.
- Możliwość dostosowania jest ograniczona. Dla klientów potrzebujących bardzo spersonalizowanych rozwiązań, może to być pewną wadą.
Poniżej przedstawiono przykład sposobu konfiguracji kompleksowej architektury wielodostępnej w środowisku AWS:
- Utworzenie VPC w celu odizolowania zasobów poszczególnych najemców. Każdy najemca ma własną sieć VPC, co zapewnia izolację i ochronę w sieci.
- Wykorzystanie IAM do zarządzania dostępem do zasobów każdego z najemców. IAM definiuje reguły i zasoby, do których może uzyskać dostęp każdy z nich. Te zasady mogą różnić się dla poszczególnych najemców.
- Zastosowanie ELB w celu dystrybucji ruchu między różnymi instancjami aplikacji. Sterowanie, który ruch jest kierowany do którego najemcy.
- Zastosowanie RDS w celu zapewnienia zarządzanej usługi bazodanowej dla każdego z najemców. Utworzenie oddzielnych instancji baz danych dla każdego z nich, z odrębnymi uprawnieniami i zawartością. Możliwe jest również użycie tego samego klastra bazodanowego. Daje to najemcom izolację i bezpieczeństwo.
- Zastosowanie Amazon S3 do przechowywania zasobów statycznych. Kontrola dostępu do „kubełków” przez najemców. W zależności od potrzeb, zasoby mogą być współdzielone lub oddzielone.
- Wykorzystanie CloudFront do dystrybucji zasobów statycznych użytkownikom. Tworzenie odrębnych dystrybucji dla każdego najemcy, zapewniając im izolację i bezpieczeństwo.
Przykłady aplikacji chmurowych wielodostępnych
Oto kilka przykładów rzeczywistych aplikacji chmurowych działających w architekturze wielodostępnej:
- Salesforce – platforma chmurowa do zarządzania relacjami z klientami (CRM), która umożliwia wielu organizacjom korzystanie z tej samej infrastruktury, z zachowaniem bezpieczeństwa danych.
- Dropbox – usługa przechowywania i udostępniania plików w chmurze, która umożliwia wielu użytkownikom współpracę nad tymi samymi plikami.
- Microsoft Office 365 – pakiet produktywny oparty na chmurze, umożliwiający wielu użytkownikom wspólną pracę nad dokumentami, arkuszami kalkulacyjnymi i prezentacjami.
- Google Workspace – kolejny pakiet narzędzi biurowych, podobny do propozycji Microsoft.
- AWS – platforma infrastrukturalna w chmurze, która umożliwia wielu organizacjom korzystanie z tej samej infrastruktury, z zapewnieniem oddzielności i bezpieczeństwa danych.
Zalety architektury wielodostępnej
Architektura chmurowa wielodostępna oferuje szereg konkretnych korzyści:
- Z reguły niższe koszty w porównaniu z architekturą dedykowaną. Wielu klientów współdzieli te same zasoby.
- Większy wpływ na skalowalność. Zasoby są elastycznie skalowane, co pozwala na zaspokojenie zmieniających się potrzeb klientów. Skalowanie dotyczy wszystkich użytkowników równocześnie.
- Mniejsza wymagana konserwacja. Dostawca usług chmurowych jest odpowiedzialny za utrzymanie zasobów, które są identyczne dla wszystkich użytkowników. Prace konserwacyjne są wykonywane tylko raz dla wszystkich.
- Ułatwiona współpraca między klientami, wynikająca ze współdzielenia zasobów. Użytkownicy mogą pracować nad wspólnymi projektami i łatwiej udostępniać dane.
- Promowanie standardyzacji. Dostawca usług chmurowych może wdrożyć standardowe procesy i procedury, które są stosowane dla wszystkich najemców.
Należy jednak pamiętać, że architektura wielodostępna nie zawsze jest najlepszym wyborem dla organizacji, które wymagają wysokiego poziomu bezpieczeństwa, zgodności lub indywidualnego dostosowania. Współdzielenie zasobów zmniejsza możliwości personalizacji i wpływa na bezpieczeństwo.
Przykłady zastosowań architektury wielodostępnej
Poniżej znajduje się kilka przykładów zastosowań, w których architektura wielodostępna sprawdza się najlepiej:
- Małe i średnie przedsiębiorstwa (MŚP) często posiadają ograniczony budżet, co czyni architekturę wielodostępną atrakcyjną opcją.
- Dostawcy oprogramowania jako usługi (SaaS) korzystają z architektury wielodostępnej, aby świadczyć usługi dla wielu klientów.
- Platformy mediów społecznościowych wymagają wysokiego poziomu skalowalności i współpracy. Architektura wielodostępna pozwala im na elastyczne dostosowywanie zasobów do zmieniających się potrzeb użytkowników.
- Instytucje edukacyjne, które poszukują ekonomicznych rozwiązań dla swojej infrastruktury IT. Architektura wielodostępna pozwala na współdzielenie kosztów zasobów z innymi instytucjami.
- Dostawcy chmury publicznej wykorzystują architekturę wielodostępną, aby świadczyć usługi dla szerokiego grona klientów.
Jak w tym wszystkim odnajduje się chmura AWS?
Źródło: prod.warsztaty.aws
Jak wspomniano wcześniej, AWS umożliwia konfigurację zarówno architektury dedykowanej, jak i wielodostępnej.
Istnieje możliwość stworzenia dedykowanej infrastruktury dla jednego klienta lub organizacji. Przykładowo, AWS oferuje dedykowane hosty EC2, czyli fizyczne serwery przeznaczone tylko dla jednego klienta. Daje to klientowi pełną kontrolę nad sprzętem.
AWS oferuje również wirtualną chmurę prywatną (VPC), która pozwala klientom na tworzenie odizolowanych sieci wirtualnych w chmurze AWS.
AWS udostępnia szereg usług, które mogą zostać użyte do stworzenia współdzielonej infrastruktury. Na przykład instancje EC2 (inne niż dedykowane) zapewniają wirtualne serwery, które mogą być współdzielone przez wielu klientów. W takim przypadku klienci dzielą ten sam sprzęt i infrastrukturę, przy jednoczesnym zachowaniu własnej prywatności i bezpieczeństwa danych.
Usługi takie jak Amazon S3 umożliwiają współdzielenie tego samego magazynu danych przez wielu klientów. Klienci mogą zapisywać i pobierać dane w tym samym środowisku.
W przypadku baz danych RDS w AWS, również dostępne są różne opcje konfiguracji. Można utworzyć oddzielne instancje baz danych dla każdego z najemców, a także utworzyć dedykowany klaster lub instancję bazy danych dla jednego najemcy.
Alternatywnie, można wykorzystać RDS do stworzenia wspólnej usługi bazodanowej dla wielu najemców. W takim przypadku, jedna instancja bazy danych obsługuje wielu najemców, co ma wpływ na możliwości dostosowania i wydajność.
Warto podkreślić, że to nie platforma narzuca wybór architektury jedno- czy wielodostępnej. Kluczową rolę odgrywa sposób konfiguracji i wdrożenia platformy.
Podsumowanie
Decyzja o wyborze między architekturą dedykowaną a wielodostępną powinna być podyktowana indywidualnymi potrzebami klienta. Architektura dedykowana jest szczególnie polecana organizacjom, które wymagają wysokiego poziomu bezpieczeństwa, zgodności z przepisami oraz możliwości dostosowania. Natomiast architektura wielodostępna jest bardziej odpowiednia dla organizacji, dla których priorytetem jest oszczędność kosztów i skalowalność.
Platformy chmurowe, takie jak AWS, dają możliwość zmiany wyboru w miarę rozwoju potrzeb. Możliwe jest także stworzenie środowiska hybrydowego, które uwzględnia różne wymagania i pozwala na harmonijną współpracę różnych architektur.
Zapraszamy do zapoznania się z szerszym omówieniem zagadnienia wielodostępności w przetwarzaniu w chmurze.
newsblog.pl
Maciej – redaktor, pasjonat technologii i samozwańczy pogromca błędów w systemie Windows. Zna Linuxa lepiej niż własną lodówkę, a kawa to jego główne źródło zasilania. Pisze, testuje, naprawia – i czasem nawet wyłącza i włącza ponownie. W wolnych chwilach udaje, że odpoczywa, ale i tak kończy z laptopem na kolanach.