Omówienie usług Azure Cloud Services (wersja klasyczna)

Ważne

Usługi Cloud Services (wersja klasyczna) są teraz przestarzałe dla nowych klientów i zostaną wycofane 31 sierpnia 2024 r. dla wszystkich klientów. Nowe wdrożenia powinny używać nowego modelu wdrażania opartego na usłudze Azure Resource Manager w usługach Azure Cloud Services (wsparcie dodatkowe).

Azure Cloud Services to przykład platformy jako usługi (PaaS). Podobnie jak aplikacja systemu Azure Service, ta technologia jest przeznaczona do obsługi aplikacji, które są skalowalne, niezawodne i niedrogie do działania. W ten sam sposób, w jaki usługa App Service jest hostowana na maszynach wirtualnych, tak samo jak w usługach Azure Cloud Services. Masz jednak większą kontrolę nad maszynami wirtualnymi. Możesz zainstalować własne oprogramowanie na maszynach wirtualnych korzystających z usług Azure Cloud Services i uzyskiwać do nich dostęp zdalny.

Azure Cloud Services diagram

Większa kontrola oznacza również mniejszą łatwość użycia. Jeśli nie potrzebujesz dodatkowych opcji kontroli, zazwyczaj jest to szybsze i łatwiejsze, aby aplikacja internetowa była uruchomiona w funkcji Web Apps usługi App Service w porównaniu z usługami Azure Cloud Services.

Istnieją dwa typy ról usług Azure Cloud Services. Jedyna różnica między nimi polega na tym, jak twoja rola jest hostowana na maszynach wirtualnych:

  • Rola sieci Web: automatycznie wdraża i hostuje aplikację za pośrednictwem usług IIS.

  • Rola procesu roboczego: nie używa usług IIS i uruchamia aplikację autonomiczną.

Na przykład prosta aplikacja może używać tylko jednej roli internetowej obsługującej witrynę internetową. Bardziej złożona aplikacja może używać roli internetowej do obsługi żądań przychodzących od użytkowników, a następnie przekazywania tych żądań do roli procesu roboczego do przetwarzania. (Ta komunikacja może być używana Azure Service Bus lub Azure Queue Storage).

Jak sugeruje poprzedni rysunek, wszystkie maszyny wirtualne w jednej aplikacji działają w tej samej usłudze w chmurze. Użytkownicy uzyskują dostęp do aplikacji za pośrednictwem jednego publicznego adresu IP, a żądania są automatycznie ładowane na maszynach wirtualnych aplikacji. Platforma skaluje i wdraża maszyny wirtualne w aplikacji usług Azure Cloud Services w sposób, który pozwala uniknąć pojedynczego punktu awarii sprzętowej.

Mimo że aplikacje działają na maszynach wirtualnych, ważne jest, aby zrozumieć, że usługi Azure Cloud Services udostępniają usługę PaaS, a nie infrastrukturę jako usługę (IaaS). Oto jeden ze sposobów, aby o tym myśleć. Dzięki usłudze IaaS, takim jak usługa Azure Virtual Machines, należy najpierw utworzyć i skonfigurować środowisko, w którym działa aplikacja. Następnie wdrożysz aplikację w tym środowisku. Odpowiadasz za zarządzanie dużą częścią tego świata, wykonując takie czynności, jak wdrażanie nowych poprawek wersji systemu operacyjnego na każdej maszynie wirtualnej. Natomiast w usłudze PaaS jest tak, jakby środowisko już istnieje. Wystarczy wdrożyć aplikację. Zarządzanie platformą, na której działa, w tym wdrażanie nowych wersji systemu operacyjnego, jest obsługiwane.

Skalowanie i zarządzanie

Usługa Azure Cloud Services nie tworzy maszyn wirtualnych. Zamiast tego należy podać plik konfiguracji, który informuje platformę Azure o liczbie wystąpień ról, takich jak "trzy wystąpienia roli sieci Web" i "dwa wystąpienia roli procesu roboczego". Następnie platforma tworzy je dla Ciebie. Nadal wybierasz rozmiar tych maszyn wirtualnych, które powinny być obsługiwane, ale nie należy ich jawnie tworzyć samodzielnie. Jeśli aplikacja musi obsługiwać większe obciążenie, możesz poprosić o więcej maszyn wirtualnych, a platforma Azure utworzy te wystąpienia. Jeśli obciążenie spadnie, możesz zamknąć te wystąpienia i przestać płacić za nie.

Aplikacja azure Cloud Services jest zwykle udostępniana użytkownikom za pośrednictwem dwuetapowego procesu. Deweloper najpierw przekazuje aplikację do obszaru przejściowego platformy. Gdy deweloper jest gotowy do wygaśnięcia aplikacji, użyje witryny Azure Portal do zamiany przejściowej na środowisko produkcyjne. Ten przełącznik między przejściowym i produkcyjnym można wykonać bez przestojów, co umożliwia uaktualnienie uruchomionej aplikacji do nowej wersji bez zakłócania jej użytkowników.

Monitorowanie

Usługi Azure Cloud Services zapewniają również monitorowanie. Podobnie jak maszyny wirtualne, wykrywa nieudany serwer fizyczny i uruchamia ponownie maszyny wirtualne, które były uruchomione na tym serwerze na nowej maszynie. Jednak usługi Azure Cloud Services wykrywają również nieudane maszyny wirtualne i aplikacje, a nie tylko awarie sprzętowe. W przeciwieństwie do maszyn wirtualnych, ma agenta w każdej roli sieci Web i procesu roboczego, dzięki czemu może uruchamiać nowe maszyny wirtualne i wystąpienia aplikacji w przypadku wystąpienia awarii.

Charakter PaaS usług Azure Cloud Services ma również inne konsekwencje. Jedną z najważniejszych kwestii jest to, że aplikacje utworzone na podstawie tej technologii powinny być zapisywane w celu poprawnego uruchamiania w przypadku awarii dowolnego wystąpienia roli sieci Web lub procesu roboczego. Aby to osiągnąć, aplikacja usług Azure Cloud Services nie powinna utrzymywać stanu w systemie plików własnych maszyn wirtualnych. W przeciwieństwie do maszyn wirtualnych utworzonych za pomocą maszyn wirtualnych maszyn wirtualnych usługi Azure Cloud Services operacje zapisu nie są trwałe. Dysk danych maszyn wirtualnych nie jest podobny do dysku danych. Zamiast tego aplikacja usług Azure Cloud Services powinna jawnie zapisywać cały stan w usłudze Azure SQL Database, obiektach blob, tabelach lub innym magazynie zewnętrznym. Tworzenie aplikacji w ten sposób ułatwia skalowanie i bardziej odporne na awarie, co jest zarówno ważnymi celami usług Azure Cloud Services.

Następne kroki