Skip to content

julie-ng/cloudkube-example-sandbox

Repository files navigation

cloudkube-example-sandbox

Use Case

A central cloud operations team deploys a sandbox for a developer team.

Example Sandbox

Note: Managed Identities are illustrated for example scenario considerations described below.

Resources deployed

Infrastructure

The Terraform scripts in this repository deploy:

Resource Description
Azure Resource Group Sandbox logical and security boundary
Azure Key Vault Can be pre-populated with credentials for team
Azure Container Registry Team stores their Docker images here

Considerations for DevOps at Organizations

This repo does not do much because it's demo. In real life however, the most common use case is to bootstrap a sandbox that is pre-configured to connect with shared resources, especially networking (think hub and spoke architectures).

Here are some other considerations to think about.

  • What permissions at which scope do teams receive?Why?
  • Why should every team get their own Azure Container Registry?

Example: Managed Identities

As an exercise, imagine we also bootstrap the following:

Managed Identity Role Description
ci-mi AcrPush CI/CD tools need to push images
cluster-mi AcrPull Tools, e.g. Kubernetes cluster needs to be able to pull images
team-mi Contributor Team needs to manage this resource

For additional details see the following documentation:

Bonus Question
Why does team-mi have a solid and blue colored border? How is it different from the other 2 managed identities illustrated above?

Disclaimer

This is an example for learning DevOps in real life. It is neither a reference implementation nor reference architecture.