AKS를 사용한 마이크로서비스

Container Registry
Azure DevOps
Kubernetes Service
GitHub

솔루션 아이디어

잠재적인 사용 사례, 대체 서비스, 구현 고려 사항 또는 가격 책정 지침과 같은 추가 정보를 사용하여 이 문서를 확장하려는 경우 GitHub 피드백을통해 알려주세요!

AKS를 사용하여 마이크로 서비스 기반 아키텍처의 배포 및 관리를 간소화합니다. AKS는 수평적 크기 조정, 자동 복구, 부하 분산 및 비밀 관리를 간소화합니다.

Architecture

아키텍처 다이어그램 이 아키텍처의 SVG를 다운로드합니다.

데이터 흐름

  1. 개발자는 Visual Studio 같은 IDE를 사용하여 변경 내용을 GitHub 커밋합니다.
  2. GitHub Azure DevOps 새 빌드를 트리거합니다.
  3. Azure DevOps 마이크로서비스를 컨테이너로 패키지하고 Azure Container Registry 푸시합니다.
  4. 컨테이너는 AKS 클러스터에 배포됩니다.
  5. 사용자는 앱 및 웹 사이트를 통해 서비스에 액세스합니다.
  6. Azure Active Directory 리소스에 대한 액세스를 보호하는 데 사용됩니다.
  7. 마이크로 서비스는 데이터베이스를 사용하여 정보를 저장하고 검색합니다.
  8. 관리자는 별도의 관리 포털을 통해 액세스합니다.

구성 요소

  • Azure DevOps 마이크로서비스를 컨테이너로 패키지합니다.
  • Azure Kubernetes Service 컨테이너화된 애플리케이션의 배포, 크기 조정 및 관리를 위해 완전히 관리되는 Kubernetes 클러스터를 제공합니다.
  • Azure Container Registry Azure에서 관리되는 프라이빗 Docker 레지스트리 서비스입니다. Container Registry를 사용하여 클러스터에 배포되는 프라이빗 Docker 이미지를 저장합니다.
  • GitHub Enterprise 개발자가 오픈 소스 프로젝트와 내부 소스 프로젝트에서 공동 작업하는 데 사용할 수 있는 코드 호스팅 플랫폼을 제공합니다.
  • Azure Pipelines Pipelines 자동화된 빌드, 테스트 및 배포를 실행하는 데 사용되는 Azure DevOps Services 일부입니다. 코드 리포지토리에서 코드가 변경될 때마다 Azure DevOps 파이프라인은 컨테이너 이미지를 지속적으로 빌드하고 Azure Container Registry 푸시한 다음 매니페스트를 Azure Kubernetes Service 클러스터에 배포합니다.
  • Azure Active Directory AKS가 Azure Active Directory 통합되면 Kubernetes RBAC에서 Azure AD 사용자, 그룹 또는 서비스 주체를 주체로 사용하여 AKS 리소스를 안전하게 관리할 수 있습니다.
  • Azure Database for MySQL 상태 저장 데이터를 저장하는 Azure의 완전 관리형 MySQL Database 서비스입니다.
  • Azure SQL Database 클라우드용으로 빌드된 완전 관리형 지능형 관계형 데이터베이스 서비스입니다. SQL Database 사용하면 최신 클라우드 애플리케이션을 위한 고가용성 고성능 데이터 스토리지 계층을 만들 수 있습니다.
  • Azure Cosmos DB는 확장 가능한 고성능 애플리케이션을 빌드하고 현대화하기 위한 완전 관리형 NoSQL 데이터베이스 서비스입니다.

다음 단계

Kubernetes에서 리프레셔가 필요한 경우 AKS(Azure Kubernetes Service)의Kubernetes에 다중 컨테이너 애플리케이션을 배포하기 위해 Azure Kubernetes Service 워크샵을 완료합니다.