SlideShare a Scribd company logo
(and AWS Lambda)
Immutable Deployments with AWS CloudFormation and AWS Lambda
& aoepeople!
E-Commerce:
Magento
CMS:
TYPO3
Portals:
ZF, Symfony,…
Mobile Searchperience:
ElasticSearch
250+ people
world-wide
(in 8 locations)
Global
Enterprise
Projects
Infrastructure:
AWS
CloudFormation Lambda “Immutable”
/i(m)ˈmyo͞ odəb(ə)l/
adjective
unchanging over time or unable to be changed.
“disposable”
“ephemeral”
Pet
Cattle
Immutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS Lambda
not disposable disposable
disposable
not disposable
disposable
Static Resources BuildVPC Build
Immutable Deployments with AWS CloudFormation and AWS Lambda
Build Bucket
IAM Setup
VPC
Static Resources
Build
Manual Setup
separate
CloudFormation
Stacks
use resources
from underlying
stacks as input
parameters
Lambda functions,
Monitoring,…
Build Bucket
IAM Setup
Environment A (e.g. prod) Environment B (e.g. stage)
VPC VPC
Static Resources Static Resources
Build BuildBuild Build
Build X Build X+1 Build X Build X+1
Manual Setup
different scopes
(build, environment,
account, global…)
Build Bucket
IAM Setup
Environment A (e.g. prod) Environment B (e.g. stage) Environment C (e.g. qa) Environment D (e.g. dev)
IAM Setup
VPC VPC VPC VPC
Static Resources Static Resources Static Resources Static Resources
Build BuildBuild Build Build Build Build Build
Build X Build X+1 Build X Build X+1 Build X Build X+1 Build X Build X+1
Manual Setup Manual Setup
Build Bucket Access
Private subnets
Public subnets
ElastiCache (Redis)
with replication groups
for cache and sessions
RDS (multi-az) with
DB subnet group
Bastion
server
s3: media
storage*
Route 53: DNS
configuration
CloudFront
distribution
SSL
Certificates
Security group for Varnish servers
Security group for Magento servers
Security group for Load Balancer
Static Resources
Build
Auto Scaling group
Auto Scaling group
Elastic Load
Balancer
Auto-
Scaling
Group
Launch
Configurati
on
Scaling
Policy
Build
Auto Scaling group
Auto Scaling group
Elastic Load
Balancer
Auto-
Scaling
Group
Launch
Configurati
on
Scaling
Policy
Auto Scaling group Auto Scaling group
+1
Baking AMIs
“Chef vs. Puppet?”
http://fbrnc.net/blog/2015/11/
how-to-provision-an-ec2-instance
“…Ansible!”
“BASH!”
Keep it simple…!
✔ ✔ (✔)
the “last mile”
most
underestimated
CFN feature!
Immutable Deployments with AWS CloudFormation and AWS Lambda
var r = require('cfn-response');
exports.handler = function (event, context) {
[…]
var res = {};
if (event.RequestType == 'Create') {
res.Password = randomPassword(20);
}
r.send(event, context, r.SUCCESS, res);
};
"IndexerDb": {
"Type": "AWS::RDS::DBInstance",
"Properties": {
[...]
"MasterUserPassword": {"Fn::GetAtt": ["GenerateDbPassword", "Password"]},
[...]
}
},
"GenerateDbPassword": {
"Type": "Custom::PasswordGenerator",
"Properties": {
"ServiceToken": {"Ref": "PasswordGeneratorArn"}
}
},
Immutable Deployments with AWS CloudFormation and AWS Lambda
• launch some ASGs (set DesiredCapacity)
• create database passwords
• tag all resources (incl. ElastiCache!)
• restore database and media files
• (one-time) install scripts (db migrations,…)
• detect Varnish backends
• wait for healthy backends in the ELBs
• run infrastructure tests
• cache warming
• update Route53 records sets
• delete old stacks
• …
Immutable Deployments with AWS CloudFormation and AWS Lambda
DesiredCapacity =
Number of Instances in current ASG x 1.2
better safe
than sorry…
DesiredCapacity =
Number of Instances in current ASG x 1.2
DesiredCapacity =
Number of Instances in current ASG x 1.2
ScalingPolicy
takes care…
"CountInstances": {
"Type": "Custom::InstanceCounter",
"Properties": {
"ServiceToken": {"Ref": "InstanceCounter"},
"AutoScalingGroupTags": [
{"Key": "Environment", "Value": "prod"},
{"Key": "Type", "Value": "Frontend"}
],
"Min": 1, "Max": 10, "Factor": "1.5"
}
},
"FrontendAsg": {
"Type": "AWS::AutoScaling::AutoScalingGroup",
"Properties": {
[...]
"DesiredCapacity": {"Fn::GetAtt": ["CountInstances", "Count"]},
"Tags": [
{"Key": "Environment", "Value": "prod", "PropagateAtLaunch": true},
{"Key": "Type", "Value": “Frontend", "PropagateAtLaunch": true}
]
}
},
Update Route53 record set
Update Route53 record set
Delete old stacks
"UpdateR53": {
"DependsOn": [ "MagentoWaitCondition", "MagentoWorkerWaitCondition", "Elb"],
"Type": "Custom::Route53Update",
"Properties": {
"ServiceToken": {"Ref": "R53Updater"},
"Name": {"Fn::Join": ["", [ "www-", {"Ref": "EnvironmentName"} ]]},
"HostedZoneId": {"Ref": "HostedZoneId"},
"AliasTargetDNSName": {"Fn::GetAtt": ["Elb", "DNSName"]},
"AliasTargetHostedZoneId": {"Fn::GetAtt": ["Elb", "CanonicalHostedZoneNameID"]},
"Comment": "Updated via CloudFormation/Lambda"
}
},
"DeleteStacks": {
"Condition": "DeleteOldStacks",
"DependsOn": ["UpdateR53"],
"Type": "Custom::StackDeleter",
"Properties": {
"ServiceToken": {"Ref": "StackDeleter"},
"TagFilter": { "Environment": {"Ref": "EnvironmentName"}, "Type": "Deployment"},
"ExceptStackName": {"Ref": "AWS::StackName"}
}
}
Immutable Deployments with AWS CloudFormation and AWS Lambda
+1
Baking AMIs
Tools+CI
Have fun
filling out
47 form
fields! :)
aoepeople/stackformation
command-line tool
(Symfony console, uses
AWS SDK for PHP)
integrates nicely into
your CI (Jenknis,…)
pre-process
Userdata
Lambda JS
“Template”
superset of CFN
template (JSON)
Parameterslookup from other
stacks, env vars,…
Template
Parameter
Values
create/
update
Stack policies, Tags,…
Stack
magento-stage-build-5
Stack
magento-stage-build-6
Stack
magento-prod-build-6
Stack
magento-prod-build-5
CloudFormation
Template
merge &
pre-process
“CloudFormation+X”
Template(s)
+
Dynamic Parameters
+
Stack Policies
+
Behavior
+
Tags
…
Blueprint
magento-{env:ENVIRONMENT}-build-{env:BUILD}
Blueprint
magento-{env:ENVIRONMENT}-setup
Stack
magento-stage-setup
Stack
magento-prod-setup
blueprints:
- stackname: 'magento-{env:BUILD}'
template: 'magento.template'
stackPolicy: 'policy.json'
OnFailure: 'DO_NOTHING'
parameters:
Build: '{env:BUILD}'
KeyPair: '{var:KeyPair}'
VPC: '{resource:setupstack:VPC}'
Subnet: '{resource:setupstack:Subnet}'
InstanceSg: '{resource:setupstack:InstanceSg}'
InstanceProfile: '{output:setupstack:InstanceProfile}'
BootAmi: 'ami-06116566'
tags:
Environment: 'prod'
Build: '{env:BUILD}'
enforce
“immutability” by
denying updates!
aoepeople/cfn-vpc
aoepeople/cfn-lambdahelper
aoepeople/cfn-amibaker
via composer
so we can
integrate this into
our CI pipeline…
•
Immutable Deployments with AWS CloudFormation and AWS Lambda
aoepeople/awsinspector
command-line tool
(Symfony console, uses
AWS SDK for PHP)
Domain models for PHP
$repository = new AwsInspectorModelElbRepository();
$dns = $repository->findElbsByTags([
'Environment' => 'deploy',
'Build' => 554,
'Type' => 'Frontend’
])->getFirst()->getDNSName();
> bin/awsinspector.php ec2:ssh -t Environment:prod –c Type –c Build
filter by tag
Please select an instance
[0] i-1033ed9b (Type: Frontend; Environment: prod; Build: 477)
[1] i-4ff36ec8 (Type: Backend; Environment: prod ; Build: 477)
[2] i-5ab4322b (Type: Worker; Environment: prod; Build: 477)
[3] i-705ad42f (Type: Worker; Environment: prod; Build: 476)
>
• will take jump hosts into
account (ProxyCommand)
• auto-detects your local
(encrypted) private keys
• multiplexed ssh connections
• run commands directly
Immutable Deployments with AWS CloudFormation and AWS Lambda
logins,
orders,…
deployments,
scaling activity,…
JMeter
response time,
error rate,…
CPU, load,
network I/O,…
correlate
metrics from
various sources
GrafanaElasticSearch
(Service)
time-series
database
leftovers from
“disposed” resources
…
“Ready for testing”
(WaitCondition)
setup
terminate
instances
and wait
• Create Security
allowing access
to all IPs and
attach to UAT’s
ELB
environment
(incl. restoring db+media
snapshot from prod)
environment*
Delete self*
*via Lambda custom resource
Pushing samples in near real-time
via custom JMeter backend
listener
“Testing Completed”
(WaitCondition)
JMeter test
CloudFormation
Stack
GrafanaElasticSearch
(Service)
CloudWatch
Lambda
find relevant resources for the
current deployment (via tags),
collect metrics,
and push them to ElasticSearch
CloudFormation Stack
• Install JMeter
• Download
testcase from S3
• Signal “Ready”
and wait
• Create SG
allowing access
to all IPs and
attach to UAT’s
ELB
Auto-Scaling Group of Load Generator Instances
Run Stress Test2.
Time
timeout 3600 jmeter –n –t testcase.jmx
Delete test
environment*
Delete self*
3. 4.
*via Lambda custom resource
…
Spin up test
environment
(incl. restoring db+media
snapshot from prod)
1.
CloudFormation
Stack
setup
terminate
instances
JMeter test
Pushing samples in near real-time
via custom JMeter backend listener
“Ready for testing”
(WaitCondition)
“Testing Completed”
(WaitCondition)
Immutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS Lambda
https://blogs.aws.amazon.com/application-
management/post/Tx38Z5CAM5WWRXW/Faster-Auto-Scaling-in-AWS-
CloudFormation-Stacks-with-Lambda-backed-Custom-Resou
Provisioning
“Ready for baking”
(WaitCondition)
EC2
AMI Baker
(Lambda) Node.js SDK
AWS CLI
“Baking Completed”
(WaitCondition)
shutdown
(-> terminate)
ec2.createImage
aws ec2 wait image-available
AMI Baker
(Lambda) Node.js SDK
ec2.deleteImage
Custom
CloudFormation
Resource
Time
Immutable Deployments with AWS CloudFormation and AWS Lambda
•
Follow me on twitter!
My blog

