However, just moving existing workloads to a public cloud service, like Google Cloud Platform, isn’t enough. Successful cloud adoption requires many attributes — and automation is one of the most important.
Here’s a closer look at options and best practices for Google automation tools.
Google automation tools evolve
Google continues to add cloud services and enhancements that target users in large enterprises. While many of these additions have recently been related to big data and other emerging technologies, Google has also evolved its set of cloud management and automation tools. Some of these new or evolving features to streamline cloud operations include the following:
- Managed instance group: A managed instance group allows admins to consolidate control over groups of workloads. Admins can use instance templates to clone instances and apply updates or patches to the entire group. They can also configure managed instance groups to automatically restart VMs that crash or fail a health check.
- Image management resources: Google has published best practices to create image families from a base image, as well as to create an automated image build pipeline using popular third-party tools like Git, for image repository; Jenkins, for automation scripts and execution; and Packer, for custom image creation. The incorporation of these features and processes helps admins create more repeatable, reliable image deployments.
- Google Cloud Resource Manager: Cloud Resource Manager is a central console that uses a hierarchical structure to organize all Google Cloud Platform (GCP) resources. It links those resources to access controls defined in GCP’s identity management service. In addition, to prevent orphaned resources, Cloud Resource Manager ties GCP project ownership to the organization, not an individual.
- Google Container Engine (GKE): GKE might not immediately come to mind when thinking of Google automation tools, but the use of containers alongside a management service like GKE can automate image deployment, scaling, updates, as well as image discovery. Google recently released Container Builder, a service that further automates the image deployment process through executable configuration scripts.
List of Google automation tools includes Infrastructure as Code
Infrastructure as Code gives admins the ability to programmatically configure, deploy and control a virtual infrastructure. Amazon Web Services (AWS) popularized the concept via AWS CloudFormation, and Google offers a similar service called Google Cloud Deployment Manager.
Like other infrastructure automation tools, Google Cloud Deployment Manager uses resource description files, written in a declarative language, like YAML, that describe the type and properties of resources used in a particular GCP deployment. IT teams can use these configuration templates to describe an application or workload to be instantiated by Deployment Manager.
Admins can describe simple deployments with the gcloud command-line tool or the REST API, but should create complex configurations with templates created in Jinja2 or Python.
IT teams can string together multiple templates to deploy arbitrarily complex systems, but the easiest option is to use predefined Cloud Launcher templates. These templates cover dozens of popular applications and platforms, including LAMP stack, WordPress, NGINX, Redis, Cassandra, Jenkins and SAP HANA Express. Deployment templates include metadata, such as target zone, instance size, number of VMs or deployment state, and they also retrieve variables like IP address assignments or subnet name.
Google Cloud Deployment Manager allows admins to more easily test new resource stacks and perform updates to existing infrastructures. For example, IT teams can preview deployments and test configurations without actually committing them to resources. If everything looks good, admins can commit the configuration for deployment or cancel the preview to make changes.
Consider Google App Engine for new, cloud-native web and mobile apps or internet of things back ends, rather than low-level cloud infrastructure services for compute and storage. Google App Engine platform as a service automatically handles many administrative tasks, and doesn’t require users to provision or maintain any servers.
For those migrating legacy applications to GCP, consider the new VM migration service Google introduced in partnership with CloudEndure. The free, self-service tool imports VMs from on-premises or from another cloud with a replication agent that copies images into Compute Engine, and it supports Windows Server 2008, 2012 and 2016, along with 7 popular Linux distributions.