Azure Service Operator
Provision Your Resources in a Cloud-Native Way
Azure Rosenheim Meetup 2021
Nico Meisenzahl
• Senior Cloud & DevOps Consultant at white duck
• Microsoft MVP, GitLab Hero & Docker Community
Leader
• Container, Kubernetes, Cloud-Native & DevOps
© white duck GmbH 2021
Phone: +49 8031 230159 0
Email: nico.meisenzahl@whiteduck.de
Twitter: @nmeisenzahl
LinkedIn: https://www.linkedin.com/in/nicomeisenzahl
Blog: https://meisenzahl.org
Agenda
• what is Azure Service Operator?
• bundle your app with its infrastructure
• manage your infrastructure with GitOps
© white duck GmbH 2021
Azure Service Operator (ASO)
• “…helps you provision Azure resources and connect your
applications to them from within Kubernetes.”
• Why?
• Bundle your app with its infrastructure
• GitOps
• …
© white duck GmbH 2021
Azure Service Operator (ASO)
• open-source project by Microsoft Azure
• still pretty new
• V1 but not production-ready yet
• 280 stars, 53 Contributors
• 3200 commit, first one in July 2019
• first use case was a self-service portal for an enterprise
customer
• monthly community call
© white duck GmbH 2021
ASO – how it works
• Custom Resource Definitions (CRDs) for each of the
Azure services
• e.g. ResourceGroup, RedisCache, CosmosDB, …
• A Kubernetes controller that watches for changes of the
CRDs and then acting on them
• creates, update, delete the Azure resources
© white duck GmbH 2021
ASO - technical details
• can be installed via Helm Chart on any Kubernetes
Cluster
• requires
• Cert-Manager
• Service Principal or Managed Identity (requires AKS)
• Azure AD Pod Identity (part of ASO, requires AKS)
• Controller is based on Kubebuilder
© white duck GmbH 2021
ASO – GitHub project
© white duck GmbH 2021
Demo: Create a first Azure resource
© white duck GmbH 2021
Demo: Bundle your app with its infrastructure
• combine app and infrastructure in one deployment
• inject secrets & connections strings via auto-generated
secrets
© white duck GmbH 2021
Manage your infrastructure with GitOps
• GitOps?
• Git as the single source of truth
• Push vs pull pipeline
• tools like Argo CD & Flux CD
can help
© white duck GmbH 2021
More on ASO
• detailed blog post on ASO
• https://medium.com/01001101/azure-service-operator-manage-
your-azure-resources-with-kubernetes-69f49d9dbbc5
• Cloud Native Club - ASO episode
• https://www.youtube.com/watch?v=d02hiMHLmsg
© white duck GmbH 2021
Questions?
Slides: https://www.slideshare.net/nmeisenzahl
Demo: https://github.com/nmeisenzahl/aso-fluxcd-sample
Nico Meisenzahl (Senior Cloud & DevOps Consultant)
Phone: +49 8031 230159 0
Email: nico.meisenzahl@whiteduck.de
Twitter: @nmeisenzahl
LinkedIn: https://www.linkedin.com/in/nicomeisenzahl
Blog: https://meisenzahl.org
© white duck GmbH 2021

Azure Rosenheim Meetup: Azure Service Operator

  • 1.
    Azure Service Operator ProvisionYour Resources in a Cloud-Native Way Azure Rosenheim Meetup 2021
  • 2.
    Nico Meisenzahl • SeniorCloud & DevOps Consultant at white duck • Microsoft MVP, GitLab Hero & Docker Community Leader • Container, Kubernetes, Cloud-Native & DevOps © white duck GmbH 2021 Phone: +49 8031 230159 0 Email: nico.meisenzahl@whiteduck.de Twitter: @nmeisenzahl LinkedIn: https://www.linkedin.com/in/nicomeisenzahl Blog: https://meisenzahl.org
  • 3.
    Agenda • what isAzure Service Operator? • bundle your app with its infrastructure • manage your infrastructure with GitOps © white duck GmbH 2021
  • 4.
    Azure Service Operator(ASO) • “…helps you provision Azure resources and connect your applications to them from within Kubernetes.” • Why? • Bundle your app with its infrastructure • GitOps • … © white duck GmbH 2021
  • 5.
    Azure Service Operator(ASO) • open-source project by Microsoft Azure • still pretty new • V1 but not production-ready yet • 280 stars, 53 Contributors • 3200 commit, first one in July 2019 • first use case was a self-service portal for an enterprise customer • monthly community call © white duck GmbH 2021
  • 6.
    ASO – howit works • Custom Resource Definitions (CRDs) for each of the Azure services • e.g. ResourceGroup, RedisCache, CosmosDB, … • A Kubernetes controller that watches for changes of the CRDs and then acting on them • creates, update, delete the Azure resources © white duck GmbH 2021
  • 7.
    ASO - technicaldetails • can be installed via Helm Chart on any Kubernetes Cluster • requires • Cert-Manager • Service Principal or Managed Identity (requires AKS) • Azure AD Pod Identity (part of ASO, requires AKS) • Controller is based on Kubebuilder © white duck GmbH 2021
  • 8.
    ASO – GitHubproject © white duck GmbH 2021
  • 9.
    Demo: Create afirst Azure resource © white duck GmbH 2021
  • 10.
    Demo: Bundle yourapp with its infrastructure • combine app and infrastructure in one deployment • inject secrets & connections strings via auto-generated secrets © white duck GmbH 2021
  • 11.
    Manage your infrastructurewith GitOps • GitOps? • Git as the single source of truth • Push vs pull pipeline • tools like Argo CD & Flux CD can help © white duck GmbH 2021
  • 12.
    More on ASO •detailed blog post on ASO • https://medium.com/01001101/azure-service-operator-manage- your-azure-resources-with-kubernetes-69f49d9dbbc5 • Cloud Native Club - ASO episode • https://www.youtube.com/watch?v=d02hiMHLmsg © white duck GmbH 2021
  • 13.
    Questions? Slides: https://www.slideshare.net/nmeisenzahl Demo: https://github.com/nmeisenzahl/aso-fluxcd-sample NicoMeisenzahl (Senior Cloud & DevOps Consultant) Phone: +49 8031 230159 0 Email: nico.meisenzahl@whiteduck.de Twitter: @nmeisenzahl LinkedIn: https://www.linkedin.com/in/nicomeisenzahl Blog: https://meisenzahl.org © white duck GmbH 2021