Funkcje i zalety zestawów skalowania maszyn wirtualnych
Zestawy skalowania maszyn wirtualnych platformy Azure zapewniają skalowalny sposób uruchamiania aplikacji na zestawie maszyn wirtualnych. Maszyny wirtualne w zestawie skalowania mogą mieć tę samą konfigurację i uruchamiać te same aplikacje lub mieć różne konfiguracje i uruchamiać różne aplikacje. Wraz ze wzrostem zapotrzebowania zwiększa się liczba maszyn wirtualnych uruchamianych w zestawie skalowania. W miarę zmniejszania się zapotrzebowania można usunąć nadmiarowe maszyny wirtualne. Zestaw skalowania maszyn wirtualnych jest idealny w scenariuszach obejmujących obciążenia obliczeniowe, obciążenia danych big data i obciążenia kontenerów.
W naszym przykładowym scenariuszu klienci korzystają z jednej z witryn internetowych firmy, aby sprawdzać stan przesyłek i zarządzać nimi. Ponieważ witryna jest dostępna na całym świecie, czasami trudno jest przewidzieć obciążenie o określonej porze dnia. Ponadto obciążenie może różnić się zależnie od pory roku — ze względu na święta na końcu roku grudzień jest pracowitym miesiącem. Decydujesz się użyć zestawu skalowania maszyn wirtualnych do obsługi zmiennego obciążenia przy zachowaniu krótkiego czasu odpowiedzi dla żądań klientów.
W tej lekcji zapoznasz się z funkcjami zestawów skalowania maszyn wirtualnych. Na koniec tej lekcji możesz opisać, jak działa zestaw skalowania. Dowiesz się, jak zestaw skalowania obsługuje scenariusze skalowania w poziomie i skalowania w górę oraz dowiesz się, jak używać skalowania automatycznego i skalowania opartego na harmonogramie, aby dostosować zasoby dostępne dla zestawu skalowania.
Co to jest zestaw skalowania maszyn wirtualnych?
Zestawy skalowania maszyn wirtualnych na platformie Azure zostały zaprojektowane tak, aby umożliwić wdrażanie wielu maszyn wirtualnych o zrównoważonym obciążeniu i zarządzanie nimi. Zestawy skalowania maszyn wirtualnych są wystarczająco inteligentne, aby automatycznie skalować liczbę wystąpień maszyn wirtualnych w górę lub w dół.
Kryteria aktywowania skalowania w górę lub w dół mogą zależeć od rzeczywistego zapotrzebowania i użycia lub niestandardowego harmonogramu. Zestawy skalowania mogą stosować tę samą konfigurację do grupy maszyn wirtualnych jednocześnie. Nie wymagają ręcznego konfigurowania wystąpień indywidualnie, jeśli nie chcesz.
Zestaw skalowania używa modułu równoważenia obciążenia do dystrybucji żądań między wystąpienia maszyn wirtualnych. Używa sondy kondycji lub rozszerzenia kondycji aplikacji, aby określić dostępność każdego wystąpienia. Sonda kondycji lub rozszerzenie kondycji aplikacji wysyła polecenie ping do wystąpienia. Jeśli wystąpienie odpowie, zestaw skalowania wie, że wystąpienie jest nadal dostępne. Jeśli polecenie ping nie powiedzie się lub przekroczy limit czasu, zestaw skalowania wie, że wystąpienie jest niedostępne, i nie wysyła do niego żądań.
Zestawy skalowania maszyn wirtualnych maszyn wirtualnych obsługują maszyny wirtualne z systemem Linux i Windows na platformie Azure i mogą uruchamiać maksymalnie 1000 maszyn wirtualnych w jednym zestawie skalowania.
Jeśli masz do czynienia z dużymi obciążeniami, w przypadku których zapotrzebowanie zmienia się i jest nieprzewidywalne, zestawy skalowania są doskonałym rozwiązaniem. Zestawy skalowania maszyn wirtualnych oferują maszyny wirtualne, które można skalować w odpowiedzi na zapotrzebowanie i są ze zrównoważonym obciążeniem. Zapewniają one automatycznie środowisko o wysokiej dostępności.
Opcje skalowania dla zestawów skalowania
Zestawy skalowania zostały zaprojektowane pod kątem efektywności kosztowej. Nowe wystąpienia maszyn wirtualnych są tworzone tylko w razie potrzeby.
Czasami może być konieczne dodanie lub usunięcie maszyn w zestawie skalowania w zależności od zapotrzebowania. Na przykład może nie być potrzebne uruchamianie niektórych maszyn w okresach tygodnia lub dnia, gdy zapotrzebowanie jest niskie. Możesz ręcznie dostosować liczbę maszyn wirtualnych w zestawie skalowania, zwiększając lub zmniejszając liczbę wystąpień. W wielu przypadkach lepiej jest automatycznie dodawać lub usuwać maszyny wirtualne przy użyciu reguł. Reguły są oparte na metrykach. Zapewniają one dodanie odpowiedniej liczby maszyn wirtualnych w zależności od zapotrzebowania lub harmonogramu.
Skalowanie zestawu skalowania
Zestawy skalowania maszyn wirtualnych umożliwiają szybkie tworzenie maszyn wirtualnych i zarządzanie nimi na potrzeby zmieniającego się obciążenia. Możesz skonfigurować dwa typy skalowania dla zestawu skalowania:
Zaplanowane skalowanie: możesz aktywnie zaplanować wdrożenie zestawu skalowania w celu wdrożenia co najmniej jednego wystąpienia, aby obsłużyć wzrost ruchu, a następnie skalować z powrotem w dół po zakończeniu skoku.
Skalowanie automatyczne: jeśli obciążenie jest zmienne i nie zawsze można go zaplanować, możesz użyć skalowania progowego opartego na metrykach. Skalowanie automatyczne skaluje w poziomie na podstawie użycia węzła. Następnie skala jest zmniejszana, gdy zasoby powrócą do stanu podstawowego.
Oba te rozwiązania pozwalają spełnić wymagania dotyczące skalowania przy jednoczesnym zarządzaniu związanymi z tym kosztami. W poniższych przykładach opisano scenariusze, w których można zastosować różne typy skalowania.
Zaplanowane skalowanie
Załóżmy, że jesteś członkiem zespołu DevOps dla dużej firmy dostarczającej żywność. Piątkowy wieczór jest zwykle najgorętszym okresem. Odpowiednio godzina 7 rano w środę jest zazwyczaj najspokojniejsza.
Opłaty za platformę Azure są naliczane na podstawie użycia zasobów, więc nie uruchamiaj usług, których nie potrzebujesz. Jeśli zapotrzebowanie w piątkowy wieczór wymaga 100 serwerów internetowych, bez problemu za nie zapłacisz. Jeśli jednak w środę rano potrzebne są tylko dwa serwery, nie chcesz płacić za 98 bezczynnych serwerów. Aby zarządzać kosztami przy spełnieniu wymagań operacyjnych, rozważ użycie zaplanowanego skalowania.
Skalowanie automatyczne
Załóżmy, że należysz do zespołu DevOps w popularnej firmie obuwniczej. W miarę zbliżania się do wprowadzenia produktu uważasz, że widzisz znaczne zapotrzebowanie na usługę. Jednak wzrost zapotrzebowania może być nieprzewidywalny i trudny do oszacowania. Chcesz, aby usługa spełniała zapotrzebowanie przez skalowanie w poziomie w miarę użycia bieżących zasobów.
W tym scenariuszu można użyć autoskalowania opartego na metrykach. Ten typ autoskalowania skaluje infrastrukturę w poziomie w miarę wzrostu zapotrzebowania. Jest ona skalowana z powrotem po spadku zapotrzebowania.
Obniżanie kosztów przy użyciu maszyn wirtualnych typu spot
Usługa Azure Spot Virtual Machines umożliwia korzystanie z nieużywanej pojemności przy znacznych oszczędnościach kosztów. W dowolnym momencie, gdy platforma Azure potrzebuje pojemności z powrotem, infrastruktura platformy Azure eksmituje maszyny wirtualne typu spot platformy Azure. W związku z tym te maszyny wirtualne doskonale nadają się do obsługi obciążeń, które mogą obsługiwać przerwy, takie jak zadania przetwarzania wsadowego, środowiska deweloperskie/testowe i duże obciążenia obliczeniowe.
Ilość dostępnej pojemności może się różnić w zależności od rozmiaru, regionu, godziny dnia i innych czynników. Podczas wdrażania maszyn wirtualnych typu spot platformy Azure platforma Azure przydziela maszyny wirtualne, jeśli jest dostępna pojemność, ale nie ma umowy SLA dla tych maszyn wirtualnych. Maszyna wirtualna typu spot platformy Azure nie oferuje gwarancji wysokiej dostępności. W dowolnym momencie, gdy platforma Azure potrzebuje pojemności z powrotem, infrastruktura platformy Azure eksmituje maszyny wirtualne typu spot platformy Azure z powiadomieniem o 30 sekundach.
Gdy platforma Azure ponownie potrzebuje mocy obliczeniowej, otrzymasz powiadomienie o usunięciu maszyny wirtualnej platformy Azure z zestawu skalowania. Jeśli musisz przeprowadzić oczyszczanie lub bezpiecznie zakończyć wykonywanie kodu na maszynie wirtualnej, możesz użyć usługi Azure Scheduled Events, aby zareagować na to powiadomienie na maszynie wirtualnej. Możesz również nakazać zestawowi skalowania, aby próbował utworzyć inną maszynę wirtualną w celu zastąpienia tej, która jest usuwana. Utworzenie nowej maszyny wirtualnej nie jest jednak gwarantowane.
Za pomocą usługi Azure Spot Virtual Machines można określić dwa rodzaje usuwania, ustawiając zasady eksmisji:
- Cofanie przydziału zasad (ustawienie domyślne): maszyna wirtualna jest zatrzymana. Przydziały zasobów przetwarzania i pamięci są cofane. Dyski pozostają nienaruszone, a dane są zachowywane. Opłata jest naliczana za miejsce na dysku, gdy maszyna wirtualna nie jest uruchomiona.
- Usuwanie zasad: cała maszyna wirtualna jest usuwana, w tym wszystkie dyski bazowe, więc nie są naliczane opłaty za magazyn.
Maszyny wirtualne typu spot platformy Azure są przydatne w przypadku obciążeń uruchamianych z przerwami lub gdy potrzebujesz większych maszyn wirtualnych w znacznie obniżonym koszcie. Pamiętaj, że nie możesz kontrolować czasu usuwania maszyny wirtualnej.