More Related Content

PPTX
Magento 2 Workflows
Ryan Street
 
ODP
An Introduction to Windows PowerShell
Dale Lane
 
PDF
Play vs Rails
Daniel Cukier
 
PDF
Node.js vs Play Framework (with Japanese subtitles)
Yevgeniy Brikman
 
PDF
Composable and streamable Play apps
Yevgeniy Brikman
 
PPTX
Bosh 2.0
Johannes Engelke
 
PDF
Keeping the frontend under control with Symfony and Webpack
Ignacio Martín
 
KEY
modern module development - Ken Barber 2012 Edinburgh Puppet Camp
Puppet
 
Magento 2 Workflows
Ryan Street
 
An Introduction to Windows PowerShell
Dale Lane
 
Play vs Rails
Daniel Cukier
 
Node.js vs Play Framework (with Japanese subtitles)
Yevgeniy Brikman
 
Composable and streamable Play apps
Yevgeniy Brikman
 
Keeping the frontend under control with Symfony and Webpack
Ignacio Martín
 
modern module development - Ken Barber 2012 Edinburgh Puppet Camp
Puppet
 

What's hot (20)

KEY
Single Page Web Applications with CoffeeScript, Backbone and Jasmine
Paulo Ragonha
 
PDF
Choosing a Javascript Framework
All Things Open
 
