Table of Contents
hide
Google Cloud Compute Services
Compute Engine
- is a virtual machine (VM) hosted on Google’s infrastructure.
- can run the public images for Google provided Linux and Windows Server as well as custom images created or imported from existing systems
- availability policy determines how it behaves when there is a maintenance event
- VM instance’s maintenance behavior
onHostMaintenance
, which determines whether the instance is live migratedMIGRATE
(default) or stoppedTERMINATE
- Instance’s restart behavior
automaticRestart
which determines whether the instance automatically restarts (default) if it crashes or gets stopped
- VM instance’s maintenance behavior
- Live migration helps keep the VM instances running even when a host system event, such as a software or hardware update, occurs
- Preemptible VM is an instance that can be created and run at a much lower price than normal instances, however can be stopped at any time
- Shielded VM offers verifiable integrity of the Compute Engine VM instances, to confirm the instances haven’t been compromised by boot- or kernel-level malware or rootkits.
- Instance template is a resource used to create VM instances and managed instance groups (MIGs) with identical configuration
- Instance group is a collection of virtual machine (VM) instances that can be managed as a single entity.
- Managed instance groups (MIGs)
- allows app creation with multiple identical VMs.
- workloads can be made scalable and highly available by taking advantage of automated MIG services, including: autoscaling, autohealing, regional (multiple zone) deployment, and automatic updating
- supports rolling update feature
- works with load balancing services to distribute traffic across all of the instances in the group.
- Unmanaged instance groups
- allows load balance across a fleet of VMs that you manage yourself which may not be identical
- Managed instance groups (MIGs)
- Instance template are global, while instance groups are regional.
- Machine image stores all the configuration, data, metadata and permissions from one or more disks required to create a VM instance
- Sole-tenancy provides dedicated hosting only for the project’s VM and provides added layer of hardware isolation
deletionProtection
prevents accidental VM deletion esp. for VMs running critical workloads and need to be protected- provides Sustained Discounts, Committed discounts, free tier etc in pricing
App Engine
- App Engine helps build highly scalable applications on a fully managed serverless platform
- Each Cloud project can contain only a single App Engine application
- App Engine is regional, which means the infrastructure that runs the apps is located in a specific region, and Google manages it so that it is available redundantly across all of the zones within that region
- App Engine application location or region cannot be changed once created
- App engine allows traffic management to an application version by migrating or splitting traffic.
- Traffic Splitting (Canary) – distributes a percentage of traffic to versions of the application.
- Traffic Migration – smoothly switches request routing
- Support Standard and Flexible environments
- Standard environment
- Application instances that run in a sandbox, using the runtime environment of a supported language only.
- Sandbox restricts what the application can do
- only allows the app to use a limited set of binary libraries
- app cannot write to disk
- limits the CPU and memory options available to the application
- Sandbox does not support
- SSH debugging
- Background processes
- Background threads (limited capability)
- Using Cloud VPN
- Flexible environment
- Application instances run within Docker containers on Compute Engine virtual machines (VM).
- As Flexible environment supports docker it can support custom runtime or source code written in other programming languages.
- Allows selection of any Compute Engine machine type for instances so that the application has access to more memory and CPU.
- Standard environment
min_idle_instances
indicates the number of additional instances to be kept running and ready to serve traffic for this version.
GKE
Node Pool
GKE
commands
–num-nodes scale cluster –size is deprecated