SlideShare une entreprise Scribd logo
1  sur  31
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Forrest Brazeal
Sr. Cloud Architect, Trek10
DEV12
Living On The Edge with AWS
Greengrass
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Forrest Brazeal
• AWS Serverless Hero
• Cloud Architect at Trek10
• Cartoons, etc at
A Cloud Guru
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Greengrass
- Announced at re:Invent 2016, GA in summer 2017
- Extension of AWS IoT
- Lets you run Lambda functions on edge devices
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Hold up. Why would I want to do
that?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
History time!
• AWS released their IoT service at re:Invent 2015.
• It lets you hook IoT devices into a cloud gateway and pass
messages via MQTT, HTTP, WebSockets, etc.
• IMPORTANT: message broker, rules, orchestration, etc all
live in the cloud gateway ("IoT Core").
• Cool, but …
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What if we moved our device gateway to the edge?
• Lower latency
• Works with intermittent/poor internet connectivity
• Potential compliance wins
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The Case For Greengrass
• “Laws of the land, of physics, of economics”
• You can manage your edge code the same way you
manage your cloud code (great if you have a serverless
architecture)
• Tightly-integrated security model
(Fun side note: if you ever wanted to poke around in a
Lambda container, now you can!)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Let’s follow a humble Lambda
function on its epic journey to the
edge …
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Greengrass Groups
• Fundamental abstraction
• Location: CLOUD
• Defines the state of your connected devices
• Provides service discovery
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Greengrass Core Device
• A computer running the Greengrass service
• Location: EDGE
• The ”brains” of your operation at the edge
• ONE per group (for now)
• Can run long-lived Lambda functions!
• Example: a Raspberry Pi running Greengrass software
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Greengrass Resources
• Sensors, filesystems, or anything mounted to your Core
device
• Location: EDGE
• You have to give your Lambda functions specific
permissions to access these
• Example: a camera plugged into a Raspberry Pi
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Greengrass Devices
• Basically, another word for IoT Things
• Location: EDGE
• CANNOT run Lambda functions
• Talk to each other, the Greengrass Core, and AWS via
subscriptions
• Example: an IoT thermometer sending telemetry data to the
Core device
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Lessons learned
• A lot of Greengrass is an abstraction on existing AWS IoT
primitives.
• When you click “Use easy creation” in the Greengrass
Group console, this happens…
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Easy Group Creation
1. Greengrass Group created
2. IoT keys and certificate created
3. IoT Thing created (for Greengrass Core)
4. Certificate principal attached to Core thing
5. IoT policy created for Core thing with Greengrass, IoT
permissions
6. Cert attached to IoT policy
7. Core thing defined in Greengrass group
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Sadly, Greengrass does not have
CloudFormation support.
(Yet!)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Any time we update our Lambda code, we have to…
• Update the Lambda function
• Publish a new version of the Lambda function
• Associate that version with the Lambda alias used by our
existing Greengrass group
• Create a new deployment of our Greengrass group
That sounds like something we should automate.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
SAM to the rescue
DeviceCoreFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: device/
Handler: device. handler
AutoPublishAlias: !Ref FunctionAlias
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
SAM to the rescue
DeviceCoreFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: device/
Handler: device. handler
AutoPublishAlias: !Ref FunctionAlias
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
SAM to the rescue
• Now we can use a CloudFormation custom resource to
deploy the Greengrass group
• Full code on the Trek10 blog:
https://www.trek10.com/blog/sam-greengrass-lambda-
update
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
More cool stuff
• Device shadows
• ML inference at the edge
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Real world use case
• Quick service restaurant
• Real time food quality analysis
• Is this sandwich too toasty?
• How many pieces of chicken in this bucket?
• Does this pizza have the right toppings?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Reach out…
Email: fbrazeal@trek10.com
Twitter: @forrestbrazeal
Forrest Brazeal
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Q & A

Contenu connexe

Tendances

SRV205 Architectures and Strategies for Building Modern Applications on AWS
 SRV205 Architectures and Strategies for Building Modern Applications on AWS SRV205 Architectures and Strategies for Building Modern Applications on AWS
SRV205 Architectures and Strategies for Building Modern Applications on AWSAmazon Web Services
 
Introducing AWS Cloud9 - AWS Online Tech Talks
Introducing AWS Cloud9 - AWS Online Tech TalksIntroducing AWS Cloud9 - AWS Online Tech Talks
Introducing AWS Cloud9 - AWS Online Tech TalksAmazon Web Services
 