PDF
Integrating icinga2 and the HashiCorp suite
Bram Vogelaar
 
PDF
Future of Web Apps: Google Gears
dion
 
PDF
Asynchronous web apps with the Play Framework 2.0
Oscar Renalias
 
PPT
Ant
Manav Prasad
 
PPTX
Varnish Cache and its usage in the real world!
Ivan Chepurnyi
 
PDF
JWT - Sécurisez vos APIs
André Tapia
 
PDF
Rhebok, High Performance Rack Handler / Rubykaigi 2015
Masahiro Nagano
 
PDF
Rails Security
Wen-Tien Chang
 
KEY
Building a real life application in node js
fakedarren
 
PDF
Play Framework: async I/O with Java and Scala
Yevgeniy Brikman
 
PDF
Plugin-based software design with Ruby and RubyGems
Sadayuki Furuhashi
 
PPTX
Creating Reusable Puppet Profiles
Bram Vogelaar
 
PPT
Intro to-ant
Manav Prasad
 
PDF
Handling 10k requests per second with Symfony and Varnish - SymfonyCon Berlin...
Alexander Lisachenko
 
PDF
Getting Started with Ansible
ahamilton55
 
PPTX
Play + scala + reactive mongo
Max Kremer
 
PPTX
Java Play RESTful ebean
Faren faren
 
