Oracle na AWS - baza dużych możliwości
Oracle to amerykańska firma, która zajmuje się tworzeniem i dostarczaniem oprogramowania do szeroko pojętej obsługi przedsiębiorstw, a przede wszystkim baz danych. Amazon Web Services obsługuje i wspiera bazy danych Oracle oraz oferuje przedsiębiorstwom szereg rozwiązań do migracji i wdrażania aplikacji korporacyjnych w chmurze.
Procedura uruchomienia jest bardzo podobna do instalacji, jak w przypadku klasycznego Data Center, jednak dla administratora bazy danych lub programisty nie ma różnic między tymi dwoma środowiskami. Istnieją wprawdzie pewne decyzje, które muszą zostać podjęte przed uruchomieniem bazy danych Oracle w AWS. Są one związane m.in. z: bezpieczeństwem, pamięcią masową, konfiguracjami obliczeniowymi, zarządzaniem i monitorowaniem. Pozwolą na jak najlepsze wykorzystanie bazy danych Oracle i wdrożenie jej na AWS.
AWS daje 3 możliwości uruchomienia bazy danych Oracle:
- używając usługi Amazon RDS,
- za pomocą instancji Amazon EC2,
- lub VMware Cloud na AWS.
Baza danych Oracle jako Amazon RDS
Użycie serwisu Amazon RDS wydaje się być idealnym w odniesieniu do bazy Oracle. RDS zadba o stworzenie infrastruktury, zapewniając wygodne narzędzia do zarządzania konfiguracją bazy danych, bezpieczeństwem, kopiami zapasowymi i skalowalnością. Wiele czynności jest zautomatyzowanych, co odciąża użytkownika w codziennej pracy. Takie incydenty jak wymiana wadliwie działającej instancji bazy i przełączenia nodów master w klastrze HA, nie wymagają podjęcia akcji i są robione automatycznie bez dodatkowej ingerencji człowieka. Od niedawna dostępna jest autoskalowalna przestrzeń dyskowa, która dostosowuje się automatycznie do ilości danych w bazie danych, dzięki czemu nie zabraknie miejsca, a jednocześnie koszt utrzymania bazy zostaje zminimalizowany. Kolejna przydatna funkcjonalność Amazon RDS, to skalowanie instancji, na której działa baza danych; jeśli potrzebna jest większa moc, wystarczy zmiana konfiguracji i baza rozpoczyna działanie na wyższych parametrach.W pełni zarządzana usługa Amazon RDS wykona te prace automatycznie.
Baza danych Oracle na instancjach Amazon EC2
Uruchamianie samodzielnie zarządzanej bazy danych Oracle bezpośrednio na Amazon Elastic Compute Cloud (Amazon EC2), zapewnia pełną kontrolę nad ustawieniami, środowiskiem, infrastrukturą i bazą danych. Uruchamianie bazy danych na instancji Amazon EC2 jest bardzo podobne do uruchamiania bazy danych na własnym serwerze. Użytkownik posiada pełną kontrolę nad bazą danych i dostępem na poziomie systemu operacyjnego, dzięki czemu może uruchomić agentów monitorujących i zarządzających oraz użyć wybranych narzędzi do replikacji, tworzenia kopii zapasowych i ich przywracania. Ponadto ma możliwość korzystania z każdego opcjonalnego modułu dostępnego dla bazy Oracle. Jednak opcja ta wymaga stworzenia, skonfigurowania, zarządzania i dostrojenia wszystkich komponentów, w tym instancji Amazon EC2. Ponadto, niezbędnym jest dostosowanie woluminów pamięci masowej, skalowalności, konfiguracji sieci i bezpieczeństwa, opartego na najlepszych praktykach architektury AWS.
Baza Oracle VmWare Cloud na AWS
VMware Cloud na AWS to zintegrowana oferta chmurowa opracowana wspólnie przez AWS i VMware. Podobnie jak przy Amazon EC2, mamy pełną kontrolę nad bazą danych Oracle i mamy dostęp do niej na poziomie systemu operacyjnego. Możemy uruchamiać zaawansowane architektury, takie jak Oracle Real Application Cluster (RAC), rozszerzone klastry Oracle RAC (w różnych wersjach Avaliability Zones) w VMware Cloud na AWS.
Licencje
Licencja Oracle Database na AWS opiera się na parametrze wielkości instancji, na której zainstalowana i uruchomiona jest baza danych. W związku z tym, że konfiguracja procesorów z których korzysta baza, ma wpływ na licencję AWS oferuje optymalizację funkcji procesora w instancjach Amazon RDS i Amazon EC2.
Aby zoptymalizować instancje, pod kątem danego obciążenia lub potrzeb biznesowych, można określić następujące opcje procesora:
- liczba rdzeni procesora: możliwość dostosowania liczby rdzeni procesora dla instancji,
- wątki na rdzeń – możliwość wyłączenia wielowątkowości, określając pojedynczy wątek na rdzeń procesora,
- VMware Cloud na AWS oferuje również niestandardową liczbę rdzeni procesora dla swoich węzłów. Możliwość wyboru 8, 16 lub 36 rdzeni procesora na hosta dla I3 lub wybór 8, 16 lub 48 rdzeni procesora dla typu hosta R5.
Amazon RDS oferuje licencję godzinową, w której można używać funkcjonalności Bring Your Own License, lub korzystać z licencji bazy danych Oracle wliczonej w koszt działania instancji. Dostępne jest to dla Oracle Standard Edition One i Standard Edition Two. Dzięki temu można skalować instancję, na której działa baza danych, bez martwienia się o zgodność z licencjami Oracle.
Często powtarzającym się scenariuszem działania jest skalowanie instancji do największych dostępnych rozmiarów w usłudze RDS. Po to, by jak najszybciej obsłużyć skomplikowane zapytania, które na słabszej instancji, z mniejszą ilością procesorów zajęłoby nieporównywalnie więcej czasu. Po wykonaniu takich zapytań można zmniejszyć wielkość instancji, dzięki czemu koszty utrzymania bazy danych, infrastruktury i licencji zostają zminimalizowane.
Będąc posiadaczem licencji Oracle Database, można użyć wcześniej wspomnianego modelu usługi BYOL. Spowoduje to niższy koszt godzinowy działania instancji Amazon RDS, a to dlatego, że koszt licencji Oracle nie zostanie wliczony w jej cenę.
Model BYOL jest przeznaczony dla klientów, którzy wolą korzystać z istniejącej licencji bazy danych Oracle lub chcą zakupić nową licencję bezpośrednio od Oracle.
Chcąc użyć Oracle Database Enterprise Edition z Amazon RDS lub uruchomić samodzielnie zarządzana bazę danych Oracle na instancji Amazon EC2 lub VMWare Cloud na AWS, model BYOL jest jedynym możliwym wyjściem.
Amazon RDS vs. Amazon EC2 vs. VMWare Cloud na AWS
Zarówno Amazon RDS, jak i Amazon EC2 oferują różne korzyści w zakresie uruchamiania baz dancyh Oracle. Usługa Amazon RDS jest prostsza w konfiguracji, zarządzaniu i utrzymaniu, niż w przypadku instalacji bazy danych na instancji EC2. Pozwala skupić się na innych zadaniach niż codzienna administracja bazą danych. Alternatywnie, uruchomienie bazy danych na instancji Amazon EC2 zapewnia większą kontrolę i elastyczność. W zależności od aplikacji i naszych wymagań, można wybrać sposób, który najbardziej spełnia oczekiwania.
Migrując wiele baz danych Oracle do AWS, można zauważyć, że niektóre z nich doskonale nadają się do uruchomienia w usłudze Amazon RDS, podczas gdy inne sprawdzą się lepiej bezpośrednio na instancji Amazon EC2. Wielu klientów AWS korzysta z kilku baz danych; w Amazon RDS, Amazon EC2 i VMware Cloud na AWS dla baz Oracle’a.
Amazon RDS sprawdzi się najlepiej gdy:
- Chcemy skupić się na swojej działalności i aplikacjach, a oczekujemy, że AWS zadba o wszystkie czynności związane z dostarczeniem i zarządzaniem bazą danych, jak i kopiami bezpieczeństwa, aktualizacją silnika bazy danych i systemu operacyjengo, na którym baza działa.
- Potrzebujemy wysoce dostępnego rozwiązania bazodanowego i chcemy skorzystać z rozwiązania, gdzie za pomocą naciśnięcia przycisku, dostajemy synchroniczną replikę Multi-AZ, oferowana przez Amazon RDS, bez konieczności ręcznego konfigurowania i utrzymywania rezerwowej bazy danych.
- Chcemy mieć synchroniczną replikację do instancji rezerwowej, dla wysokiego poziomu dostępności dla Oracle Database Standard Edition One lub Standard Edition Two.
- Chcemy zapłacić za licencję Oracle, jako część kosztu instancji na godzinę, zamiast dokonywać dużych początkowych inwestycji.
- Nasz rozmiar bazy danych i potrzeby IOPS są mniejsze niż limity RDS Oracle.
- Nie chcemy zarządzać kopiami zapasowymi i co najważniejsze, punktami podczas odzyskiwania bazy danych.
- Chcemy skupić się na zadaniach wysokiego poziomu, takich jak: dostrajanie wydajności, optymalizacja schematu; nie chcąc poświęcać czasu na codzienne administrowanie bazą danych.
- Chcemy skalować typ instancji w górę lub w dó,ł na podstawie obciążenia bazy danych, bez obawy o licencjonowanie i złożoność procesu skalowania.
Amazon EC2 sprawdzi się najlepiej gdy:
- Potrzebujemy pełnej kontroli nad bazą danych, w tym dostępu użytkowników SYS / SYSTEM lub potrzebujemy dostępu na poziomie systemu operacyjnego.
- Rozmiar bazy danych przekracza 80% obecnego maksymalnego rozmiaru bazy danych w Amazon RDS.
- Musimy korzystać z funkcji lub opcji Oracle, które nie są obecnie obsługiwane przez Amazon RDS.
- Nasze potrzeby IOPS w bazie danych są wyższe niż obecny limit IOPS.
- Potrzebujemy konkretnej wersji bazy danych Oracle, która nie jest obsługiwana przez Amazon RDS.
VMware Cloud na AWS sprawdzi się najlepiej gdy:
- Nasze bazy danych Oracle są już uruchomione w lokalnym centrum danych, w zwirtualizowanych środowiskach vSphere.
- Potrzebujemy Oracle Real Application Clusters (RAC) w chmurze.
- Mamy dużą liczbę baz danych i potrzebujemy szybszej migracji (kilka godzin) do chmury, bez żadnych godzin pracy zespołu ds. migracji.
- Musimy zachować adresy IP baz danych i aplikacji podczas migracji do chmury, aby uniknąć ponownej pracy po jej zakończeniu.
- Potrzebujemy wydajności pamięci NVMe w hostach bare metal Amazon EC2 wraz z trwałością danych.