Cloud Digital Leader Class Notes Jun 2023
Cloud Digital Leader Class Notes Jun 2023
Venue: Virtual
Important references
https://cdl.guide/
Webassor profile :
https://webassessor.com/wa.do?page=createAccount&branding=GOOGLECLOUD
Instructor details:
Dr. Nabil Hadj-Ahmed
[email protected]
https://www.linkedin.com/in/nabil-hadj-ahmed/
General:
Keeping informed:
● Google Cloud Console: https://console.cloud.google.com/
● Sketchnotes : https://thecloudgirl.dev/sketchnote.html
● Google Cloud Platform (GCP) podcast: https://www.gcppodcast.com/
● GCP blog: https://cloud.google.com/blog/
● GCP newsletter: https://cloud.google.com/newsletter
● GCP YouTube channel: https://www.youtube.com/user/googlecloudplatform
● GCP Medium page: https://medium.com/google-cloud
● Recent GCP product changes (release notes): https://cloud.google.com/release-notes
● Product specific release notes: https://cloud.google.com/release-notes/all
● **What's new in Google Cloud:
https://cloud.google.com/blog/topics/inside-google-cloud/whats-new-google-cloud
Starter information:
● About Google Cloud Services:
https://cloud.google.com/docs/overview/cloud-platform-services
● **Google cloud developer’s cheat sheet (GCP product list):
○ https://googlecloudcheatsheet.withgoogle.com/
● **Great graphics related to Google Cloud: https://thecloudgirl.dev/sketchnote.html
● **Google Regions: https://cloud.google.com/about/locations
● Case studies and customers: https://cloud.google.com/customers/
Load Balancer: a load balance allows you to evenly distribute traffic to multiple servers in one or
Highly Scalable: your ability to increase your capacity based on the increasing demand of traffic,
Horizontal Scaling: or “scaling-out”, which is adding more servers of the same size or
High Elasticity: ability to automatically increase or decrease your capacity based on the current
NOTE: the difference between high elasticity and highly scalable is that elasticity involves automation in either
scaling up or down.
Failover: is when you have a plan to shift traffic to a redundant system in case the primary
systems fail.
High Durability: your ability to recover from a disaster and to prevent the loss of data. Solutions
Containers (pros/cons)
- VM runs multiple containers
- You can maximize the utilization of the available capacity which is most cost
effective
- Your containers share the same underlying OS so containers are more efficient
than multiple VMs
- Multiple apps can run side by side without being limited to the same operating
system requirements and will not cause conflicts during resource sharing
Functions (pros/cons)
- Are managed VMs running managed containers (known as serverless compute)
- You upload a piece of code, choose the amount of memory and duration
- Only responsible for the code/data
- Very cost effective, only pay for the time code is running, VMs only run when
there is code to be executed
- Cold start (booting up) is a con
Types of Environments
1. On-premises - sometimes called ‘private cloud’
2. Public Cloud - sometimes called ‘cloud native’ (Azure, AWS, Google Cloud, etc)
3. Hybrid - mixture of of both on-premises and public cloud
4. Multi Cloud - mixture of different public clouds, sometimes called ‘cross cloud’
A database is a data-store that stores semi-structured and structured data. Databases have a
rich set of functionality to either use a specialized language to query (retrieve data)specialized
modeling strategies to optimize retrieval for different use cases.
Structured data consists of clearly defined data types with patterns that make them easily
searchable; while unstructured data – “everything else” – is composed of data that is usually
not as easily searchable, including formats like audio, video, and social media postings.
A document store is a NoSQL database that stores documents as its primary data structure.A
document could be an XML but more commonly is JSON or JSON-Like
A data lake is a centralized repository designed to store, process, and secure large amounts of
structured, semistructured, and unstructured data. It can store data in its native format and
process any variety of it, ignoring size limits.
Database
SQL database Migrate databases to Cloud SQL from on-premises,
Databases Migration N/A Compute Engine, and other clouds
migration
Service
Data
Discover and understand your data using a fully
discovery and
Data Analytics Data Catalog managed and scalable data discovery and metadata
metadata
management service.
management
Serverless
Unify stream and batch data processing that's
Data Analytics data Dataflow
serverless, fast (real-time), and cost-effective.
processing
1. Cost Effective: you pay for what you consume, no upfront cost. On-demand pricing or
pay as you go with thousands of customers sharing the cost of resources.
2. Global: launch workloads anywhere in the world, just choose a region.
3. Secure: Cloud providers take care of the physical security. Cloud services are secure by
default or you have the ability to configure access down to a granular level.
4. Reliable: data backup, disaster recovery, data replication and fault tolerance.
5. Scalable: Increase or decrease resources and services based on demand.
6. Elastic: automate scaling during spikes and drops in demand.
7. Current: the underlying hardware and managed software is patched, upgraded and
replaced by the cloud provider without service interruptions.
The chart below defines what the customer is responsible for VS what Google Cloud is
responsible for.
Shared Responsibility Rules
1. The customer is responsible for the data and the configuration of access controls that
reside in Google Cloud.
2. The customer is responsible for the configuration of cloud services and granting
access to users via permissions.
OpEx (cloud): are the day-to-day expenses a company incurs to keep its business operational.
Less hidden costs because infrastructure is managed by public cloud providers.
Edge Networking: is the practice of having compute and data storage resources as close as
possible to the end user in order to deliver the lowest latency and to save bandwidth.
Points of Presence (POP): is an intermediate location between a GCP region and the end user.
This location could be a third party datacenter or collection of hardware.
Edge POP: a location where a user can quickly enter (ingress) the GCP network for accelerated
access to cloud resources.
CDN POP: a location to serve (egress) cached website files and assets so they load very fast for
the end user.
Cloud Media Edge: a location specialized for the delivery of media such as video content.
Global Service: a resource that resides globally and regions/zones are abstracted away.
Internal Services: a foundation service used by many other services. You don't interact with
these services directly, they are managed by Google.
Data Residency: the physical or geographical location of where an organization's data or cloud
resources reside.
Assured Workloads: a feature that allows you to apply various ‘security controls’ based on
attributes, personal support case ownership controls and encryption.
Cloud Interconnect
Cloud Interconnect provides direct physical connections between your on-premises network and
Google’s network. Cloud Interconnect enables you to transfer large amounts of data between
networks, which can be more cost-effective than purchasing additional bandwidth over the
public internet.
Dedicated: a direct physical connection between the on-premises network and Google’s network
through a co-location. (Ideal for 10-200GB).
Partner: a direct physical connection between the on-premises network and Google's network
through a trusted third-party. (Ideal for 50MB-10GB)
Lag: the noticeable delay between the actions of input and the reactions of the server sent back
to the client.
Tensor Computing: TPUs or Tensor Processing Units are 50x faster than traditional CPUs,
created by Google and are cooled with water. TPUs are great for AI/ML and the Google product
is called Cloud TPU.
Quantum Computing: 100 million times faster. Will be essential to super artificial intelligence
and Google's products are Google Quantum AI. The latest quantum computing chip is called
Sycamore (2018), followed by Bristlecone (2017) and then Foxtail (2016)
Google Cloud Tools
Google Cloud Console: the GCP portal is a web-based, unified console, that you can build,
manage, and monitor everything from a web browser.
Cloud SDK: SDK means software development kit and it is a collection of software development
tools in one installable package. Cloud SDK is used to programmatically create, modify, delete or
interact with GCP resources. Cloud SDK is offered in various languages: JAVA, Python, Nodejs,
Ruby, Go, .Net and PHP.
Cloud CLI: CLI means command line interface and it processes commands to a computer
program in the form of lines of text.
Cloud Shell: command line access for managing your infrastructure (basically the code editor in
the GCP console for managing your infrastructure).
PRODUCT GCP
CATEGORY ICON DESCRIPTION
TYPE PRODUCT
Serverless Application platform for apps and back
Compute/ Serverless ends. Build highly scalable applications on a fully
Serverless Applications App Engine managed serverless platform. Build your application in
Computing Platform Node.js, Java, Ruby, C#, Go, Python, or PHP—or
bring your own language runtime.
App Engine has two types of environments: Flexible and Standard. You can simultaneously use
both environments for your application.App Engine is well suited to applications that are
designed using a microservice architecture.
Containers: is a standard unit of software that packages up code and all its dependencies, so
the application runs quickly and reliably from one computing environment to another.”
Kubernetes: is an open source container-orchestration platform for your applications that can
be deployed on your on-premises or cloud environment. It can regulate your cloud costs, but
most importantly it offers high-availability to your applications by being able to automatically
spin up identical containers and offload them when no longer needed.
A unique component of kubernetes is pods. A pod is a group of containers with shared storage,
network resources and other shared settings.
Kubernetes is ideal for microservice-architectures where a company has tens to hundreds of
services they need to manage. Best choice for when you have A LOT of services.
Google
Secured and managed Kubernetes service with
Containers CaaS Kubernetes
four-way auto scaling and multi-cluster support.
Engine (GKE)
Kubernetes
applications
Pre-built
Containers on Google N/A Deploy pre built containerized apps.
Containers
Cloud
Marketplace