For those who are familiar with Kubernetes and would like to manage Google Cloud resources the Kubernetes way, Google Cloud offers the Config Connector tool. It is very similar to managing Kubernetes resources in the YAML format. Config Connector provides a collection of Kubernetes CustomResourceDefinitions (CRDs) and controllers, which eventually reconcile your environment with your desired state:
igure 2.9 – A sample configuration file in YAML format in Config Connector
The preceding figure shows the Config Connector configuration file that is required for its initial usage.
Google Cloud Deployment Manager
Google Cloud Deployment Manager is a deployment service that allows automation and Google Cloud resource management. It uses the concept of a configuration file with YAML-based syntax that can import one or more template files used during the deployment. Templates can be written in Jinja or Python.
Figure 2.10 – A sample configuration file in YAML format in Deployment Manager
You can visit the Google Cloud GitHub repository to find more examples in Jinja and Python: https://github.com/GoogleCloudPlatform/deploymentmanager-samples
Deployment Manager can only be used to deploy Google Cloud resources.
Terraform is an Infrastructure as Code (IaC) software tool created by HashiCorp. Terraform use its own declarative language, HashiCorp Configuration Language (HCL), or JSON.
Terraform abstracts underlying resources with its own programming language and allows users to focus on deployment, rather than learning each deployment target-specific language. In simple words, if you learn how to use HCL, you no longer need to learn how to deploy specific cloud provider features and you use the necessary Terraform provider. The following is a sample code part written in HCL, which describes a Cloud SQL instance deployment:
Figure 2.11 – Terraform sample configuration code describing a Cloud SQL instance deployment
Similar to Cloud APIs, Terraform’s IaC approach allows for the use of software-deployment-like techniques with infrastructure.
Service Catalog is a product intended for cloud administrators who manage Google Cloud organizations where control distribution, internal compliance, and solution discoverability are needed.
It allows us to curate available products in Service Catalog and allows easy resource visibility and deployment at the organization, folder, and project levels. It is a go-to tool for ensuring internal compliance and governance.
The following figure shows the creation of a link-based solution:
Figure 2.12 – A sample configuration of Service Catalog
Once a solution is created, it will appear in the Solutions table.
Google Cloud offers mobile applications for both Android and iOS, which give users the ability to monitor and make changes to Google Cloud resources. You can manage resources such as projects, billing, an App Engine app, or GCE VMs.
You can use the following features:
- Incident management
- Open, assign, acknowledge, and resolve incidents
- GCE
- Start, stop, and turn SSH into instances and view logs from each instance
- App Engine
- Troubleshoot errors, roll back deployments, and change traffic splitting
- Alerts
- Get alerts on production issues
- Dashboard
- View the health of your services, view graphs, and key metrics
- Cloud Storage
- View and delete Cloud Storage data
- Error reporting
- Understand crashes of your cloud services
- Billing
- See up-to-date billing information and get billing alerts for projects
- Cloud SQL
- View the health of, start, and stop Cloud SQL instances
With all the features provided in the mobile application, you can view your most important resources from your smartphone as well.
The following figure shows multiple sections that can be viewed in the application, such as the dashboard, resources overview, billing, and monitoring:
Figure 2.13 – An overview of the mobile application
Mobile applications can be installed on Android or iOS, allowing simplified cloud management on the go.
This chapter focused on bringing Google Cloud closer to us. We learned how and when Google Cloud started its business, and we tried to understand what makes it different within the market. Later on, our focus was on choosing the right cloud solution. We learned about the different types of services and when to use them. We then listed the essential Google Cloud services necessary to ace the exam and core services within IaaS, PaaS, and SaaS solutions.
At the end of this chapter, we learned different ways to interact with Google Cloud.
In the next chapter, we will learn how to plan and manage Google Cloud resources.