AWS Lambda use cases and best practices - Builders Day Israel
AWS Lambda use cases and best practices - Builders Day IsraelAWS Lambda use cases and best practices - Builders Day Israel
AWS Lambda use cases and best practices - Builders Day IsraelAmazon Web Services
 
An Introduction to AWS IoT - Web Summit Lisbon
An Introduction to AWS IoT - Web Summit LisbonAn Introduction to AWS IoT - Web Summit Lisbon
An Introduction to AWS IoT - Web Summit LisbonBoaz Ziniman
 
Adding the Sec to Your DevOps Pipelines (SEC332-R1) - AWS re:Invent 2018
Adding the Sec to Your DevOps Pipelines (SEC332-R1) - AWS re:Invent 2018Adding the Sec to Your DevOps Pipelines (SEC332-R1) - AWS re:Invent 2018
Adding the Sec to Your DevOps Pipelines (SEC332-R1) - AWS re:Invent 2018Amazon Web Services
 
Serverless SaaS apllications on AWS
Serverless SaaS apllications on AWSServerless SaaS apllications on AWS
Serverless SaaS apllications on AWSAmazon Web Services
 
Running Kubernetes Across Multiple AWS Accounts (CON409) - AWS re:Invent 2018
Running Kubernetes Across Multiple AWS Accounts (CON409) - AWS re:Invent 2018Running Kubernetes Across Multiple AWS Accounts (CON409) - AWS re:Invent 2018
Running Kubernetes Across Multiple AWS Accounts (CON409) - AWS re:Invent 2018Amazon Web Services
 
Modernizing on EKS (Keynote)- AWS Container Day 2019 Barcelona
Modernizing on EKS (Keynote)- AWS Container Day 2019 BarcelonaModernizing on EKS (Keynote)- AWS Container Day 2019 Barcelona
Modernizing on EKS (Keynote)- AWS Container Day 2019 BarcelonaAmazon Web Services
 
Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...
Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...
Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...Amazon Web Services
 
SID305 AWS Certificate Manager Private CA
SID305 AWS Certificate Manager Private CASID305 AWS Certificate Manager Private CA
SID305 AWS Certificate Manager Private CAAmazon Web Services
 
ENT304 Enabling Self Service for Data Scientists with AWS Service Catalog
ENT304 Enabling Self Service for Data Scientists with AWS Service CatalogENT304 Enabling Self Service for Data Scientists with AWS Service Catalog
ENT304 Enabling Self Service for Data Scientists with AWS Service CatalogAmazon Web Services
 
Protecting Game Servers Against DDoS Attacks (SEC420-R1) - AWS re:Invent 2018
Protecting Game Servers Against DDoS Attacks (SEC420-R1) - AWS re:Invent 2018Protecting Game Servers Against DDoS Attacks (SEC420-R1) - AWS re:Invent 2018
Protecting Game Servers Against DDoS Attacks (SEC420-R1) - AWS re:Invent 2018Amazon Web Services
 
LFS309-High-Throughput Genomics on AWS.pdf
LFS309-High-Throughput Genomics on AWS.pdfLFS309-High-Throughput Genomics on AWS.pdf
LFS309-High-Throughput Genomics on AWS.pdfAmazon Web Services
 
Building Microservices with the Twelve Factor App Pattern on AWS
Building Microservices with the Twelve Factor App Pattern on AWSBuilding Microservices with the Twelve Factor App Pattern on AWS
Building Microservices with the Twelve Factor App Pattern on AWSAmazon Web Services
 
Secure your AWS Account and your Organization's Accounts
Secure your AWS Account and your Organization's Accounts Secure your AWS Account and your Organization's Accounts
Secure your AWS Account and your Organization's Accounts Amazon Web Services
 
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...Amazon Web Services
 
DEM08 Use Cisco Cloud Connect to Securely Extend Private Network to AWS and M...
DEM08 Use Cisco Cloud Connect to Securely Extend Private Network to AWS and M...DEM08 Use Cisco Cloud Connect to Securely Extend Private Network to AWS and M...
DEM08 Use Cisco Cloud Connect to Securely Extend Private Network to AWS and M...Amazon Web Services
 
Testing on AWS - AWS IL meetup
Testing on AWS - AWS IL meetupTesting on AWS - AWS IL meetup
Testing on AWS - AWS IL meetupBoaz Ziniman
 
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...Amazon Web Services
 

Tendances (20)