PPTX
Java Play Restful JPA
Faren faren
 
Single Page Web Applications with CoffeeScript, Backbone and Jasmine
Paulo Ragonha
 
Choosing a Javascript Framework
All Things Open
 
Integrating icinga2 and the HashiCorp suite
Bram Vogelaar
 
Future of Web Apps: Google Gears
dion
 
Asynchronous web apps with the Play Framework 2.0
Oscar Renalias
 
Varnish Cache and its usage in the real world!
Ivan Chepurnyi
 
JWT - Sécurisez vos APIs
André Tapia
 
Rhebok, High Performance Rack Handler / Rubykaigi 2015
Masahiro Nagano
 
Rails Security
Wen-Tien Chang
 
Building a real life application in node js
fakedarren
 
Play Framework: async I/O with Java and Scala
Yevgeniy Brikman
 
Plugin-based software design with Ruby and RubyGems
Sadayuki Furuhashi
 
Creating Reusable Puppet Profiles
Bram Vogelaar
 
Intro to-ant
Manav Prasad
 
Handling 10k requests per second with Symfony and Varnish - SymfonyCon Berlin...
Alexander Lisachenko
 
Getting Started with Ansible
ahamilton55
 
Play + scala + reactive mongo
Max Kremer
 
Java Play RESTful ebean
Faren faren
 
Java Play Restful JPA
Faren faren
 
Ad

Similar to Immutable Deployments with AWS CloudFormation and AWS Lambda (20)

PDF
A 60-mn tour of AWS compute (March 2016)
Julien SIMON
 
PDF
A 60-minute tour of AWS Compute (November 2016)
Julien SIMON
 
PDF
Running and Scaling Magento on AWS
AOE
 
PDF
Let's Code our Infrastructure!
continuousphp
 
PDF
Deploying PHP Applications to AWS Elastic Beanstalk
Boyd Hemphill
 
PDF
Devnexus slides - Amazon Web Services
Tom Elrod
 
