SlideShare a Scribd company logo
1 of 56
Download to read offline
@BretMcG github.com/bretmcg
Knative and Kubernetes:
Bringing serverless to more
developers
Bret McGowen
@BretMcG
Developer Advocate
Google
linktr.ee/bretmcg
Connect with me
GitHub - github.com/bretmcg
SlideShare - slideshare.net/bretmc
My LinkTree - inktr.ee/bretmcg
YouTube - youtube.com/c/BretMcG
Speaker Deck - speakerdeck.com/bretmcg
Sessionize - sessionize.com/bretmcg
LinkedIn - linkedin.com/in/bretmcgowen
Instagram - instagram.com/bret.mcgowen
@BretMcG github.com/bretmcg
Serverless swear words
Contai***s
Kubern****s
Infrastr****re
Offl*ne
Cluster of virt*** mach***s
.
@BretMcG github.com/bretmcg
Serverless model(s)
Operational model
Fully managed security Pay only for usage
No servers
Event-driven Open
Service-based
Programming model
@BretMcG github.com/bretmcg
Keep the serverless programming model,
however your infrastructure is managed.
Operational model
Fully managed security Pay only for usage
No servers
Event-driven Open
Service-based
Programming model
@BretMcG github.com/bretmcg
Hosted FaaS/compute
Easiest dev experience
Code focused
Limited runtime options
Serverless anywhere
Knative / GKE serverless addon
On prem or multi-cloud
Code or containers
Custom hardware (GPU, TPU, IoT, etc)
Offline
You manage infra
Serverless operational spectrum
Managed by your cloud
Container orchestration (k8s)
Not serverless for programming or ops
Container focused
You manage infra
Managed by your team
Serverless containers
Custom languages & runtimes
Infra still cloud-managed
@BretMcG github.com/bretmcg
Hosted FaaS/compute
Easiest dev experience
Code focused
Limited runtime options
Hosted FaaS/compute
Managed by your cloud
Container orchestration (k8s)
Not serverless for programming or ops
Container focused
You manage infra
Managed by your team
Serverless anywhere
Knative / GKE serverless addon
On prem or multi-cloud
Code or containers
Custom hardware (GPU, TPU, IoT, etc)
Offline
You manage infra
Serverless containers
Custom languages & runtimes
Infra still cloud-managed
@BretMcG github.com/bretmcg
Serverless Compute on Cloud
Platform
App Engine Standard
Highly scalable, serverless web
applications.
Deploy and scale Applications
that react to Requests
Cloud Functions
Event-driven serverless
compute platform.
Deploy and scale Functions
that react to Events
@BretMcG github.com/bretmcg
Back end code functions that automatically run in
response to a trigger event
Microservices
Cloud "glue"
Node.js 6, Node.js 8, Python 3.7, Go 1.11 (bit.ly/gcf-go-alpha)
Pricing: per 100ms & based on allocated memory
Cloud Functions
@BretMcG github.com/bretmcg
Cloud Functions as cloud glue
Access 20+ Google
services from GCF
Cloud Storage
Cloud Pub/Sub
HTTPS
Firebase
Cloud Scheduler
@BretMcG github.com/bretmcg
Cloud Functions announcements
Generally Available (with SLA!)
Python 3.7, Node 8
Tokyo, Belgium, Iowa
Environment Variables
Cloud Scheduler
New!
Ubuntu 18.04 with many packages
(ffmpeg, imagemagick, headless Chrome)
Security Controls: VPC, IAM
Scaling Controls
Cloud SQL Direct Connect
@BretMcG github.com/bretmcg
App Engine: 2nd generation runtimes
New!
Pay for what you use, scale to zero
Open-source, idiomatic experience
Use any module, extension, or framework
New supported runtimes:
○ Node.js 8
○ Python 3.7
○ PHP 7.2
@BretMcG github.com/bretmcg
Serverless containers
Managed by your cloud
Container orchestration (k8s)
Not serverless for programming or ops
Container focused
You manage infra
Hosted FaaS/compute
Easiest dev experience
Code focused
Limited runtime options
Managed by your team
Serverless anywhere
Knative / GKE serverless addon
On prem or multi-cloud
Code or containers
Custom hardware (GPU, TPU, IoT, etc)
Offline
You manage infra
Serverless containers
Custom languages & runtimes
Infra still cloud-managed
@BretMcG github.com/bretmcg
First, a word about
containers....
Containers != Kubernetes
(I'm fired now)
@BretMcG github.com/bretmcg
What are containers?
app
libs
kernel
libs
app app
kernel
app
libs
libs
kernel
kernel
libs
app
kernel
libs
app
libs
app
libs
app
kernel
libs
app
app app
app
Shared machines Virtual Machines Containers
x
x
x
x
x
x
No isolation
Common libs
Highly coupled apps
and OS
Isolation
No common libs
Expensive and inefficient
Hard to manage
Isolation
No common libs
Less overhead
Less dependency
on host OS
@BretMcG github.com/bretmcg
FROM python
RUN apt-get update && apt-get install -y blender
ENV APP_HOME /app
COPY . $APP_HOME
WORKDIR $APP_HOME
RUN pip install Flask
EXPOSE 8080
CMD ["python", "app.py"]
Don't be
afraid of this
Image
It’s a method of packaging
an application executable and
its dependencies (runtime,
libraries, configuration)
Runtime
and running as a set
of resource-isolated
processes.
@BretMcG github.com/bretmcg
Bad news friends...
All major clouds run their functions as containers
behind the scenes.
@BretMcG github.com/bretmcg
Everything at Google
runs in containers:
Gmail, Web Search, Maps, ...
MapReduce, batch, ...
GFS, Colossus, ...
Even GCE itself: VMs in containers
We launch over
4 billion containers
per week.
@BretMcG github.com/bretmcg
Demo: containers aren’t scary
@BretMcG github.com/bretmcg
Two serverless challenges today
Dependencies
Constrained runtimes,
frameworks and packages
Multi-Cloud
Unable to run your workloads
on-prem, in the cloud or on a
third party service provider
1 2
@BretMcG github.com/bretmcg
Serverless containers
Secure on gVisor
Fully managed
BYO workloads
Pay for use & stateless
Alpha invitations coming
later this year
Sign up: g.co/serverlesscontainers
New: serverless containers on GCF (EAP)
@BretMcG github.com/bretmcg
Serverless anywhere
Knative / GKE serverless addon
On prem or multi-cloud
Code or containers
Custom hardware (GPU, TPU, IoT, etc)
Offline
You manage infra
Serverless anywhere
Managed by your cloud
Container orchestration (k8s)
Not serverless for programming or ops
Container focused
You manage infra
Hosted FaaS/compute
Easiest dev experience
Code focused
Limited runtime options
Managed by your team
Serverless containers
Custom languages & runtimes
Infra still cloud-managed
@BretMcG github.com/bretmcg
Meet Knative: serverless on Kubernetes
Kubernetes-based
building blocks for
serverless workloads
Build - Serving - Events
*kay-native
@BretMcG github.com/bretmcg
Knative partners
@BretMcG github.com/bretmcg
Knative isn't
Not an open source FaaS developer-facing product
It's primitives, not a product
Not the right solution for everyone
@BretMcG github.com/bretmcg
The Knative stack
Kubernetes + Istio
Platform
@BretMcG github.com/bretmcg
The Knative stack
Knative
Build Serving Events
Kubernetes + Istio
Platform
Primitives
@BretMcG github.com/bretmcg
Knative
Build Serving Events
Kubernetes + Istio
Platform
Products
Serverless Containers on GCF GKE Serverless Add-on SAP Kyma
Pivotal Function Service IBM Cloud Functions Red Hat Cloud Functions
Primitives
riff OpenFaaS Jazz
@BretMcG github.com/bretmcg
@BretMcG github.com/bretmcg
What is Kubernetes?
@BretMcG github.com/bretmcg
*Sources: COCOMO Model, CNCF.io Certified Providers
442 Years of effort* 5,000+ Contributors 30k+ GitHub stars
The incredible Kubernetes ecosystem
@BretMcG github.com/bretmcg
Isolation: Keep jobs from interfering with
each other
Scheduling: Where should my job be run?
Lifecycle: Keep my job running
Discovery: Where is my job now?
Constituency: Who is part of my job?
Scale-up: Making my jobs bigger or smaller
Auth{n,z}: Who can do things to my job?
Monitoring: What’s happening with my job?
Health: How is my job feeling?
Container orchestration
@BretMcG github.com/bretmcg
Kubernetes abstracts away infrastructure
Nodes
Master
@BretMcG github.com/bretmcg
Developers using Kubernetes still have a lot to do
Have to do
Write code
Build docker image
Upload image to registry
Deploy service
Expose to the internet
Setup logging & monitoring
Scale workload
Want to do
Write code
@BretMcG github.com/bretmcg
Reasons for using Kubernetes (2014) vs
hosted serverless (2014)
Reduce lock-in
Performance
Multi-cloud
Customizability
Use custom hardware (GPU, TPU, IoT, etc)
Offline/reduced connectivity
Existing on-prem infrastructure
Existing applications
@BretMcG github.com/bretmcg
Everybody got all fired up
about Kubernetes and
microservices and then were
like ‘Oh s----, what’s going on?’
Istio lets us view our entire
system and find trouble spots.
Anonymous early adopter
Observability:
@BretMcG github.com/bretmcg
Traffic control Observability Fault-injection
Security Hybrid cloud
Istio
@BretMcG github.com/bretmcg
Example: canaries & traffic steering
destination: pictures.example.local
match:
httpHeaders:
user-agent:
regex: ^(.*?;)?(iPhone)(;.*)?$
precedence: 2
route:
- tags:
version: 2.0-alpha
env: staging
pictures
version: 2.0-alpha
env: staging
version: 1.5
env: prod
Proxy
Frontend
Pictures
Proxy
Pictures
Proxy
@BretMcG github.com/bretmcg
Kubernetes provides a good operator experience.
What about developer experience?
@BretMcG github.com/bretmcg
Demo: deploy an app on Knative
@BretMcG github.com/bretmcg
Knative Serving defines principled objects
Knative defines primitives with clear separation of concerns
So far, we used Service, a lite version of Knative objects
spec:
container:
image: gcr.io/knative-samples/simple-app:latest
env:
- name: SIMPLE_MSG
value: "Hello Serverlessconf SF!"
Service
@BretMcG github.com/bretmcg
Configuration
Service
Knative Serving defines principled objects
Knative defines primitives with clear separation of concerns
Configuration
Current/desired state for your application
Code & configuration (separated, ala 12 factor)
@BretMcG github.com/bretmcg
Revision
Configuration
Service
Knative Serving defines principled objects
Knative defines primitives with clear separation of concerns
Configuration
Current/desired state for your application
Code & configuration (separated, ala 12 factor)
Revision
Point in time snapshots for your code and configuration
@BretMcG github.com/bretmcg
Knative Serving defines principled objects
Revision
Knative defines primitives with clear separation of concerns
Configuration
Current/desired state for your application
Code & configuration (separated, ala 12 factor)
Revision
Point in time snapshots for your code and configuration
Route
Maps traffic to a revisions
Supports fractional, named routing
Route
Configuration
Service
@BretMcG github.com/bretmcg
Demo: Blue-green deployment
@BretMcG github.com/bretmcg
Blue-green deployment model
Route
100%
Revision
Configuration
kind: Route
...
spec:
traffic:
- revisionName: blue-green-00001
percent: 100
@BretMcG github.com/bretmcg
Blue-green deployment model
kind: Route
...
spec:
traffic:
- revisionName: blue-green-00001
percent: 100
- revisionName: blue-green-00002
percent: 0
name: v2
Deploy updated version of the service
● Blue continues to take 100% of traffic
● Named route (v2) to green version
Revision
Route
100%
Revision
0%
v2
Configuration
Configuration
@BretMcG github.com/bretmcg
Blue-green deployment model
Update service configuration
● Send % of traffic to green
● Still have explicit v2 route
kind: Route
...
spec:
traffic:
- revisionName: blue-green-00001
percent: 50
- revisionName: blue-green-00002
percent: 50
name: v2
Revision
Route
98%
Revision
2% (Experiment)
Configuration
Configuration
Revision
Route
Revision
Configuration
Configuration
@BretMcG github.com/bretmcg
Blue-green deployment model
Update service configuration
● Incrementally add %, until all traffic is on green
● Keep explicit named route to blue
Secured with RBAC-based ACL
kind: Route
...
spec:
traffic:
- revisionName: blue-green-00001
percent: 0
name: v1
- revisionName: blue-green-00002
percent: 100
Revision
Route
0%
v1
Revision
100%
Configuration
Configuration
Revision
Route
Revision
Configuration
Configuration
@BretMcG github.com/bretmcg
Blue-green deployment model
Revision
Route
0%
v1
Revision
100%
Configuration
Configuration
Revision
Route
Revision
Configuration
Configuration
Demo: Deploying and updating live service
@BretMcG github.com/bretmcg
More Knative pieces
Knative Build enables source/git based deployments
Knative Events compatible with CNCF standard Cloud Events
Knative scales down when you don’t need it
Knative scales up linearly with your load
● Supports unpredictable usage pattern
● 1-n when you app starts taking traffic
@BretMcG github.com/bretmcg
Knative auto-builds
Supports GitOps or
src-to-URL
development patterns
Why developers care?
● No cross-compiling toil.
● No need for Docker locally.
● Cloud caching, faster
image push.
● Tooling ecosystem for
Enterprise Policy to audit
Builds.
Loosely coupled
● Use it to get started, and
graduate to decoupled CI.
● Keep your existing CI/CD
to get started, and
graduate to audited Builds.
@BretMcG github.com/bretmcg
Knative has opinions but is extensible
Knative API
● Event sources, event types
● Buildpack build templates
● Network configuration
● Logging targets
Some opinions
may not be ideal
for your use-case
Kubernetes
● Auto-scaling strategy
● Function invokers
● Message bus
@BretMcG github.com/bretmcg
GKE serverless add-on
Available for all later this year
Request early access today at
g.co/serverlessaddon GKE serverless add-on
@BretMcG github.com/bretmcg
The goal is more serverless
experiences for more
developers. Even if it’s not
perfectly serverless, happy devs
will drive organizational change.
@BretMcG github.com/bretmcg
Resources
cloud.google.com/serverless
Knative
github.com/knative
slack.knative.dev
GKE serverless add-on (sign-up)
g.co/serverlessaddon
Containers on Cloud Functions (sign-up)
g.co/serverlesscontainers
Thank you!
Bret McGowen
@BretMcG
@BretMcG github.com/bretmcg
Connect with me
GitHub - github.com/bretmcg
SlideShare - slideshare.net/bretmc
My LinkTree - inktr.ee/bretmcg
YouTube - youtube.com/c/BretMcG
Speaker Deck - speakerdeck.com/bretmcg
Sessionize - sessionize.com/bretmcg
LinkedIn - linkedin.com/in/bretmcgowen
Instagram - instagram.com/bret.mcgowen
Thank you!
Bret McGowen
@BretMcG

More Related Content

Similar to Knative and Kubernetes - bringing serverless to more developers

Scientific Computing @ Fred Hutch
Scientific Computing @ Fred HutchScientific Computing @ Fred Hutch
Scientific Computing @ Fred HutchDirk Petersen
 
Rejekts 24 EU No GitOps Pain, No Platform Gain
Rejekts 24 EU No GitOps Pain, No Platform GainRejekts 24 EU No GitOps Pain, No Platform Gain
Rejekts 24 EU No GitOps Pain, No Platform GainŁukasz Piątkowski
 
The Reality of DIY Kubernetes vs. PKS
The Reality of DIY Kubernetes vs. PKSThe Reality of DIY Kubernetes vs. PKS
The Reality of DIY Kubernetes vs. PKSVMware Tanzu
 
Heroku to Kubernetes & Gihub to Gitlab success story
Heroku to Kubernetes & Gihub to Gitlab success storyHeroku to Kubernetes & Gihub to Gitlab success story
Heroku to Kubernetes & Gihub to Gitlab success storyJérémy Wimsingues
 
Webinar: End to End Security & Operations with Chainguard and Weave GitOps
Webinar: End to End Security & Operations with Chainguard and Weave GitOpsWebinar: End to End Security & Operations with Chainguard and Weave GitOps
Webinar: End to End Security & Operations with Chainguard and Weave GitOpsWeaveworks
 
給 RD 的 Kubernetes 初體驗
給 RD 的 Kubernetes 初體驗給 RD 的 Kubernetes 初體驗
給 RD 的 Kubernetes 初體驗William Yeh
 
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...tdc-globalcode
 
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, PuppetPuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, PuppetPuppet
 
What should you know about Net Core?
What should you know about Net Core?What should you know about Net Core?
What should you know about Net Core?Damir Dobric
 
IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017Robert Parker
 
Kubernetes Operability Tooling (GOTO Chicago 2019)
Kubernetes Operability Tooling (GOTO Chicago 2019)Kubernetes Operability Tooling (GOTO Chicago 2019)
Kubernetes Operability Tooling (GOTO Chicago 2019)bridgetkromhout
 
Kubecon seattle 2018 workshop slides
Kubecon seattle 2018 workshop slidesKubecon seattle 2018 workshop slides
Kubecon seattle 2018 workshop slidesWeaveworks
 
Building a dev pipeline using GitHub Actions, Node.js, and AWS ECS Fargate
Building a dev pipeline using GitHub Actions, Node.js, and AWS ECS FargateBuilding a dev pipeline using GitHub Actions, Node.js, and AWS ECS Fargate
Building a dev pipeline using GitHub Actions, Node.js, and AWS ECS Fargatedatree
 
Google Cloud Networking Deep Dive
Google Cloud Networking Deep DiveGoogle Cloud Networking Deep Dive
Google Cloud Networking Deep DiveMichelle Holley
 
How to manage Kubernetes at scale with just git
How to manage Kubernetes at scale with just git How to manage Kubernetes at scale with just git
How to manage Kubernetes at scale with just git Weaveworks
 
Resilient microservices with Kubernetes - Mete Atamel - Codemotion Rome 2017
Resilient microservices with Kubernetes - Mete Atamel - Codemotion Rome 2017Resilient microservices with Kubernetes - Mete Atamel - Codemotion Rome 2017
Resilient microservices with Kubernetes - Mete Atamel - Codemotion Rome 2017Codemotion
 
ClusterEurope2018 - Bootcamp Kubernetes - présentation
ClusterEurope2018 - Bootcamp Kubernetes - présentationClusterEurope2018 - Bootcamp Kubernetes - présentation
ClusterEurope2018 - Bootcamp Kubernetes - présentationLudovic Piot
 
[2020 git lab commit] continuous infrastructure
[2020 git lab commit] continuous infrastructure[2020 git lab commit] continuous infrastructure
[2020 git lab commit] continuous infrastructureRodrigo Stefani Domingues
 

Similar to Knative and Kubernetes - bringing serverless to more developers (20)

Scientific Computing @ Fred Hutch
Scientific Computing @ Fred HutchScientific Computing @ Fred Hutch
Scientific Computing @ Fred Hutch
 
Rejekts 24 EU No GitOps Pain, No Platform Gain
Rejekts 24 EU No GitOps Pain, No Platform GainRejekts 24 EU No GitOps Pain, No Platform Gain
Rejekts 24 EU No GitOps Pain, No Platform Gain
 
Gitops Hands On
Gitops Hands OnGitops Hands On
Gitops Hands On
 
The Reality of DIY Kubernetes vs. PKS
The Reality of DIY Kubernetes vs. PKSThe Reality of DIY Kubernetes vs. PKS
The Reality of DIY Kubernetes vs. PKS
 
Heroku to Kubernetes & Gihub to Gitlab success story
Heroku to Kubernetes & Gihub to Gitlab success storyHeroku to Kubernetes & Gihub to Gitlab success story
Heroku to Kubernetes & Gihub to Gitlab success story
 
Webinar: End to End Security & Operations with Chainguard and Weave GitOps
Webinar: End to End Security & Operations with Chainguard and Weave GitOpsWebinar: End to End Security & Operations with Chainguard and Weave GitOps
Webinar: End to End Security & Operations with Chainguard and Weave GitOps
 
給 RD 的 Kubernetes 初體驗
給 RD 的 Kubernetes 初體驗給 RD 的 Kubernetes 初體驗
給 RD 的 Kubernetes 初體驗
 
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
 
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, PuppetPuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
 
What should you know about Net Core?
What should you know about Net Core?What should you know about Net Core?
What should you know about Net Core?
 
IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017
 
Kubernetes Operability Tooling (GOTO Chicago 2019)
Kubernetes Operability Tooling (GOTO Chicago 2019)Kubernetes Operability Tooling (GOTO Chicago 2019)
Kubernetes Operability Tooling (GOTO Chicago 2019)
 
Kubecon seattle 2018 workshop slides
Kubecon seattle 2018 workshop slidesKubecon seattle 2018 workshop slides
Kubecon seattle 2018 workshop slides
 
Building a dev pipeline using GitHub Actions, Node.js, and AWS ECS Fargate
Building a dev pipeline using GitHub Actions, Node.js, and AWS ECS FargateBuilding a dev pipeline using GitHub Actions, Node.js, and AWS ECS Fargate
Building a dev pipeline using GitHub Actions, Node.js, and AWS ECS Fargate
 
APIs at the Edge
APIs at the EdgeAPIs at the Edge
APIs at the Edge
 
Google Cloud Networking Deep Dive
Google Cloud Networking Deep DiveGoogle Cloud Networking Deep Dive
Google Cloud Networking Deep Dive
 
How to manage Kubernetes at scale with just git
How to manage Kubernetes at scale with just git How to manage Kubernetes at scale with just git
How to manage Kubernetes at scale with just git
 
Resilient microservices with Kubernetes - Mete Atamel - Codemotion Rome 2017
Resilient microservices with Kubernetes - Mete Atamel - Codemotion Rome 2017Resilient microservices with Kubernetes - Mete Atamel - Codemotion Rome 2017
Resilient microservices with Kubernetes - Mete Atamel - Codemotion Rome 2017
 
ClusterEurope2018 - Bootcamp Kubernetes - présentation
ClusterEurope2018 - Bootcamp Kubernetes - présentationClusterEurope2018 - Bootcamp Kubernetes - présentation
ClusterEurope2018 - Bootcamp Kubernetes - présentation
 
[2020 git lab commit] continuous infrastructure
[2020 git lab commit] continuous infrastructure[2020 git lab commit] continuous infrastructure
[2020 git lab commit] continuous infrastructure
 

More from Bret McGowen - NYC Google Developer Advocate (9)

Firebase Codelab - 2018 Milano
Firebase Codelab - 2018 MilanoFirebase Codelab - 2018 Milano
Firebase Codelab - 2018 Milano
 
Supercharge your app with Cloud Functions for Firebase
Supercharge your app with Cloud Functions for FirebaseSupercharge your app with Cloud Functions for Firebase
Supercharge your app with Cloud Functions for Firebase
 
Serverless with Google Cloud
Serverless with Google CloudServerless with Google Cloud
Serverless with Google Cloud
 
Google Home and Google Assistant Workshop: Build your own serverless Action o...
Google Home and Google Assistant Workshop: Build your own serverless Action o...Google Home and Google Assistant Workshop: Build your own serverless Action o...
Google Home and Google Assistant Workshop: Build your own serverless Action o...
 
Machine learning with Google machine learning APIs - Puppy or Muffin?
Machine learning with Google machine learning APIs - Puppy or Muffin?Machine learning with Google machine learning APIs - Puppy or Muffin?
Machine learning with Google machine learning APIs - Puppy or Muffin?
 
Google Machine Learning APIs - puppies or muffins?
Google Machine Learning APIs - puppies or muffins?Google Machine Learning APIs - puppies or muffins?
Google Machine Learning APIs - puppies or muffins?
 
Kubernetes 101 Workshop
Kubernetes 101 WorkshopKubernetes 101 Workshop
Kubernetes 101 Workshop
 
Cloud Spin - building a photo booth with the Google Cloud Platform
Cloud Spin - building a photo booth with the Google Cloud PlatformCloud Spin - building a photo booth with the Google Cloud Platform
Cloud Spin - building a photo booth with the Google Cloud Platform
 
Firebase Code Lab - 2015 GDG Buffalo DevFest
Firebase Code Lab - 2015 GDG Buffalo DevFestFirebase Code Lab - 2015 GDG Buffalo DevFest
Firebase Code Lab - 2015 GDG Buffalo DevFest
 

Recently uploaded

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 

Recently uploaded (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 

Knative and Kubernetes - bringing serverless to more developers

  • 1. @BretMcG github.com/bretmcg Knative and Kubernetes: Bringing serverless to more developers Bret McGowen @BretMcG Developer Advocate Google linktr.ee/bretmcg Connect with me GitHub - github.com/bretmcg SlideShare - slideshare.net/bretmc My LinkTree - inktr.ee/bretmcg YouTube - youtube.com/c/BretMcG Speaker Deck - speakerdeck.com/bretmcg Sessionize - sessionize.com/bretmcg LinkedIn - linkedin.com/in/bretmcgowen Instagram - instagram.com/bret.mcgowen
  • 2. @BretMcG github.com/bretmcg Serverless swear words Contai***s Kubern****s Infrastr****re Offl*ne Cluster of virt*** mach***s .
  • 3. @BretMcG github.com/bretmcg Serverless model(s) Operational model Fully managed security Pay only for usage No servers Event-driven Open Service-based Programming model
  • 4. @BretMcG github.com/bretmcg Keep the serverless programming model, however your infrastructure is managed. Operational model Fully managed security Pay only for usage No servers Event-driven Open Service-based Programming model
  • 5. @BretMcG github.com/bretmcg Hosted FaaS/compute Easiest dev experience Code focused Limited runtime options Serverless anywhere Knative / GKE serverless addon On prem or multi-cloud Code or containers Custom hardware (GPU, TPU, IoT, etc) Offline You manage infra Serverless operational spectrum Managed by your cloud Container orchestration (k8s) Not serverless for programming or ops Container focused You manage infra Managed by your team Serverless containers Custom languages & runtimes Infra still cloud-managed
  • 6. @BretMcG github.com/bretmcg Hosted FaaS/compute Easiest dev experience Code focused Limited runtime options Hosted FaaS/compute Managed by your cloud Container orchestration (k8s) Not serverless for programming or ops Container focused You manage infra Managed by your team Serverless anywhere Knative / GKE serverless addon On prem or multi-cloud Code or containers Custom hardware (GPU, TPU, IoT, etc) Offline You manage infra Serverless containers Custom languages & runtimes Infra still cloud-managed
  • 7. @BretMcG github.com/bretmcg Serverless Compute on Cloud Platform App Engine Standard Highly scalable, serverless web applications. Deploy and scale Applications that react to Requests Cloud Functions Event-driven serverless compute platform. Deploy and scale Functions that react to Events
  • 8. @BretMcG github.com/bretmcg Back end code functions that automatically run in response to a trigger event Microservices Cloud "glue" Node.js 6, Node.js 8, Python 3.7, Go 1.11 (bit.ly/gcf-go-alpha) Pricing: per 100ms & based on allocated memory Cloud Functions
  • 9. @BretMcG github.com/bretmcg Cloud Functions as cloud glue Access 20+ Google services from GCF Cloud Storage Cloud Pub/Sub HTTPS Firebase Cloud Scheduler
  • 10. @BretMcG github.com/bretmcg Cloud Functions announcements Generally Available (with SLA!) Python 3.7, Node 8 Tokyo, Belgium, Iowa Environment Variables Cloud Scheduler New! Ubuntu 18.04 with many packages (ffmpeg, imagemagick, headless Chrome) Security Controls: VPC, IAM Scaling Controls Cloud SQL Direct Connect
  • 11. @BretMcG github.com/bretmcg App Engine: 2nd generation runtimes New! Pay for what you use, scale to zero Open-source, idiomatic experience Use any module, extension, or framework New supported runtimes: ○ Node.js 8 ○ Python 3.7 ○ PHP 7.2
  • 12. @BretMcG github.com/bretmcg Serverless containers Managed by your cloud Container orchestration (k8s) Not serverless for programming or ops Container focused You manage infra Hosted FaaS/compute Easiest dev experience Code focused Limited runtime options Managed by your team Serverless anywhere Knative / GKE serverless addon On prem or multi-cloud Code or containers Custom hardware (GPU, TPU, IoT, etc) Offline You manage infra Serverless containers Custom languages & runtimes Infra still cloud-managed
  • 13. @BretMcG github.com/bretmcg First, a word about containers.... Containers != Kubernetes (I'm fired now)
  • 14. @BretMcG github.com/bretmcg What are containers? app libs kernel libs app app kernel app libs libs kernel kernel libs app kernel libs app libs app libs app kernel libs app app app app Shared machines Virtual Machines Containers x x x x x x No isolation Common libs Highly coupled apps and OS Isolation No common libs Expensive and inefficient Hard to manage Isolation No common libs Less overhead Less dependency on host OS
  • 15. @BretMcG github.com/bretmcg FROM python RUN apt-get update && apt-get install -y blender ENV APP_HOME /app COPY . $APP_HOME WORKDIR $APP_HOME RUN pip install Flask EXPOSE 8080 CMD ["python", "app.py"] Don't be afraid of this Image It’s a method of packaging an application executable and its dependencies (runtime, libraries, configuration) Runtime and running as a set of resource-isolated processes.
  • 16. @BretMcG github.com/bretmcg Bad news friends... All major clouds run their functions as containers behind the scenes.
  • 17. @BretMcG github.com/bretmcg Everything at Google runs in containers: Gmail, Web Search, Maps, ... MapReduce, batch, ... GFS, Colossus, ... Even GCE itself: VMs in containers We launch over 4 billion containers per week.
  • 19. @BretMcG github.com/bretmcg Two serverless challenges today Dependencies Constrained runtimes, frameworks and packages Multi-Cloud Unable to run your workloads on-prem, in the cloud or on a third party service provider 1 2
  • 20. @BretMcG github.com/bretmcg Serverless containers Secure on gVisor Fully managed BYO workloads Pay for use & stateless Alpha invitations coming later this year Sign up: g.co/serverlesscontainers New: serverless containers on GCF (EAP)
  • 21. @BretMcG github.com/bretmcg Serverless anywhere Knative / GKE serverless addon On prem or multi-cloud Code or containers Custom hardware (GPU, TPU, IoT, etc) Offline You manage infra Serverless anywhere Managed by your cloud Container orchestration (k8s) Not serverless for programming or ops Container focused You manage infra Hosted FaaS/compute Easiest dev experience Code focused Limited runtime options Managed by your team Serverless containers Custom languages & runtimes Infra still cloud-managed
  • 22. @BretMcG github.com/bretmcg Meet Knative: serverless on Kubernetes Kubernetes-based building blocks for serverless workloads Build - Serving - Events *kay-native
  • 24. @BretMcG github.com/bretmcg Knative isn't Not an open source FaaS developer-facing product It's primitives, not a product Not the right solution for everyone
  • 25. @BretMcG github.com/bretmcg The Knative stack Kubernetes + Istio Platform
  • 26. @BretMcG github.com/bretmcg The Knative stack Knative Build Serving Events Kubernetes + Istio Platform Primitives
  • 27. @BretMcG github.com/bretmcg Knative Build Serving Events Kubernetes + Istio Platform Products Serverless Containers on GCF GKE Serverless Add-on SAP Kyma Pivotal Function Service IBM Cloud Functions Red Hat Cloud Functions Primitives riff OpenFaaS Jazz
  • 30. @BretMcG github.com/bretmcg *Sources: COCOMO Model, CNCF.io Certified Providers 442 Years of effort* 5,000+ Contributors 30k+ GitHub stars The incredible Kubernetes ecosystem
  • 31. @BretMcG github.com/bretmcg Isolation: Keep jobs from interfering with each other Scheduling: Where should my job be run? Lifecycle: Keep my job running Discovery: Where is my job now? Constituency: Who is part of my job? Scale-up: Making my jobs bigger or smaller Auth{n,z}: Who can do things to my job? Monitoring: What’s happening with my job? Health: How is my job feeling? Container orchestration
  • 32. @BretMcG github.com/bretmcg Kubernetes abstracts away infrastructure Nodes Master
  • 33. @BretMcG github.com/bretmcg Developers using Kubernetes still have a lot to do Have to do Write code Build docker image Upload image to registry Deploy service Expose to the internet Setup logging & monitoring Scale workload Want to do Write code
  • 34. @BretMcG github.com/bretmcg Reasons for using Kubernetes (2014) vs hosted serverless (2014) Reduce lock-in Performance Multi-cloud Customizability Use custom hardware (GPU, TPU, IoT, etc) Offline/reduced connectivity Existing on-prem infrastructure Existing applications
  • 35. @BretMcG github.com/bretmcg Everybody got all fired up about Kubernetes and microservices and then were like ‘Oh s----, what’s going on?’ Istio lets us view our entire system and find trouble spots. Anonymous early adopter Observability:
  • 36. @BretMcG github.com/bretmcg Traffic control Observability Fault-injection Security Hybrid cloud Istio
  • 37. @BretMcG github.com/bretmcg Example: canaries & traffic steering destination: pictures.example.local match: httpHeaders: user-agent: regex: ^(.*?;)?(iPhone)(;.*)?$ precedence: 2 route: - tags: version: 2.0-alpha env: staging pictures version: 2.0-alpha env: staging version: 1.5 env: prod Proxy Frontend Pictures Proxy Pictures Proxy
  • 38. @BretMcG github.com/bretmcg Kubernetes provides a good operator experience. What about developer experience?
  • 40. @BretMcG github.com/bretmcg Knative Serving defines principled objects Knative defines primitives with clear separation of concerns So far, we used Service, a lite version of Knative objects spec: container: image: gcr.io/knative-samples/simple-app:latest env: - name: SIMPLE_MSG value: "Hello Serverlessconf SF!" Service
  • 41. @BretMcG github.com/bretmcg Configuration Service Knative Serving defines principled objects Knative defines primitives with clear separation of concerns Configuration Current/desired state for your application Code & configuration (separated, ala 12 factor)
  • 42. @BretMcG github.com/bretmcg Revision Configuration Service Knative Serving defines principled objects Knative defines primitives with clear separation of concerns Configuration Current/desired state for your application Code & configuration (separated, ala 12 factor) Revision Point in time snapshots for your code and configuration
  • 43. @BretMcG github.com/bretmcg Knative Serving defines principled objects Revision Knative defines primitives with clear separation of concerns Configuration Current/desired state for your application Code & configuration (separated, ala 12 factor) Revision Point in time snapshots for your code and configuration Route Maps traffic to a revisions Supports fractional, named routing Route Configuration Service
  • 45. @BretMcG github.com/bretmcg Blue-green deployment model Route 100% Revision Configuration kind: Route ... spec: traffic: - revisionName: blue-green-00001 percent: 100
  • 46. @BretMcG github.com/bretmcg Blue-green deployment model kind: Route ... spec: traffic: - revisionName: blue-green-00001 percent: 100 - revisionName: blue-green-00002 percent: 0 name: v2 Deploy updated version of the service ● Blue continues to take 100% of traffic ● Named route (v2) to green version Revision Route 100% Revision 0% v2 Configuration Configuration
  • 47. @BretMcG github.com/bretmcg Blue-green deployment model Update service configuration ● Send % of traffic to green ● Still have explicit v2 route kind: Route ... spec: traffic: - revisionName: blue-green-00001 percent: 50 - revisionName: blue-green-00002 percent: 50 name: v2 Revision Route 98% Revision 2% (Experiment) Configuration Configuration Revision Route Revision Configuration Configuration
  • 48. @BretMcG github.com/bretmcg Blue-green deployment model Update service configuration ● Incrementally add %, until all traffic is on green ● Keep explicit named route to blue Secured with RBAC-based ACL kind: Route ... spec: traffic: - revisionName: blue-green-00001 percent: 0 name: v1 - revisionName: blue-green-00002 percent: 100 Revision Route 0% v1 Revision 100% Configuration Configuration Revision Route Revision Configuration Configuration
  • 49. @BretMcG github.com/bretmcg Blue-green deployment model Revision Route 0% v1 Revision 100% Configuration Configuration Revision Route Revision Configuration Configuration Demo: Deploying and updating live service
  • 50. @BretMcG github.com/bretmcg More Knative pieces Knative Build enables source/git based deployments Knative Events compatible with CNCF standard Cloud Events Knative scales down when you don’t need it Knative scales up linearly with your load ● Supports unpredictable usage pattern ● 1-n when you app starts taking traffic
  • 51. @BretMcG github.com/bretmcg Knative auto-builds Supports GitOps or src-to-URL development patterns Why developers care? ● No cross-compiling toil. ● No need for Docker locally. ● Cloud caching, faster image push. ● Tooling ecosystem for Enterprise Policy to audit Builds. Loosely coupled ● Use it to get started, and graduate to decoupled CI. ● Keep your existing CI/CD to get started, and graduate to audited Builds.
  • 52. @BretMcG github.com/bretmcg Knative has opinions but is extensible Knative API ● Event sources, event types ● Buildpack build templates ● Network configuration ● Logging targets Some opinions may not be ideal for your use-case Kubernetes ● Auto-scaling strategy ● Function invokers ● Message bus
  • 53. @BretMcG github.com/bretmcg GKE serverless add-on Available for all later this year Request early access today at g.co/serverlessaddon GKE serverless add-on
  • 54. @BretMcG github.com/bretmcg The goal is more serverless experiences for more developers. Even if it’s not perfectly serverless, happy devs will drive organizational change.
  • 55. @BretMcG github.com/bretmcg Resources cloud.google.com/serverless Knative github.com/knative slack.knative.dev GKE serverless add-on (sign-up) g.co/serverlessaddon Containers on Cloud Functions (sign-up) g.co/serverlesscontainers Thank you! Bret McGowen @BretMcG
  • 56. @BretMcG github.com/bretmcg Connect with me GitHub - github.com/bretmcg SlideShare - slideshare.net/bretmc My LinkTree - inktr.ee/bretmcg YouTube - youtube.com/c/BretMcG Speaker Deck - speakerdeck.com/bretmcg Sessionize - sessionize.com/bretmcg LinkedIn - linkedin.com/in/bretmcgowen Instagram - instagram.com/bret.mcgowen Thank you! Bret McGowen @BretMcG