Jak dobrać odpowiednią wirtualną maszynę?

Prawidłowy dobór konfiguracji wirtualnej maszyny (sizing) pozwala uniknąć przepłacania za niewykorzystane zasoby (over-provisioning) i zapobiega spadkom wydajności pod wpływem obciążenia (under-provisioning).

Mała strona firmowa i blog (Systemy CMS)

Wdrożenie prostych stron informacyjnych lub blogów opartych na systemach zarządzania treścią (np. WordPress) charakteryzuje się asymetrycznym profilem obciążenia. Ruch generowany przez użytkowników polega głównie na operacjach odczytu statycznych elementów stron, co minimalnie obciąża procesor fizyczny.

Konfiguracja 2 vCPU oraz 4 GB RAM może być rozsądnym punktem startowym dla prostego CMS, ale nie stanowi uniwersalnego minimum. Ostateczny dobór powinien wynikać z ruchu, aplikacji i pomiarów. Pozwala ona na płynną pracę serwera HTTP oraz lokalnej bazy danych. W celu optymalizacji kosztów zaleca się stosowanie standardowych dysków SSD.

Wydajność takiego środowiska zwiększa się nie poprzez dodawanie zasobów sprzętowych, lecz poprzez wdrożenie mechanizmów buforowania (cache) po stronie serwera WWW (np. Nginx) oraz w pamięci RAM (np. Redis).

Średni sklep internetowy (E-commerce)

Platformy e-commerce wykazują znacznie wyższe i bardziej zmienne zapotrzebowanie na moc obliczeniową niż statyczne strony informacyjne. Każda interakcja klienta, od filtrowania produktów po proces finalizacji zakupu, wymaga generowania dynamicznych zapytań do bazy danych oraz uruchamiania procesów interpretatora języka programowania (np. PHP-FPM).

Środowisko obsługujące do stu tysięcy wizyt miesięcznie może wymagać różnej konfiguracji – sama liczba wizyt nie wystarcza do określenia CPU i RAM. 4–8 vCPU oraz 8–16 GB RAM można potraktować wyłącznie jako przykładowy punkt startowy do testów. W tej architekturze krytycznym komponentem staje się podsystem pamięci masowej. Zastosowanie dysków typu High-Speed NVMe jest niezbędne do wyeliminowania opóźnień podczas jednoczesnego zapisu sesji wielu użytkowników i odpytywania bazy danych o produkty.

Systemy klasy ERP oraz CRM

Oprogramowanie biznesowe integrujące procesy księgowe, magazynowe i logistyczne przetwarza dane w sposób ciągły pod wpływem operacji wykonywanych przez zalogowanych pracowników. Charakterystyka tego obciążenia wymaga stabilnej i przewidywalnej wydajności procesora oraz dużego obszaru pamięci operacyjnej do obsługi wątków aplikacyjnych.

Dla systemów obsługujących do stu aktywnych użytkowników jednocześnie konfiguracja 8–16 vCPU i 32–64 GB RAM może być punktem wyjścia do testów, ale nie jest uniwersalną rekomendacją. Wymagania zależą m.in. od aplikacji, bazy danych i charakterystyki operacji. Infrastruktura ta powinna korzystać z najszybszych dysków NVMe objętych gwarancją jakości usług (SLA).

W celu zabezpieczenia wrażliwych danych handlowych, wirtualne maszyny dla systemów ERP i CRM należy izolować w ramach dedykowanych sieci prywatnych (VPC) oraz objąć harmonogramem automatycznego tworzenia migawek dyskowych (snapshots) na wypadek awarii.

Produkcyjne relacyjne bazy danych (SQL)

Bazy danych obsługujące systemy o wysokiej intensywności transakcyjnej stawiają najwyższe wymagania sprzętowe w strukturze IT. Wydajność operacji zapisu i odczytu bazy zależy bezpośrednio od wielkości pamięci RAM, która służy do przechowywania indeksów i tabel w pamięci podręcznej (np. InnoDB Buffer Pool w MySQL/MariaDB).

Dla produkcyjnych baz danych nie istnieje jedna uniwersalna konfiguracja. 16–32 vCPU i 64–128 GB RAM można potraktować jako przykład do benchmarku dla większego obciążenia. Dedykowane rdzenie mogą poprawiać przewidywalność latencji, ale nie są bezwzględnym wymaganiem każdej produkcyjnej bazy danych.

Wymagana jest instalacja dysków klasy Enterprise NVMe z gwarantowanym, stałym parametrem IOPS (operacji wejścia/wyjścia na sekundę) oraz optymalizacja sterowników dyskowych i sieciowych w trybie parawirtualizacji (VirtIO).

Zastosowanie / Profil obciążeniaRekomendowana konfiguracja vCPU i RAMRekomendowany typ pamięci masowejKluczowe aspekty architektoniczne
Blog / Mała strona firmowa (np. WordPress, prosty CMS)2 vCPU, 4 GB RAM – przykładowy punkt startowy, nie uniwersalne minimumStandard SSD / Fast SSDPrzeznaczona dla umiarkowanego ruchu, buforowanie na poziomie Redis/Nginx.
Średni sklep e-commerce (do 50–100 tys. unikalnych wizyt/mc)4–8 vCPU, 8–16 GB RAM – przykładowy punkt startowy; sizing wymaga testówHigh-Speed NVMeGwarancja przetwarzania transakcji, zapytania MySQL/PostgreSQL o niskich opóźnieniach.
System ERP / CRM (20–100 aktywnych użytkowników jednocześnie)8–16 vCPU, 32–64 GB RAM – przykładowy punkt startowy; sizing wymaga testówUltra NVMe z dedykowanym SLADedykowana sieć prywatna VPC, regularne kopie zapasowe, wysoki priorytet CPU.
Produkcyjna baza danych SQL (duża intensywność transakcyjna)16–32 vCPU, 64–128 GB RAM – przykładowy punkt startowy; sizing wymaga benchmarkuEnterprise NVMe z gwarancją IOPSDuża przestrzeń RAM na bufory bazy danych, zoptymalizowane sterowniki VirtIO.
Sztuczna Inteligencja / Analityka (Trening modeli ML, Big Data)16–64 vCPU, 64–256 GB RAM + vGPU – wyłącznie przykładowy zakres, zależny od workloaduUltraszybkie wolumeny NVMe / Scratch SpaceAkceleracja sprzętowa GPU Passthrough, wysoka przepustowość szyn komunikacyjnych.

Nawigacja po przewodniku

← Poprzedni rozdział: 8. Porównanie z innymi technologiami

Następny rozdział: 10. Bezpieczeństwo wirtualnych maszyn →

Powrót do głównego rozdziału