PPTX
Tech4Africa 2014
FAschenbrenner
 
PPTX
Introduction to DevOps on AWS
Shiva Narayanaswamy
 
PDF
Amazon Web Services for PHP Developers
Jeremy Lindblom
 
PDF
EC2 AMI Factory with Chef, Berkshelf, and Packer
George Miranda
 
PDF
[AWS Container Service] Getting Started with Cloud Map, App Mesh and Firecracker
Amazon Web Services Korea
 
PPTX
Delivering High-Availability Web Services with NGINX Plus on AWS
NGINX, Inc.
 
PDF
2016-06 - Design your api management strategy - AWS - Microservices on AWS
SmartWave
 
PDF
AWS Training.pdf
SpiritsoftsTraining
 
PDF
AWS Training.pdf
SpiritsoftsTraining
 
PDF
Puppet Camp London 2014: Chasing AMI: baking Amazon machine images with Jenki...
Puppet
 
PDF
Chasing AMI - Building Amazon machine images with Puppet, Packer and Jenkins
Tomas Doran
 
PDF
Auto scaling with Ruby, AWS, Jenkins and Redis
Yi Hsuan (Jeddie) Chuang
 
PPT
Docker Based Hadoop Provisioning
DataWorks Summit
 
PDF
AWS Certified Solutions Architect Associate Notes.pdf
fayoyiwababajide
 
A 60-mn tour of AWS compute (March 2016)
Julien SIMON
 
A 60-minute tour of AWS Compute (November 2016)
Julien SIMON
 
Running and Scaling Magento on AWS
AOE
 
Let's Code our Infrastructure!
continuousphp
 
Deploying PHP Applications to AWS Elastic Beanstalk
Boyd Hemphill
 
Devnexus slides - Amazon Web Services
Tom Elrod
 
Tech4Africa 2014
FAschenbrenner
 
Introduction to DevOps on AWS
Shiva Narayanaswamy
 
Amazon Web Services for PHP Developers
Jeremy Lindblom
 
EC2 AMI Factory with Chef, Berkshelf, and Packer
George Miranda
 
[AWS Container Service] Getting Started with Cloud Map, App Mesh and Firecracker
Amazon Web Services Korea
 
Delivering High-Availability Web Services with NGINX Plus on AWS
NGINX, Inc.
 
2016-06 - Design your api management strategy - AWS - Microservices on AWS
SmartWave
 
AWS Training.pdf
SpiritsoftsTraining
 
AWS Training.pdf
SpiritsoftsTraining
 
Puppet Camp London 2014: Chasing AMI: baking Amazon machine images with Jenki...
Puppet
 
Chasing AMI - Building Amazon machine images with Puppet, Packer and Jenkins
Tomas Doran
 
Auto scaling with Ruby, AWS, Jenkins and Redis
Yi Hsuan (Jeddie) Chuang
 
Docker Based Hadoop Provisioning
DataWorks Summit
 
AWS Certified Solutions Architect Associate Notes.pdf
fayoyiwababajide
 
Ad

More from AOE (20)

PDF
Re-inventing airport non-aeronautical revenue generation post COVID-19
AOE
 
PDF
Flamingo - Inspiring Commerce Frontend made in Go - Meet Magento 2019
AOE
 
PPTX
Flamingo presentation at code.talks commerce by Daniel Pötzinger
AOE
 
PDF
A bag full of trust - Christof Braun at AOE Conference 2018
AOE
 
PDF
Digitalizing the Global Travel Retail World - Kian Gould at Global Retailing ...
AOE
 
PDF
Frankfurt Airport Digitalization Case Study
AOE
 
PDF
This is what has to change for Travel Retail to survive - Manuel Heidler, AOE
AOE
 
PDF
AOEconf17: Application Security
AOE
 
PPTX
AOEconf17: AOE Tech Radar Insights
AOE
 
PDF
AOEconf17: A flight through our OM³ Systems
AOE
 
PDF
AOEconf17: AOE Tech Radar Insights
AOE
 
