MJN All Blog Cheatsheets Elasticsearch GCP JS LinuxBash Misc Notes Other ShortcutKeys / - Search

Home / GCP / GCP Training / An Introduction and Overview


Contents

Introduction

What is Cloud Computing?

5 features of Cloud Computing

Acronyms

Regions / Zones

Billing

Discount:

Billing:

Multi-Layered Security

Storage Options

. Cloud Datastore Bigtable Cloud Storage Cloud SQL Cloud Spanner BigQuery
Type NoSQL Document NoSQL wide column Blob Store Relational SQL for OLTP Relational SQL for OLTP Relational SQL for OLTP
Transaction Yes Single-row No Yes Yes No
Complex Queries No No No Yes Yes Yes
Capacity TB+ PB+ PB+ TB PB PB+
Unit Size (max) 1MB/entity ~10MB/cell, ~100MB/row 5MB/object Determine by DB engine 10,240MiB/row 10MB/row
Best For Semi-struct’ data, app data, durable key-value data “Flat” data, Heavy r/w, events, analytical data Struct’ and unstruct’ binary or obj; data web frameworks, existing apps Large-scale DB apps (>~2TB) Interactive querying, offline analytics
Use Cases App Engine apps AdTech, Fin’ and IoT data Images, media, backups User cred’s, customer orders High I/O, global consistency Data warehousing

Cloud Storage (GCS)

Overview

Storage Classes

.- Regional - Frequent access in a region - avail SLA 99.90% - In region analytics / transcoding.

Integrated with

Virtual Private Cloud (VPC) Networks

Overview

VPC Types

Default

Auto Mode

Customer Mode

External IP Addresses

Note: will get charged for these.

Cloud DNS

Alias IP Ranges

Cloud Load Balancing

5 VPC Load-balancing Options

(For external traffic)

  1. Global HTTP(S) - Layer 7 based on load, Can route different URLS to different backends.

  2. Global SSL Proxy - Layer 4 of non-HTTPS SSL based on load. Supported on specific port numbers.

  3. Global TCP Proxy - Layer 4 non-SSL TCP. Supported on specific port numbers.

  4. Regional - Any traffic (TCP, UDP). anycast port number.

(For internal traffic)

  1. Regional Internal - Load balancer inside a VPC. Use for internal tiers of multi-tier apps . (eg between presentations and business layers).

Cloud DNS

Cloud CDN (content Delivery Network)

Interconnect Options

Route and Firewall Rules

Routes

Firewall Rules

Firewall Parameters

direction - inbound rules matched against ingress and outbound rules matched against egress

source or destination - for ingress source can be specified with IP address’s, source tags or a source service account. For egress the destination can be specified with (see ingress).

protocol and port - Can restrict on protocol or protocol and port.

action - allow or deny packets.

priority - The order the rules are evaluated until the first matching rule is found.

Rule Assignment - rules can be assigned to all instances or specific instances.

With out any firewall there is an implied deny all ingress allow all egress rule.

GCP Firewall use case: Egress

Conditions:

Action:

GCP Firewall use case: Ingress

Protect against incoming connections.

Conditions:

Action:

Default Firewalls

Pricing

Ingress not charged unless a load balancer.

Egress not charged where:

Egress is charged:

External Ip Addresses charges (as of 2021):

Managed Services

We have:

IaaS (Infrastructure as a Service)

Cloud provides: VMs.

We are responsible for: Application Code and Runtime, Configuring load balancing, Auto scaling, OS upgrades and patches, Availability, etc..

PaaS (Platform as a Service)

Cloud provides: OS (incl. upgrades and patches), Application Runtime, Auto scaling, Availability & Load balancing etc..

we are responsible for: Configuration (of Application and Services), Application code.

Also:

Serverless

We don’t need to worry about servers, OS, scaling, availability.

Typically pay for use - no use - no cost.

GCP Managed Services For Compute

Service Details Category
Compute Engine High-performance and general purpose VMs that scale globally. IaaS
Google Kubernetes Engine Orchestrate containerized microservices on Kubernetes. Needs advanced cluster configuration and monitoring. CaaS
App Engine Build highly scalable applications on a fully managed platform using open and familiar languages and tools. PaaS (CaaS, Serverless)
Cloud Functions Build event driven applications using simple, single-purpose functions. FaaS, Serverless
Cloud Run Develop and deploy highly scalable containerized applications. CaaS (Serverless)

Big Query

Cloud SQL / Cloud Spanner

Cloud PubSub

Cloud Bigtable

Cloud Dataflow

Cloud Datalab

Built on Jupyter. Interactive Python.

Runs in compute engine.

Cloud Datastore

Cloud Functions

Cloud Machine Learning Platform

Cloud Vision API

Cloud Speech API

Cloud Natural Language API

Cloud translation API

Cloud Video Intelligence API

App Engine

Overview

Standard Environment

Flexible Environment

Comparison

  Standard Environment Flexible Environment
Instance Startup Milliseconds Minutes
SSH Access No Yes (not default)
Write to local disk No Yes (ephemeral)
3rd party binaries allowed No Yes
Network Access Via App Eng’ services Y
Pricing model After free daily allowance then pay per instance class. Auto shutdown Pay for resource per hour. no auto shutdown

Comparison with Kubernetes

  Kubernetes App Engine Flexible App Engine Standard
Language Support Any Any Java, Python, PHP, GO
Service Model Hybrid PaaS PaaS
Primary Use Case Container based workloads Web / Mobile apps and container based workloads Web / Mobile Apps

Cloud Source Repositories

Apigee and Cloud End Points

Two API management tools.

Cloud Endpoints

Supports:

Runtime Env: App Engine Flexible Environments, K8s, Compute Engine.

Clients: Android, iOS, Javascript.

Apigee Edge

Helps secure and monetize APIs.

Used for making APIs available to customers and partners.

Identity Access Management

Overview

IAM - Who, What (can they do), Resource (on what)

Organisation Node
       |
    Folders
       |
    Projects
       |
   Resources

Projects

Roles

3 types of Role:

Service Accounts

Service accounts are both an identity and a resource

Stackdriver

Overview

Monitoring Logging and diagnostics.

6 Areas

Monitoring

Logging

Trace

Error Reporting

Debugger

Profiler

Deployment Manager

Example

File: mydepl.yaml

resources:
- name: my-vm
  type: compute.v1.instance
  properties:
    zone: us-central1-a
    machineType: zones/us-central1-a/machineTypes/n1-standard-1
    metadata:
      items:
      - key: startup-script
        value: "apt-get update; apt-get install nginx-light -y"
    disks:
    - deviceName: boot
      type: PERSISTENT
      boot: true
      autoDelete: true
      initializeParams:
        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-9-stretch-v20180806
    networkInterfaces:
    - network: https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-04-987e87eca026/global/networks/default
      accessConfigs:
      - name: External NAT
        type: ONE_TO_ONE_NAT

gcloud deployment-manager deployments create my-first-depl --config mydepl.yaml

gcloud deployment-manager deployments list

gcloud deployment-manager deployments update my-first-depl --config mydepl.yaml

To install the Monitoring and Logging agents:

curl -sSO https://dl.google.com/cloudagents/install-monitoring-agent.sh
sudo bash install-monitoring-agent.sh

curl -sSO https://dl.google.com/cloudagents/install-logging-agent.sh
sudo bash install-logging-agent.sh

This page was generated by GitHub Pages. Page last modified: 22/12/23 15:58