Alison's New App is now available on iOS and Android! Download Now

Module 1: Let Google Keep an Eye on Things

    Study Reminders
    Support

    Cloud Deployment Manager
    In this topic you will learn about Google Cloud deployment manager. GCP infrastructure as code tool. Cloud deployment manager is an infrastructure as code tool to manage GCP resources. Setting up an environment and gcp can entail many tasks including setting up compute, network and storage resources and then keeping track of their configurations. You can do this all by hand if you want but it’s far more efficient to use a template which is a specification of what the environment should look like. Cloud deployment manager allows you to do this you create template files to describe what you want the components of your environment to look like. This allows the process of creating these resources to be repeated over and over with very consistent results you can focus on the set of resources that comprise the application or service instead of deploying each service resource separately. One resource definition can also reference another resource creating dependencies and controlling the order of execution adding the deleting or changing resources in the deployment is also a lot easier many tools use an imperative approach which requires you to find the steps to take to create and configure resources. A declarative approach allows you to specify what the configuration should be like and let the system figure out the exact steps to take to get there. Cloud deployment manager allows you to specify all the resources needed for your application in a declarative format using YAML. YAML is a human readable data serialisation language commonly used for configuration files. Templates allow the use of building blocks to create obstructions or sets of resources that are typically deployed together. For example an instance template and instance group or even an autoscaler. You can use Python or jinja2 templates to parameterize the configuration allowing them to be used repeatedly by changing input values to define what image to deploy, the zone in which to deploy or how many virtual machines to deploy. You can also pass in variables like zone, machine size, number of machines and whether it’s a test or production or staging environment. You can pass these into those templates to get output values back, like IP addresses assigned or links to the instance. In addition to Google deployment manager which is specific to Google Cloud and cannot be used outside with other cloud providers Google has a team of engineers dedicated to ensuring that Google cloud support is also available for a popular third-party open-source tools that support infrastructure as code.