PDF
AOEconf17: Pets vs. Cattle - modern Application Infrastructure - by Fabrizio ...
AOE
 
PPTX
AOEconf17: Agile scaling concepts
AOE
 
PDF
AOEcon17: Searchperience - The journey from PHP and Solr to Scala and Elastic...
AOE
 
PDF
AOEconf17: UI challenges in a microservice world
AOE
 
PDF
AOEconf17: Application Security - Bastian Ike
AOE
 
PPTX
AOEconf17: Management 3.0 - the secret to happy, performing and motivated sel...
AOE
 
PDF
AOEconf17: How to eat an elePHPant, congstar style - Timo Fuchs & Stefan Rotsch
AOE
 
PDF
Joern Bock: The basic concept of an agile organisation
AOE
 
PPTX
Magento 2 Best Practice Workfow // David Lambauer // Meet Magento 2017 // Lei...
AOE
 
Re-inventing airport non-aeronautical revenue generation post COVID-19
AOE
 
Flamingo - Inspiring Commerce Frontend made in Go - Meet Magento 2019
AOE
 
Flamingo presentation at code.talks commerce by Daniel Pötzinger
AOE
 
A bag full of trust - Christof Braun at AOE Conference 2018
AOE
 
Digitalizing the Global Travel Retail World - Kian Gould at Global Retailing ...
AOE
 
Frankfurt Airport Digitalization Case Study
AOE
 
This is what has to change for Travel Retail to survive - Manuel Heidler, AOE
AOE
 
AOEconf17: Application Security
AOE
 
AOEconf17: AOE Tech Radar Insights
AOE
 
AOEconf17: A flight through our OM³ Systems
AOE
 
AOEconf17: AOE Tech Radar Insights
AOE
 
AOEconf17: Pets vs. Cattle - modern Application Infrastructure - by Fabrizio ...
AOE
 
AOEconf17: Agile scaling concepts
AOE
 
AOEcon17: Searchperience - The journey from PHP and Solr to Scala and Elastic...
AOE
 
AOEconf17: UI challenges in a microservice world
AOE
 
AOEconf17: Application Security - Bastian Ike
AOE
 
AOEconf17: Management 3.0 - the secret to happy, performing and motivated sel...
AOE
 
AOEconf17: How to eat an elePHPant, congstar style - Timo Fuchs & Stefan Rotsch
AOE
 
Joern Bock: The basic concept of an agile organisation
AOE
 
Magento 2 Best Practice Workfow // David Lambauer // Meet Magento 2017 // Lei...
AOE
 

Recently uploaded (20)

PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PPTX
ChatGPT's Deck on The Enduring Legacy of Fax Machines
Greg Swan
 
PPTX
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
DevOps & Developer Experience Summer BBQ
AUGNYC
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
Software Development Methodologies in 2025
KodekX
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
CIFDAQ'S Market Insight: BTC to ETH money in motion
CIFDAQ
 
PDF
Best ERP System for Manufacturing in India | Elite Mindz
Elite Mindz
 
PPTX
Stamford - Community User Group Leaders_ Agentblazer Status, AI Sustainabilit...
Amol Dixit
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PDF
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
PPT
L2 Rules of Netiquette in Empowerment technology
Archibal2
 
PDF
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
 
PPTX
Coupa-Overview _Assumptions presentation
annapureddyn
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
ChatGPT's Deck on The Enduring Legacy of Fax Machines
Greg Swan
 
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
DevOps & Developer Experience Summer BBQ
AUGNYC
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
Software Development Methodologies in 2025
KodekX
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
CIFDAQ'S Market Insight: BTC to ETH money in motion
CIFDAQ
 
Best ERP System for Manufacturing in India | Elite Mindz
Elite Mindz
 
Stamford - Community User Group Leaders_ Agentblazer Status, AI Sustainabilit...
Amol Dixit
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
L2 Rules of Netiquette in Empowerment technology
Archibal2
 
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
 
Coupa-Overview _Assumptions presentation
annapureddyn
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 

Immutable Deployments with AWS CloudFormation and AWS Lambda