Designing, building, and operating microservices on Azure

03

Jan

Designing, building, and operating microservices on Azure

Designing, building, and operating microservices on Azure
https://azure.microsoft.com/blog/microservices-on-azure-kubernetes-guidance/

I’m excited to announce that the AzureCAT patterns and practices team has published new guidance about microservices titled Designing, building, and operating microservices on Azure.

Microservices have become a popular architectural style for building cloud applications that are resilient, highly scalable, and able to evolve quickly. To be more than just a buzzword, however, microservices require a different approach to designing and building applications.

In this set of articles, we explore how to build and run a microservices architecture on Azure, using Kubernetes as a container orchestrator. Future articles will include Service Fabric. Topics include:

  • Using Domain Driven Design (DDD) to design a microservices architecture.
  • Choosing the right Azure technologies for compute, storage, messaging, and other elements of the design.
  • Understanding microservices design patterns.
  • Designing for resiliency, scalability, and performance.
  • Building a CI/CD pipeline.

Throughout, we focus on an end-to-end scenario for a drone delivery service that lets customers schedule packages to be picked up and delivered via drone. A reference implementation for this project is available on GitHub.

The reference implementation includes a number of different Azure and open source technologies:

  • Azure Container Service (Kubernetes) to run frontend and backend services.
  • Azure Functions to run event driven services.
  • Linkerd to manage inter-service communication.
  • Prometheus to monitor system/application metrics.
  • Fluentd and Elasticsearch to monitor application logs.
  • Cosmos DB, Azure Data Lake Store, and Azure Redis Cache to store different types of data.
 
The goal of this guidance is to show the end-to-end process of designing, building, and operating microservices under a realistic scenario. We hope you will find it useful in your own projects. As always, we greatly appreciate your feedback.
 
Share