SRV205 Architectures and Strategies for Building Modern Applications on AWS
 SRV205 Architectures and Strategies for Building Modern Applications on AWS SRV205 Architectures and Strategies for Building Modern Applications on AWS
SRV205 Architectures and Strategies for Building Modern Applications on AWS
 
Introducing AWS Cloud9 - AWS Online Tech Talks
Introducing AWS Cloud9 - AWS Online Tech TalksIntroducing AWS Cloud9 - AWS Online Tech Talks
Introducing AWS Cloud9 - AWS Online Tech Talks
 
AWS Lambda use cases and best practices - Builders Day Israel
AWS Lambda use cases and best practices - Builders Day IsraelAWS Lambda use cases and best practices - Builders Day Israel
AWS Lambda use cases and best practices - Builders Day Israel
 
An Introduction to AWS IoT - Web Summit Lisbon
An Introduction to AWS IoT - Web Summit LisbonAn Introduction to AWS IoT - Web Summit Lisbon
An Introduction to AWS IoT - Web Summit Lisbon
 
Adding the Sec to Your DevOps Pipelines (SEC332-R1) - AWS re:Invent 2018
Adding the Sec to Your DevOps Pipelines (SEC332-R1) - AWS re:Invent 2018Adding the Sec to Your DevOps Pipelines (SEC332-R1) - AWS re:Invent 2018
Adding the Sec to Your DevOps Pipelines (SEC332-R1) - AWS re:Invent 2018
 
Serverless SaaS apllications on AWS
Serverless SaaS apllications on AWSServerless SaaS apllications on AWS
Serverless SaaS apllications on AWS
 
Running Kubernetes Across Multiple AWS Accounts (CON409) - AWS re:Invent 2018
Running Kubernetes Across Multiple AWS Accounts (CON409) - AWS re:Invent 2018Running Kubernetes Across Multiple AWS Accounts (CON409) - AWS re:Invent 2018
Running Kubernetes Across Multiple AWS Accounts (CON409) - AWS re:Invent 2018
 
Modernizing on EKS (Keynote)- AWS Container Day 2019 Barcelona
Modernizing on EKS (Keynote)- AWS Container Day 2019 BarcelonaModernizing on EKS (Keynote)- AWS Container Day 2019 Barcelona
Modernizing on EKS (Keynote)- AWS Container Day 2019 Barcelona
 
Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...
Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...
Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...
 
SID305 AWS Certificate Manager Private CA
SID305 AWS Certificate Manager Private CASID305 AWS Certificate Manager Private CA
SID305 AWS Certificate Manager Private CA
 
ENT304 Enabling Self Service for Data Scientists with AWS Service Catalog
ENT304 Enabling Self Service for Data Scientists with AWS Service CatalogENT304 Enabling Self Service for Data Scientists with AWS Service Catalog
ENT304 Enabling Self Service for Data Scientists with AWS Service Catalog
 
HLC308_Refactoring to the Cloud
HLC308_Refactoring to the CloudHLC308_Refactoring to the Cloud
HLC308_Refactoring to the Cloud
 
Protecting Game Servers Against DDoS Attacks (SEC420-R1) - AWS re:Invent 2018
Protecting Game Servers Against DDoS Attacks (SEC420-R1) - AWS re:Invent 2018Protecting Game Servers Against DDoS Attacks (SEC420-R1) - AWS re:Invent 2018
Protecting Game Servers Against DDoS Attacks (SEC420-R1) - AWS re:Invent 2018
 
LFS309-High-Throughput Genomics on AWS.pdf
LFS309-High-Throughput Genomics on AWS.pdfLFS309-High-Throughput Genomics on AWS.pdf
LFS309-High-Throughput Genomics on AWS.pdf
 
Building Microservices with the Twelve Factor App Pattern on AWS
Building Microservices with the Twelve Factor App Pattern on AWSBuilding Microservices with the Twelve Factor App Pattern on AWS
Building Microservices with the Twelve Factor App Pattern on AWS
 
Secure your AWS Account and your Organization's Accounts
Secure your AWS Account and your Organization's Accounts Secure your AWS Account and your Organization's Accounts
Secure your AWS Account and your Organization's Accounts
 
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...
 
DEM08 Use Cisco Cloud Connect to Securely Extend Private Network to AWS and M...
DEM08 Use Cisco Cloud Connect to Securely Extend Private Network to AWS and M...DEM08 Use Cisco Cloud Connect to Securely Extend Private Network to AWS and M...
DEM08 Use Cisco Cloud Connect to Securely Extend Private Network to AWS and M...
 
