hamburger icon close icon
Google Cloud Migration

Google Cloud Architecture and Building Your Own Solution Architecture

What Is Google Cloud Architecture?

Google Cloud Platform (GCP) is a public cloud computing platform offered by Google. Google provides a Cloud Architecture Framework with best practices and guidelines to help you build your solutions on Google cloud. We’ll introduce the basic building blocks of a Google Cloud architecture, and briefly review the framework and its components.

This will help you plan a Google Cloud migration and expand your existing usage of Google Cloud.

In this article:

Google Cloud Architecture Building Blocks

To understand the Google Cloud Architecture Framework, you should first be familiar with the basic building blocks you can use to build solutions on Google Cloud.

Google Compute Engine (Virtual Machines)

Google Cloud provides managed virtual machines (VMs). Even though there are many other options for running compute workloads, including containers, serverless, and App Engine, VMs are still a popular option.

Google Cloud provides four machine families:

  • General-purpose
  • Compute-optimized
  • Memory-optimized
  • Accelerator optimized

In addition, Google Cloud is the only public cloud provider that allows users to create their own custom VMs with the hardware of their choice.

Google Compute Engine (GCE) supports both Linux and Windows virtual machines. You can run VMs based on Google-provided machine images or pull images from your existing infrastructure. A common approach is to image a specific operating system, install all required software dependencies for an application, and create a new image from that VM. This provides an image that can be deployed quickly in Google Cloud and can immediately provide value.

Another strategy is to install a common set of tools, such as a company-wide compliance package, into an image and then share it with your development team to create a "golden" image for your application.

Storage

Google Cloud provides three main services offering different types of storage:

  • Persistent disks- provides high-performance block storage, can be attached to VMs as collocated persistent storage.
  • File storage- officially known as Google Filestore, providing fully managed file storage with 99.99% regional availability SLA, backups, snapshots, and ability to scale to high throughput and IOPS.
  • Object storage- officially known as Google Cloud Storage, providing highly durable storage buckets, similar to Amazon S3 Storage.

Learn more in our guide to Storage Options in Google Cloud.

Database

Google Cloud offers several managed database services both relational and non-relational, as a platform as a service (PaaS) offering built on its storage services:

  • Google Cloud SQL- relational database service compatible with SQL Server, MySQL, and PostgreSQL. Provides automatic backup, replication, and disaster recovery.
  • Cloud Spanner- relational database that supports SQL on the one hand, but enables the same level of scalability as non-relational databases.
  • Google Cloud BigQuery- serverless data warehouse, which supports large-scale data analysis and streaming data querying via SQL. BigQuery provides a built-in data transfer service for migrating large data volumes.
  • Cloud Bigtable- NoSQL database service designed for large-scale operational data and analytics workloads. Provides high availability, zero downtime for configuration changes, and request latency under 10 milliseconds.
  • Cloud Firestore- NoSQL database service designed for serverless applications. Can be integrated seamlessly with web, mobile, and IoT applications, with real-time synchronization and built-in security.
  • Memorystore- managed in-memory datastore designed for security, high availability, and scalability.

Load Balancing and Scaling

Google Cloud provides server-side load balancing, allowing incoming traffic to be distributed across multiple virtual machine (VM) instances. It uses forwarding rule resources to match and forward certain types of traffic to the load balancer - for example, it can forward traffic according to protocol, port, IP address or range.

Google Cloud Load Balancing is a managed service, in which components are redundant and highly available. If a load balancing component fails, it is automatically restarted or replaced.

Google Compute Engine also provides autoscaling, which automatically adds or removes VM instances from a managed instance group (MIG) as its load increases or decreases. MIG can scale automatically based on CPU utilization, cloud monitoring metrics, schedule or load balancing service capacity.

Serverless

Serverless computing dynamically runs workloads when they are required, with no need to manage the underlying server resources. Google Cloud provides three key serverless options that allow you to run serverless workloads:

  • Google Cloud Functions- lets you provide code in multiple programming languages and allow Google to run it when triggered by an event.
  • Google App Engine- a serverless platform that can run web applications and mobile backends in any programming language.
  • Google Cloud Run- deploys containerized applications on a fully managed serverless platform (similar to Amazon Fargate).

Containers

Google offers several technologies that you can use to run containers in the Google Cloud environment:

  • Google Kubernetes Engine (GKE) - the world’s first managed Kubernetes service, which lets you run Kubernetes clusters on Google Cloud infrastructure, with control over individual Kubernetes nodes.
  • GKE Autopilot - a new operating mode for GKE that lets you optimize clusters for production environments, improve availability, and dynamically adjust computing power available to Kubernetes clusters.
  • Google Anthos - a cloud-agnostic hybrid container management platform. This service allows you to replace virtual machines (VMs) with container clusters, creating a unified environment between the public cloud and an on-premises data center.

Learn how the GCP architecture compares to other clouds in our guide: AWS vs. Azure vs. Google Cloud

Google Cloud Architecture Framework: How to Build Your Own Solutions in GCP

The Google Cloud Architecture Framework offers recommendations and best practices to guide developers, cloud architects, and administrators when designing and operating cloud environments. It helps teams ensure the cloud topology is secure, resilient, cost-effective, and highly performant.

Google’s multi-functional expert team validates the Architecture Framework’s best practices and design recommendations. The team adjusts the Architecture Framework according to Google Cloud’s evolving capabilities, user feedback, community experience, and industry standards.

The framework’s design guidelines apply to various cloud applications, including migrated on-premises workloads, multi-cloud deployments, and hybrid cloud environments.

The framework includes the following categories:

  • System design—helps define the cloud system’s architecture, modules, components, data, and interfaces to meet cloud computing requirements. The framework provides information about Google Cloud features and products supporting system design.
  • Improved operations—helps efficiently deploy, manage, operate, and monitor workloads in Google Cloud.
  • Security and compliance—helps maximize data and workload security in the cloud, including privacy-driven design and compliance with regulations and standards.
  • Reliability and resiliency—helps build resilient, highly available cloud workloads.
  • Cost optimization—helps maximize an organization’s business value in the cloud.
  • Optimized performance—helps design and fine-tune cloud resources to optimize performance.

See the full framework documentation provided by Google.

Google Cloud Storage Optimization with Cloud Volumes ONTAP

NetApp Cloud Volumes ONTAP, the leading enterprise-grade storage management solution, delivers secure, proven storage management services on AWS, Azure and Google Cloud. Cloud Volumes ONTAP capacity can scale into the petabytes, and it supports various use cases such as file services, databases, DevOps or any other enterprise workload, with a strong set of features including high availability, data protection, storage efficiencies, Kubernetes integration, and more.

In particular, Cloud Volumes ONTAP assists with lift and shift cloud migration. NetApp’s data replication tools SnapMirror® and Cloud Sync service will get your data to the cloud.

Learn more about how Cloud Volumes ONTAP helps with lift and shift cloud migration.

In particular, Cloud Volumes ONTAP provides Cloud Manager, a UI and APIs for management, automation and orchestration, supporting hybrid & multi-cloud architectures.

Yifat Perry, Product Marketing Lead

Product Marketing Lead