What is GCP ?
GCP stands for Google Cloud Platform which is a suite of public cloud computing services offered by Google. It offers 4 main kinds of services: compute, storage, big data, machine learning that run on Google hardware.
what is cloud computing ?
- On-demand self-service: use interface to get processing, no human intervention needed
- Broad network access: access from anywhere
- Resource pooling: provider shares resources to customers
- Rapid elasticity: get more resources quickly as needed
- Measured service: pay only for what you consume
compute evolution
- Physical/colo: user-configured, managed and maintained
- Virtualized: user-configured; provider-managed and maintained
- Serverless: container based architecture, fully automated
gcp computing architectures
- IaaS: Infrastructure as a Service
- provides raw compute, storage and network organized in ways that are like from data centers
- PaaS: Platform as a Service
- provides a platform allowing customers to develop, run and manage applications without maintaining infrastructure
- SaaS: Software as a Service
- software is licensed on a subscription basis and is centrally hosted
regions and zones
GCP is organized into regions and zones. Zone is department area for GCP resources. For example, the compute engine runs in a zone specified.
Locations within regions usually have network latencies of under 5 milliseconds
As of building a fault tolerant application, you can spread their resources across multiple regions
open apis
GCP services are compatible with open sources products. for example:
- Cloud Bigtable <==> Apache HBase
- Cloud Dataproc <==> Hadoop
gcp services
GCP offers services as compute, storage, big data and machine learning
budgets and billing
GCP provides 4 tools to help:
budgets and alert: define budget per billing or per project, you can create an alert at 50 percent, 90 percent and 100 percent
billing: you have billing account on GCP project
export: store detailed billing information
reports and quotas:
- report is a visual tool to monitor your expenditure.
- quotas are designed to prevent over-consumption of resources
- rate quotas
reset after a specific time. eg: Kubernetes service set a quota of 1000 calls per 100 seconds - allocation quotas
govern the number of resources you can have in your projects. eg: no more than 5 VPN per project
- rate quotas