Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Infrastructure as Code using Deployment Manager and Kubernetes

Infrastructure as Code using Deployment Manager and Kubernetes

How to do infrastructure as code using GCP Deployment Manager and automate the creation of Kubernetes + Kubernetes resources. Also, what "cloud-native configuration management" could be.

David Schweikert

May 22, 2018

More Decks by David Schweikert

Other Decks in Technology


  1. Infrastructure as Code using Deployment Manager and Kubernetes Cloud Native

    Computing Switzerland Meetup, 22 May 2018 David Schweikert @dschweikert AdNovum Informatik AG
  2. README files - Click “Kubernetes Engine” - Click “Create new

    cluster” - Fill in: - Name: my-new-cluster - Description: … - … - Click ”Cloud SQL” - Click “Create Database instance” - … (many steps…) +
  3. Also… • It keeps state on what it created •

    Only does the needed changes • And knows when to delete things (like Terraform and Helm, for example… and unlike Ansible) !
  4. The best feature of Deployment Manager: You can teach it

    how to manage other resource types that it doesn’t know about, even external resources!
  5. If lock-in is a problem, HashiCorp‘s Terraform is probably the

    better choice (but I wish it was more like Deployment Manager …)
  6. Also, if you do chose Terraform to create your GCP

    resources, you probably need something else for the Kubernetes resources (like Helm, Kapitan, …) Having a holistic solution would be definitely better though
  7. § You can’t use it to set passwords yet (an

    important feature for that is still in the works)
  8. To summarize: I recommend it… • If you are totally

    committed to GCP • or, you just need something quick (but still reproducible) Really interesting to me… § A configuration management system that interacts with user-defined RESTful APIs to manage resources § Maybe it’s time for a new open-source “cloud-native configuration management” tool?
  9. Questions? (see also my blog article for all the details

    on managing Kubernetes resources with Deployment Manager: https://tinyurl.com/dm-kubernetes)