YouTube video summary

Architecting for High Availability in the Cloud with Cellular Architecture

Technology10 Jun 20242 min summaryFrom InfoQ
Architecting for High Availability in the Cloud with Cellular Architecture
InfoQ
YouTube

Cellular Architecture in the Cloud

  • Cellular architecture involves breaking down an application into isolated deployments called cells, which can be regional or zonal.
  • Automating cellular infrastructure requires solving key problems such as isolation, provisioning new cells, deploying changes, managing permissions, and monitoring.
  • Standardization is crucial for managing multiple deployments of application code, but it should not lead to homogenization.
  • Different microservices may have different technology stack requirements, and it's acceptable to have multiple flavors of tech stacks within an application.

Automating Cellular Architecture

  • To deploy changes to microservices in a cellular architecture, a common process involves committing code changes, building binary artifacts, releasing them, and deploying to individual cells.
  • A staging cell is used for pre-production deployment, and a "bake" step is added to monitor metrics and ensure deployment health before proceeding to production cells.
  • Standardized build targets for microservices ensure a consistent deployment process across different services.
  • A cell registry is used to maintain a list of cells and their metadata, which is published to a central location and accessed through a library.
  • A cell bootstrap script is used to provision and configure new cells, including setting up networking, installing dependencies, and deploying the application code.

Managing Multiple Cells

  • Isolation is achieved by creating separate AWS accounts for each cell, which provides built-in isolation and cost visibility.
  • Routing is managed through unique DNS names for each cell, ensuring traffic is directed to the appropriate cell.
  • Spinning up new cells is made easy with the cell bootstrap script, which leverages standardized build targets and account registry data.

Infrastructure as Code (IaC)

  • IaC has seen a breakthrough with the introduction of programming languages to define infrastructure, such as AWS CDK, CDK8s, and CDK TF.
  • These tools enable the creation of reusable libraries of infrastructure code, making it easier to manage and deploy complex systems.
  • AWS Code Pipeline can be used to automate the deployment of infrastructure changes, with the help of a "pipeline of pipelines" repository that generates deployment pipelines for different components.

Benefits of Cellular Architecture

  • Cellular architecture can greatly benefit customers in terms of availability and meeting SLAs.
  • It also enhances business agility and engineering velocity.
Made with Recall · in 3 seconds

Get a summary like this for anything you read, watch or save.

Recall summarizes any link you paste, then keeps it in your personal library so you can search, chat with it, and never lose a key idea again.

YouTube videosArticlesPodcastsPDFsAnything else
Save this summary

Then save anything you watch or read next.

Bookmark this summary, then save any video, article or PDF you read next.

Save to your library

Ready to get started?

Save, summarize & chat with your content.

GET STARTED

IT'S FREE

No credit card required · 30 Day Refund on Premium · 24 Hour Support

Recall web app on laptop