Mikrousługi z usługami AKS i Azure DevOps

Container Registry
Azure DevOps
Kubernetes Service
GitHub

Pomysł na rozwiązanie

Jeśli chcesz, abyśmy rozszerzyli ten artykuł, aby uzyskać więcej informacji, takich jak potencjalne przypadki użycia, usługi alternatywne, zagadnienia dotyczące implementacji lub wskazówki dotyczące cen, daj nam znać za pomocą GitHub opinii!

Potencjalne przypadki użycia

Użyj usługi AKS, aby uprościć wdrażanie architektury opartej na mikrousługach i zarządzanie nią. Usługa AKS usprawnia skalowanie w poziomie, samonaprawianie, równoważenie obciążenia i zarządzanie wpisami tajnymi.

Architektura

Architecture DiagramPobierz plik Visio tej architektury.

Przepływ danych

  1. Deweloper używa środowiska IDE, takiego jak Visual Studio, do zatwierdzania zmian w GitHub.
  2. GitHub wyzwala nową kompilację na Azure DevOps.
  3. Azure DevOps pakuje mikrousługi jako kontenery i wypycha je do Azure Container Registry.
  4. Kontenery są wdrażane w klastrze usługi AKS.
  5. Użytkownicy uzyskują dostęp do usług za pośrednictwem aplikacji i witryny internetowej.
  6. Azure Active Directory służy do zabezpieczania dostępu do zasobów.
  7. Mikrousługi używają baz danych do przechowywania i pobierania informacji.
  8. Administrator uzyskuje dostęp za pośrednictwem oddzielnego portalu administracyjnego.

Składniki

  • Azure DevOps pakuje mikrousługi jako kontenery.
  • Azure Kubernetes Service oferuje w pełni zarządzane klastry Kubernetes na potrzeby wdrażania, skalowania i zarządzania konteneryzowanymi aplikacjami.
  • Azure Container Registry jest zarządzaną prywatną usługą rejestru platformy Docker na platformie Azure. Usługa Container Registry służy do przechowywania prywatnych obrazów platformy Docker wdrożonych w klastrze.
  • GitHub Enterprise udostępnia platformę hostingu kodu, która deweloperzy mogą używać do współpracy zarówno w projektach typu open source, jak i wewnętrznych.
  • Azure Pipelines Pipelines jest częścią Azure DevOps Services, która służy do uruchamiania automatycznych kompilacji, testów i wdrożeń. Za każdym razem, gdy kod jest zmieniany w repozytorium kodu, potok Azure DevOps stale kompiluje obrazy kontenerów, wypychane do Azure Container Registry, a manifesty są następnie wdrażane w klastrze Azure Kubernetes Service.
  • Azure Active Directory. Gdy usługa AKS jest zintegrowana z usługą Azure Active Directory, umożliwia bezpieczne zarządzanie zasobami usługi AKS przy użyciu Azure AD użytkowników, grup lub jednostek usługi jako podmiotów w usłudze Kubernetes RBAC.
  • Azure Database for MySQL to w pełni zarządzana usługa bazy danych MySQL na platformie Azure do przechowywania danych stanowych.
  • Azure SQL Database to w pełni zarządzana i inteligentna usługa relacyjnej bazy danych utworzona dla chmury. Dzięki SQL Database można utworzyć warstwę magazynu danych o wysokiej dostępności i wysokiej wydajności dla nowoczesnych aplikacji w chmurze.
  • Usługa Azure Cosmos DB to w pełni zarządzana usługa bazy danych NoSQL służąca do kompilowania i modernizacji skalowalnych aplikacji o wysokiej wydajności.

Następne kroki