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 mogli rozwinąć ten artykuł, korzystając z dodatkowych informacji, takich jak potencjalne przypadki użycia, alternatywne usługi, uwagi dotyczące implementacji lub wskazówki dotyczące cen, poinformuj nas o GitHub opiniach!

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, które są wdrażane w klastrze.
  • GitHub Enterprise udostępnia platformę hostingu kodu, którą 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 służącą do uruchamiania zautomatyzowanych 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 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 kontroli dostępu opartej na rolach platformy Kubernetes.
  • 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ę magazynowania danych o wysokiej dostępności i wysokiej wydajności dla nowoczesnych aplikacji w chmurze.
  • Azure Cosmos DB to w pełni zarządzana usługa bazy danych NoSQL służąca do tworzenia i modernizacji skalowalnych aplikacji o wysokiej wydajności.

Następne kroki