Testing on AWS - AWS IL meetup
Testing on AWS - AWS IL meetupTesting on AWS - AWS IL meetup
Testing on AWS - AWS IL meetup
 
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
 

Similaire à Living on the Edge with AWS Greengrass

Customizing Content Delivery with Lambda@Edge (CTD415-R1) - AWS re:Invent 2018
Customizing Content Delivery with Lambda@Edge (CTD415-R1) - AWS re:Invent 2018Customizing Content Delivery with Lambda@Edge (CTD415-R1) - AWS re:Invent 2018
Customizing Content Delivery with Lambda@Edge (CTD415-R1) - AWS re:Invent 2018Amazon Web Services
 
AWS Greengrass, Containers, and Your Dev Process for Edge Apps (GPSWS404) - A...
AWS Greengrass, Containers, and Your Dev Process for Edge Apps (GPSWS404) - A...AWS Greengrass, Containers, and Your Dev Process for Edge Apps (GPSWS404) - A...
AWS Greengrass, Containers, and Your Dev Process for Edge Apps (GPSWS404) - A...Amazon Web Services
 
Wildrydes Serverless Workshop Tel Aviv
Wildrydes Serverless Workshop Tel AvivWildrydes Serverless Workshop Tel Aviv
Wildrydes Serverless Workshop Tel AvivBoaz Ziniman
 
Serverless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless EventServerless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless EventBoaz Ziniman
 
Orchestrating containers on AWS | AWS Summit Tel Aviv 2019
Orchestrating containers on AWS  | AWS Summit Tel Aviv 2019Orchestrating containers on AWS  | AWS Summit Tel Aviv 2019
Orchestrating containers on AWS | AWS Summit Tel Aviv 2019AWS Summits
 
Orchestrating containers on AWS | AWS Summit Tel Aviv 2019
Orchestrating containers on AWS  | AWS Summit Tel Aviv 2019Orchestrating containers on AWS  | AWS Summit Tel Aviv 2019
Orchestrating containers on AWS | AWS Summit Tel Aviv 2019Amazon Web Services
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesAmazon Web Services
 
Serverless best practices plus design principles 20m version
Serverless   best practices plus design principles 20m versionServerless   best practices plus design principles 20m version
Serverless best practices plus design principles 20m versionHeitor Lessa
 
SRV206 Edge Computing with AWS Greengrass
 SRV206 Edge Computing with AWS Greengrass SRV206 Edge Computing with AWS Greengrass
SRV206 Edge Computing with AWS GreengrassAmazon Web Services
 
Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28Boaz Ziniman
 
Introduction to Serverless computing and AWS Lambda | AWS Floor28
Introduction to Serverless computing and AWS Lambda | AWS Floor28Introduction to Serverless computing and AWS Lambda | AWS Floor28
Introduction to Serverless computing and AWS Lambda | AWS Floor28Amazon Web Services
 
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018Amazon Web Services
 
Build Enterprise-Grade Serverless Apps - SRV315 - Chicago AWS Summit
Build Enterprise-Grade Serverless Apps - SRV315 - Chicago AWS SummitBuild Enterprise-Grade Serverless Apps - SRV315 - Chicago AWS Summit
Build Enterprise-Grade Serverless Apps - SRV315 - Chicago AWS SummitAmazon Web Services
 
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...Chris Munns
 
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...Amazon Web Services
 
Serverless Architectural Patterns and Best Practices
Serverless Architectural Patterns and Best PracticesServerless Architectural Patterns and Best Practices
Serverless Architectural Patterns and Best PracticesAmazon Web Services
 
[NEW LAUNCH!] Lambda Layers (SRV375) - AWS re:Invent 2018
[NEW LAUNCH!] Lambda Layers (SRV375) - AWS re:Invent 2018[NEW LAUNCH!] Lambda Layers (SRV375) - AWS re:Invent 2018
[NEW LAUNCH!] Lambda Layers (SRV375) - AWS re:Invent 2018Amazon Web Services
 
Building serverless enterprise applications - SRV315 - Toronto AWS Summit
Building serverless enterprise applications - SRV315 - Toronto AWS SummitBuilding serverless enterprise applications - SRV315 - Toronto AWS Summit
Building serverless enterprise applications - SRV315 - Toronto AWS SummitAmazon Web Services
 
