Microsoft wprowadza właśnie nową i bardzo ciekawą usługę przeznaczoną do hostowania aplikacji skonteneryzowanych - Azure Container Apps. Jest to usługa bezserwerowa i niewymagająca wdrażania skomplikowanej infrastruktury.
Udostępnij!
Azure Container Apps
Typowe zastosowania usługi Azure Container Apps obejmują:
- wdrażanie punktów końcowych interfejsu API
- hostowanie aplikacji przetwarzania w tle
- obsługę przetwarzania sterowanego zdarzeniami
- uruchamianie mikrousług
Aplikacje oparte na usłudze Azure Container Apps można dynamicznie skalować w oparciu o:
- ruch HTTP
- przetwarzanie sterowane zdarzeniami
- obciążenie procesora CPU lub pamięci
- dowolny skaler obsługiwany przez KEDA (Kubernetes Event-driven Autoscaling)
Azure Container Apps umożliwia wykonywanie kodu aplikacji spakowanego w dowolnym kontenerze i jest niezależna od środowiska uruchomieniowego lub modelu programowania. Pozwala korzystać z zalet uruchamiania kontenerów, jednocześnie uwalniając od problemów związanych z zarządzaniem infrastrukturą chmury i złożonymi orkiestratorami kontenerów.
Co można wykonać w Azure Container Apps?
- uruchamiać wiele wersji kontenera i zarządzać cyklem życia aplikacji
- automatycznie skalować aplikacje na podstawie dowolnego wyzwalacza skalowania obsługiwanego przez funkcję KEDA
- włączać ruch przychodzący HTTPS bez konieczności zarządzania inną infrastrukturą platformy Azure
- dzielić ruch między wiele wersji aplikacji w przypadku wdrożeń niebieski/zielony i scenariuszy testowania A/B
- używać wewnętrznych danych przychodzących i odnajdywania usług w celu zapewnienia bezpiecznych wewnętrznych punktów końcowych z wbudowanym odnajdywaniem usług opartym na systemie DNS
- tworzyć mikrousługi za pomocą języka Dapr i uzyskiwać dostęp do bogatego zestawu interfejsów API
- uruchamiać kontenery z dowolnego rejestru, publicznego lub prywatnego, w tym Docker Hub i Azure Container Registry (ACR)
- używać rozszerzenia interfejsu wiersza polecenia platformy Azure lub szablonów usługi ARM do zarządzania aplikacjami
- bezpośrednio w aplikacji bezpiecznie zarządzać wpisami tajnymi
- wyświetlać dzienniki aplikacji przy użyciu usługi Azure Log Analytics
Wdrożenie
Podobnie jak większość usług, Azure Container Apps można wdrażać z portalu lub wiersza poleceń.
Kroki pierwszego wdrożenia
- Tworzymy nową instancję Azure Container Apps:
- Tworzymy nowe środowisko dla skonteneryzowanych aplikacji:
- Kontenery możemy dostarczać z różnych źródeł:
- Wynik wdrożenia:
Do czego służy Container App Environment?
Pojedyncze aplikacje kontenera są wdrażane w jednym środowisku usługi Container Apps, które działa jako bezpieczna granica wokół grup aplikacji kontenera. Usługa Container Apps w tym samym środowisku jest wdrażana w tej samej sieci wirtualnej i zapisuje dzienniki w tym samym obszarze roboczym usługi Log Analytics. Podczas tworzenia środowiska można podać istniejącą sieć wirtualną.
Przyczyny wdrażania aplikacji kontenera w tym samym środowisku obejmują sytuacje, w których potrzebne jest:
- zarządzanie powiązanymi usługami
- wdrażanie różnych aplikacji w tej samej sieci wirtualnej
- komunikacja przy użyciu języka Dapr (Distributed Application Runtime)
- współużytkowanie tej samej konfiguracji Dapr
- współużytkowanie tego samego obszaru roboczego usługi Log Analytics
Powody wdrażania aplikacji kontenerów w różnych środowiskach obejmują sytuacje, w których chcemy zapewnić, że:
- dwie aplikacje nigdy nie współdzielą tych samych zasobów obliczeniowych
- dwie aplikacje nie mogą komunikować się ze sobą za pośrednictwem usługi Dapr
Usługa Azure Container Apps jest dostępna w wersji zapoznawczej. Po wprowadzeniu wersji produkcyjnej może się stać bardzo popularna wśród firm korzystających z konteneryzacji oraz mikroserwisów.