Wybór odpowiedniej usługi obliczeniowej
Porównaj maszyny wirtualne, kontenery, funkcje serverless i hosting aplikacji PaaS, aby wybrać najwłaściwszą opcję obliczeniową dla różnych profili obciążeń.
Wybór odpowiedniej usługi obliczeniowej to bezpłatna lekcja Azure Fundamentals na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Azure Fundamentals, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Azure Fundamentals zawiera 4 lekcji w sumie.
Wybór usług obliczeniowych Azure
Azure oferuje wiele usług obliczeniowych — każda z nich jest przeznaczona dla innego typu obciążenia, poziomu kontroli i modelu operacyjnego. Wybór niewłaściwej usługi obliczeniowej prowadzi do niepotrzebnej złożoności (gdy poziom jest zbyt niski) albo do niewystarczającej kontroli (gdy usługa jest zbyt abstrakcyjna). Kluczowe pytanie brzmi: jak dużą częścią bazowej infrastruktury trzeba zarządzać? W tej lekcji omówiono najważniejsze opcje obliczeniowe i kryteria pomagające wybrać właściwą z nich w każdym scenariuszu.
Opcja 1: Azure Virtual Machines
Azure Virtual Machines zapewnia pełną kontrolę nad systemem operacyjnym, środowiskiem uruchomieniowym i stosem aplikacji. Maszyny wirtualne należy wybrać, gdy trzeba: uruchamiać starsze aplikacje wymagające określonej wersji systemu operacyjnego lub ustawienia jądra, przeprowadzić migrację typu lift-and-shift obciążenia lokalnego bez wprowadzania zmian, instalować niestandardowe oprogramowanie na poziomie systemu albo korzystać z trwałych zasobów obliczeniowych działających całodobowo w przewidywalnej, stałej konfiguracji. Kompromisem jest największe obciążenie operacyjne — użytkownik odpowiada za instalowanie poprawek systemu, wzmacnianie zabezpieczeń i monitorowanie warstwy systemu operacyjnego.
Opcja 2: VM Scale Sets
Virtual Machine Scale Sets to właściwy wybór, gdy potrzebne są maszyny wirtualne, ale także możliwość automatycznego skalowania zależnie od zapotrzebowania. Jeśli obciążenie jest bezstanowe (serwery internetowe, zaplecza API, procesy robocze zadań wsadowych), działa identycznie na każdej instancji i charakteryzuje się zmiennym zapotrzebowaniem, VMSS jest naturalnym rozwiązaniem. Łączy ono kontrolę na poziomie maszyny wirtualnej z automatycznym skalowaniem horyzontalnym. Przy wyborze między samodzielną maszyną wirtualną a VMSS czynnikiem rozstrzygającym jest zazwyczaj to, czy obciążenie musi skalować się poza jedną instancję.
Opcja 3: Azure App Service
Azure App Service to platforma PaaS do hostowania aplikacji internetowych, interfejsów API REST i zapleczy aplikacji mobilnych. Użytkownik wdraża kod (w Node.js, Pythonie, Javie, .NET, PHP, Ruby lub kontenerze), a Azure zarządza środowiskiem uruchomieniowym, systemem operacyjnym, poprawkami, równoważeniem obciążenia i skalowaniem. App Service należy wybrać, gdy trzeba szybko wdrażać kod bez zarządzania infrastrukturą, aplikacja korzysta ze standardowych wzorców aplikacji internetowych i nie jest potrzebna modyfikacja na poziomie systemu operacyjnego. App Service jest jedną z najpopularniejszych usług Azure dzięki równowadze między możliwościami a prostotą.
Opcja 4: Azure Container Instances
Azure Container Instances (ACI) umożliwia uruchamianie kontenera Docker w chmurze bez zarządzania infrastrukturą — bez maszyn wirtualnych i bez orkiestratora. ACI idealnie nadaje się do krótkotrwałych, uruchamianych na żądanie obciążeń kontenerowych: zaplanowanych zadań wsadowych, zadań potoków CI/CD, skryptów przetwarzania danych lub środowisk programistycznych. Kontenery uruchamiają się w ciągu kilku sekund, a opłaty są naliczane za każdą sekundę wykorzystania procesora i pamięci. ACI nie zapewnia funkcji takich jak wykrywanie usług, wdrożenia kroczące ani restart na podstawie stanu, które oferuje Kubernetes — jest środowiskiem uruchamiania pojedynczego kontenera lub grupy kontenerów.
# Run a container in ACI with no VM to manage
az container create \
--resource-group myRG \
--name myContainer \
--image mcr.microsoft.com/hello-world \
--cpu 1 --memory 1Opcja 5: Azure Kubernetes Service
Azure Kubernetes Service (AKS) to zarządzane środowisko Kubernetes służące do orkiestracji aplikacji skonteneryzowanych na dużą skalę. AKS należy wybrać, gdy istnieje wiele mikrousług wymagających wykrywania usług, wdrożeń kroczących, automatycznego przywracania działania i zaawansowanego skalowania. AKS zarządza płaszczyzną sterowania Kubernetes (serwerem API, etcd i harmonogramem) jako bezpłatnym komponentem PaaS, podczas gdy użytkownik zarządza maszynami wirtualnymi węzłów roboczych. AKS jest najbardziej wymagającą operacyjnie opcją kontenerową, ale zapewnia największe możliwości i elastyczność w produkcyjnych architekturach mikrousług.
Opcja 6: Azure Functions (bezserwerowe)
Azure Functions to sterowana zdarzeniami, bezserwerowa opcja obliczeniowa, w której użytkownik pisze pojedyncze funkcje wykonywane w odpowiedzi na wyzwalacze — żądania HTTP, harmonogramy czasowe, wiadomości pojawiające się w kolejce lub zdarzenia pochodzące z innych usług Azure. Opłaty są naliczane za wykonania (pierwszy milion wykonań w miesiącu jest bezpłatny), a platforma automatycznie skaluje się od zera do tysięcy jednoczesnych wykonań. Functions należy używać do automatyzacji sterowanej zdarzeniami, webhooków i potoków transformacji danych oraz wszędzie tam, gdzie obciążenie jest z natury krótkotrwałe i uruchamiane przez wyzwalacze.
Schemat wyboru usług obliczeniowych
Skorzystaj z uproszczonego drzewa decyzyjnego: Potrzebna jest pełna kontrola nad systemem operacyjnym? → VM lub VMSS. Skonteneryzowane obciążenie na dużą skalę? → AKS. Pojedynczy, krótkotrwały kontener? → ACI. Aplikacja internetowa lub API bez zarządzania systemem operacyjnym? → App Service. Kod sterowany zdarzeniami i wykonywany krótko? → Azure Functions. Im niżej na tej liście znajduje się wybrana opcja, tym mniejszą częścią infrastruktury trzeba zarządzać i tym szybciej można wdrażać rozwiązanie — ale także tym mniejsza jest kontrola nad środowiskiem wykonywania. Należy wybrać najwyższy poziom abstrakcji spełniający wymagania.
Łączenie usług obliczeniowych
Architektury stosowane w praktyce często wykorzystują wiele opcji obliczeniowych jednocześnie. Przykładowo firma może używać App Service dla aplikacji internetowej skierowanej do klientów, Azure Functions do sterowanego zdarzeniami przetwarzania zamówień, AKS jako platformy wewnętrznych mikrousług oraz maszyn wirtualnych dla starszego systemu ERP, którego nie można zrefaktoryzować. Ujednolicone narzędzia zarządzania Azure — portal, interfejs wiersza polecenia, szablony ARM i Azure Monitor — działają spójnie we wszystkich usługach obliczeniowych, dzięki czemu architekturami wykorzystującymi wiele usług można zarządzać z jednej płaszczyzny sterowania.
Porównanie kosztów opcji obliczeniowych
Koszty różnią się znacząco w zależności od wybranej opcji obliczeniowej. Maszyny wirtualne — opłata jest naliczana za każdą godzinę według rozmiaru maszyny wirtualnej, nawet gdy jest bezczynna (chyba że zostanie cofnięta jej alokacja). App Service — opłata jest naliczana za każdą godzinę według jednostki SKU planu App Service, ale wiele aplikacji może współdzielić jeden plan bez dodatkowych kosztów. ACI — opłata jest naliczana za każdą sekundę rzeczywistego użycia procesora i pamięci, bez kosztów za bezczynność. Azure Functions (Consumption Plan) — opłata jest naliczana za każde wykonanie oraz za każdą sekundę czasu wykonywania, przy bardzo hojnym bezpłatnym limicie. W przypadku obciążeń o zmiennym i skokowym charakterze opcje serverless są niemal zawsze najbardziej opłacalne; w przypadku stałych obciążeń działających bez przerwy tańsze mogą być zarezerwowane maszyny wirtualne lub plany App Service.
Porównanie umów SLA
Różne usługi obliczeniowe oferują różne gwarancje SLA: pojedyncza maszyna wirtualna (Premium SSD): 99,9%. Maszyna wirtualna w zestawie dostępności: 99,95%. Maszyna wirtualna rozmieszczona w strefach dostępności: 99,99%. App Service (warstwa Standard i wyższe): 99,95%. Azure Functions (Consumption Plan): 99,95%. AKS: 99,95% dostępności serwera API (w płatnej warstwie). Złożone SLA dla architektury składającej się z wielu komponentów oblicza się przez pomnożenie poszczególnych wartości SLA — na przykład App Service (99,95%) połączony z Azure SQL (99,99%) daje złożone SLA wynoszące około 99,94%.
Szybki test
Sprawdź swoją wiedzę na temat zagadnień Microsoft Azure Fundamentals (AZ-900) omówionych w tej lekcji.
Podsumowanie lekcji
W tej lekcji poznali Państwo: Azure oferuje wiele opcji obliczeniowych — maszyny wirtualne, VMSS, App Service, ACI, AKS i Functions — z których każda jest odpowiednia dla innych profili obciążeń i wymagań dotyczących kontroli, ogólna zasada mówi, aby wybierać najwyższy poziom abstrakcji spełniający wymagania, by ograniczyć obciążenie operacyjne, a także rzeczywiste architektury często łączą wiele usług obliczeniowych koordynowanych za pośrednictwem ujednoliconej warstwy zarządzania platformy Azure. W następnej części rozpoczniemy omawianie usług magazynowania Azure, zaczynając od kont magazynu.
Często zadawane pytania
Czy lekcja „Wybór odpowiedniej usługi obliczeniowej” jest bezpłatna?
Tak — pełny tekst „Wybór odpowiedniej usługi obliczeniowej” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Azure Fundamentals, przejdź na CoddyKit PRO. Kurs Azure Fundamentals zawiera 4 lekcji w sumie.
Co nauczysz się w „Wybór odpowiedniej usługi obliczeniowej”?
Porównaj maszyny wirtualne, kontenery, funkcje serverless i hosting aplikacji PaaS, aby wybrać najwłaściwszą opcję obliczeniową dla różnych profili obciążeń. Ćwiczysz Azure Fundamentals z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Azure Fundamentals?
Nie wymagamy żadnego doświadczenia. Azure Fundamentals w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Wybór odpowiedniej usługi obliczeniowej”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Azure Fundamentals?
Tak. Każda lekcja Azure Fundamentals zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Maszyny wirtualne Azure
- Zestawy skalowania maszyn wirtualnych
- Azure Virtual Desktop
- Wybór odpowiedniej usługi obliczeniowej