Scaling from zero to millions of users
Scaling from zero to millions of usersScaling from zero to millions of users
Scaling from zero to millions of usersAmazon Web Services
 
Enabling Deep Learning in IoT Applications with Apache MXNet
Enabling Deep Learning in IoT Applications with Apache MXNetEnabling Deep Learning in IoT Applications with Apache MXNet
Enabling Deep Learning in IoT Applications with Apache MXNetAmazon Web Services
 

Similaire à Living on the Edge with AWS Greengrass (20)

Customizing Content Delivery with Lambda@Edge (CTD415-R1) - AWS re:Invent 2018
Customizing Content Delivery with Lambda@Edge (CTD415-R1) - AWS re:Invent 2018Customizing Content Delivery with Lambda@Edge (CTD415-R1) - AWS re:Invent 2018
Customizing Content Delivery with Lambda@Edge (CTD415-R1) - AWS re:Invent 2018
 
AWS Greengrass, Containers, and Your Dev Process for Edge Apps (GPSWS404) - A...
AWS Greengrass, Containers, and Your Dev Process for Edge Apps (GPSWS404) - A...AWS Greengrass, Containers, and Your Dev Process for Edge Apps (GPSWS404) - A...
AWS Greengrass, Containers, and Your Dev Process for Edge Apps (GPSWS404) - A...
 
Wildrydes Serverless Workshop Tel Aviv
Wildrydes Serverless Workshop Tel AvivWildrydes Serverless Workshop Tel Aviv
Wildrydes Serverless Workshop Tel Aviv
 
Serverless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless EventServerless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless Event
 
Orchestrating containers on AWS | AWS Summit Tel Aviv 2019
Orchestrating containers on AWS  | AWS Summit Tel Aviv 2019Orchestrating containers on AWS  | AWS Summit Tel Aviv 2019
Orchestrating containers on AWS | AWS Summit Tel Aviv 2019
 
Orchestrating containers on AWS | AWS Summit Tel Aviv 2019
Orchestrating containers on AWS  | AWS Summit Tel Aviv 2019Orchestrating containers on AWS  | AWS Summit Tel Aviv 2019
Orchestrating containers on AWS | AWS Summit Tel Aviv 2019
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Serverless best practices plus design principles 20m version
Serverless   best practices plus design principles 20m versionServerless   best practices plus design principles 20m version
Serverless best practices plus design principles 20m version
 
SRV206 Edge Computing with AWS Greengrass
 SRV206 Edge Computing with AWS Greengrass SRV206 Edge Computing with AWS Greengrass
SRV206 Edge Computing with AWS Greengrass
 
Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28
 
Introduction to Serverless computing and AWS Lambda | AWS Floor28
Introduction to Serverless computing and AWS Lambda | AWS Floor28Introduction to Serverless computing and AWS Lambda | AWS Floor28
Introduction to Serverless computing and AWS Lambda | AWS Floor28
 
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
 
Build Enterprise-Grade Serverless Apps - SRV315 - Chicago AWS Summit
Build Enterprise-Grade Serverless Apps - SRV315 - Chicago AWS SummitBuild Enterprise-Grade Serverless Apps - SRV315 - Chicago AWS Summit
Build Enterprise-Grade Serverless Apps - SRV315 - Chicago AWS Summit
 
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
 
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
 
Serverless Architectural Patterns and Best Practices
Serverless Architectural Patterns and Best PracticesServerless Architectural Patterns and Best Practices
Serverless Architectural Patterns and Best Practices
 
[NEW LAUNCH!] Lambda Layers (SRV375) - AWS re:Invent 2018
[NEW LAUNCH!] Lambda Layers (SRV375) - AWS re:Invent 2018[NEW LAUNCH!] Lambda Layers (SRV375) - AWS re:Invent 2018
[NEW LAUNCH!] Lambda Layers (SRV375) - AWS re:Invent 2018
 
Building serverless enterprise applications - SRV315 - Toronto AWS Summit
Building serverless enterprise applications - SRV315 - Toronto AWS SummitBuilding serverless enterprise applications - SRV315 - Toronto AWS Summit
Building serverless enterprise applications - SRV315 - Toronto AWS Summit
 
Scaling from zero to millions of users
Scaling from zero to millions of usersScaling from zero to millions of users
Scaling from zero to millions of users
 
Enabling Deep Learning in IoT Applications with Apache MXNet
Enabling Deep Learning in IoT Applications with Apache MXNetEnabling Deep Learning in IoT Applications with Apache MXNet
Enabling Deep Learning in IoT Applications with Apache MXNet
 

Dernier

Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 

Dernier (20)

Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 

Living on the Edge with AWS Greengrass

  • 1. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Forrest Brazeal Sr. Cloud Architect, Trek10 DEV12 Living On The Edge with AWS Greengrass
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Forrest Brazeal • AWS Serverless Hero • Cloud Architect at Trek10 • Cartoons, etc at A Cloud Guru
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Greengrass - Announced at re:Invent 2016, GA in summer 2017 - Extension of AWS IoT - Lets you run Lambda functions on edge devices
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Hold up. Why would I want to do that?
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. History time! • AWS released their IoT service at re:Invent 2015. • It lets you hook IoT devices into a cloud gateway and pass messages via MQTT, HTTP, WebSockets, etc. • IMPORTANT: message broker, rules, orchestration, etc all live in the cloud gateway ("IoT Core"). • Cool, but …
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What if we moved our device gateway to the edge? • Lower latency • Works with intermittent/poor internet connectivity • Potential compliance wins
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. The Case For Greengrass • “Laws of the land, of physics, of economics” • You can manage your edge code the same way you manage your cloud code (great if you have a serverless architecture) • Tightly-integrated security model (Fun side note: if you ever wanted to poke around in a Lambda container, now you can!)
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Let’s follow a humble Lambda function on its epic journey to the edge …
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Greengrass Groups • Fundamental abstraction • Location: CLOUD • Defines the state of your connected devices • Provides service discovery
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Greengrass Core Device • A computer running the Greengrass service • Location: EDGE • The ”brains” of your operation at the edge • ONE per group (for now) • Can run long-lived Lambda functions! • Example: a Raspberry Pi running Greengrass software
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Greengrass Resources • Sensors, filesystems, or anything mounted to your Core device • Location: EDGE • You have to give your Lambda functions specific permissions to access these • Example: a camera plugged into a Raspberry Pi
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Greengrass Devices • Basically, another word for IoT Things • Location: EDGE • CANNOT run Lambda functions • Talk to each other, the Greengrass Core, and AWS via subscriptions • Example: an IoT thermometer sending telemetry data to the Core device
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Lessons learned • A lot of Greengrass is an abstraction on existing AWS IoT primitives. • When you click “Use easy creation” in the Greengrass Group console, this happens…
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Easy Group Creation 1. Greengrass Group created 2. IoT keys and certificate created 3. IoT Thing created (for Greengrass Core) 4. Certificate principal attached to Core thing 5. IoT policy created for Core thing with Greengrass, IoT permissions 6. Cert attached to IoT policy 7. Core thing defined in Greengrass group
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Sadly, Greengrass does not have CloudFormation support. (Yet!)
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Any time we update our Lambda code, we have to… • Update the Lambda function • Publish a new version of the Lambda function • Associate that version with the Lambda alias used by our existing Greengrass group • Create a new deployment of our Greengrass group That sounds like something we should automate.
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. SAM to the rescue DeviceCoreFunction: Type: AWS::Serverless::Function Properties: CodeUri: device/ Handler: device. handler AutoPublishAlias: !Ref FunctionAlias
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. SAM to the rescue DeviceCoreFunction: Type: AWS::Serverless::Function Properties: CodeUri: device/ Handler: device. handler AutoPublishAlias: !Ref FunctionAlias
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. SAM to the rescue • Now we can use a CloudFormation custom resource to deploy the Greengrass group • Full code on the Trek10 blog: https://www.trek10.com/blog/sam-greengrass-lambda- update
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. More cool stuff • Device shadows • ML inference at the edge
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Real world use case • Quick service restaurant • Real time food quality analysis • Is this sandwich too toasty? • How many pieces of chicken in this bucket? • Does this pizza have the right toppings?
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Reach out… Email: fbrazeal@trek10.com Twitter: @forrestbrazeal Forrest Brazeal
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Q & A

Notes de l'éditeur

  1. Group CA (used by AWS Greengrass devices to validate the certificate presented by an AWS Greengrass core device during TLS mutual authentication.) X.509 cert (per device) Two roles: service role (lets Greengrass talk to Lambda and IoT – only need to set this up once per account) and custom group role (lets you talk to the cloud from your core device)
  2. This amazing line of config singlehandedly creates an alias for the function, publishes a new version, points the alias to the version, and points all event sources to the alias, any time your function code changes.