SlideShare a Scribd company logo
Accelerate Your
Development: CI/CD Using
AWS and Serverless
July 2020
Overview
1. Big Compass Introduction
2. Deployment automation using AWS
3. Deployment automation using AWS + Serverless
4. CI/CD and Beyond
2
About Big Compass
● Boutique consulting firm
● Specializing in integration and related technologies
● We build connections
○ Systems
○ Apps
○ Corporations
○ People
3
Deployment Automation in AWS
4
CI/CD in AWS
Pain Points
● Long running deployments taking
large amount of effort
○ Time spent on deployments and not
innovation
● Errors deploying
● Difficult to replicate the
deployment to many instances
● Downtime on deployments
○ Lack of business continuity
5
Process Flow Using AWS
6
Process Flow
With
Branching
7
Serverless Framework With AWS
8
AWS + Serverless
Serverless Framework Introduction
● Open source framework allowing you to build and deploy apps
● Configuration written in YAML
● Similar to CloudFormation
● Includes a CLI
● Can deploy to AWS, Azure, GCP, and more
● When deploying to AWS, it uses CloudFormation under the hood
9
Uses for Serverless Framework
● Great for deploying serverless applications
● Speeds up deployment by automatically provisioning/mapping
● Can enable a multi-cloud strategy
● Local testing and mocks of cloud setup
10
Serverless Framework With AWS
● Build and deployment configuration housed in the Serverless YAML
● Serverless framework takes over your build and deploys your code
● Eliminates steps from your CodePipeline
11
Process Flow Using AWS + Serverless
12
CI/CD Considerations
● Technology considerations
○ AWS CodeDeploy
○ AWS SAM
○ AWS CloudFormation
○ Serverless framework
○ Elastic Beanstalk
○ Terraform
13
● Different environments
● Security
● Caching
● Pipeline optimization
● Test automation
Takeaways
● AWS + Serverless is awesome for
serverless applications
● AWS + Serverless only works in
certain scenarios
● A more diverse or hybrid system
may use CloudFormation,
Terraform, etc
● A combination of solutions may be
used
● Can split serverless deployments from
EC2, RDS, etc
● CI/CD is an evolutionary process
14
Plan
Design
ImplementTest
Deploy
Above and Beyond
15
QA Automation
Pain Points
● Bugs deployed to Production
● Difficult to regression test
● Labor-intensive QA cycle
slowing down releases
● Lack of understanding of use
cases
○ Lack of documentation
○ Difficult to test all scenarios
16
QA Automation Scenarios
● UI testing
● Unit testing
● Regression testing
● Load testing
● Stress testing
● Security testing
17
QA Automation Methodology
1. Well defined DevOps
2. Gather requirements
3. Capture QA test cases
4. Design automated testing suite
5. Implement functions to run
through all tests
6. Create a testing report
18
Process Flow
19
Automated Testing Considerations
● Unit testing
● Test-driven development
● UI testing
○ Cypress, Selenium, or other tools
○ Use tools to deliver a better
security posture
20
● Regression, load, and stress
testing
○ Implement reusable, automated
test suite
○ Potential to use tools like Postman
or JMeter
● Security testing
○ Probe for sensitive data
○ Create common attacks
○ Use tools to deliver a better
security posture
Automated Testing Considerations
● Changing requirements can mean altering automated testing suite
○ Design for this consideration to mitigate the risk
● Always run unit tests where possible
● CI/CD integration to automatically test before each deployment
21
Above and Beyond
22
Provision New AWS Accounts
Pain Points
● Account isolation
○ Environments
○ Customers
○ Tenants
● Difficult to sell SaaS solution
● Difficult to monetize
● Time taken to manually deploy to
new accounts
23
Account Creation Flow
1. Create new account
1. AWS Organizations +
CloudFormation
2. Update existing account
1. Use your CI/CD pipeline
24
Account Creation Considerations
● No one size fits all solution
● Monetization
● Versioning
● Updating all accounts vs. selectively updating
● Account management
● Account access
25
CI/CD + QA Automation + Account
Creation = DevOps Nirvana
26
Demo
27
CI/CD in Action
Next Steps
● Reach out to Aaron aaron@bigcompass.com
● Reach out to Jerry jerry.dixon@bigcompass.com
● Follow Big Compass on social media
● See you next time!
28
Questions?
29
Supporting Slides
30
AWS Services Used - CodePipeline
● Triggered off of GitHub commit
○ Other triggers available
● Orchestration
● Flexible
● Visibility
● Leverage current process
31
AWS Services Used - CodeBuild
● Part of CodePipeline build
phase
● Build your code to prepare for
deployment
● Flexible
○ Execute custom commands
○ Prepare your deployment any
way you need it
32
AWS Services Used - Elastic Beanstalk
● Part of CodePipeline deploy
phase
● Allows for EC2 deployments
○ Includes auto scaling and load
balancing
33
Process Flow - Update Account Alternate
34
Process Flow - Update Serverless Account
35
Process Flow - Create Account
36
Process Flow - Update Account
37

More Related Content

What's hot

Session Slides from DEVintersection Europe
Session Slides from DEVintersection EuropeSession Slides from DEVintersection Europe
Session Slides from DEVintersection Europe
Rick Van Rousselt
 
Session Slides from DEVintersection Europe
Session Slides from DEVintersection EuropeSession Slides from DEVintersection Europe
Session Slides from DEVintersection Europe
Rick Van Rousselt
 
How we leveraged Drupal to build a leading SaaS product
How we leveraged Drupal to build a leading SaaS product How we leveraged Drupal to build a leading SaaS product
How we leveraged Drupal to build a leading SaaS product
Invotra
 
My session from Tuga IT 2017 on the Azure Container Service
My session from Tuga IT 2017 on the Azure Container ServiceMy session from Tuga IT 2017 on the Azure Container Service
My session from Tuga IT 2017 on the Azure Container Service
Rick Van Rousselt
 
CI/CD using CodeCommit CodeBuild CodeDeploy CodePipeline
CI/CD using CodeCommit CodeBuild  CodeDeploy  CodePipelineCI/CD using CodeCommit CodeBuild  CodeDeploy  CodePipeline
CI/CD using CodeCommit CodeBuild CodeDeploy CodePipeline
genesesoftware
 
Confoo - DevOps & Agile Infrastructure
Confoo - DevOps & Agile InfrastructureConfoo - DevOps & Agile Infrastructure
Confoo - DevOps & Agile Infrastructure
Will Stevens
 
My slides from SharePoint Saturday Oslo
My slides from SharePoint Saturday OsloMy slides from SharePoint Saturday Oslo
My slides from SharePoint Saturday Oslo
Rick Van Rousselt
 
Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5
Suyati Technologies
 
TCE Automation
TCE AutomationTCE Automation
TCE Automation
Tikal Knowledge
 
Kenzan Spinnaker Meetup
Kenzan Spinnaker MeetupKenzan Spinnaker Meetup
Kenzan Spinnaker Meetup
Ambassador Labs
 
Promise of DevOps
Promise of DevOpsPromise of DevOps
Promise of DevOps
Juraj Hantak
 
Berlin AWS meetup: here.com on AWS
Berlin AWS meetup: here.com on AWSBerlin AWS meetup: here.com on AWS
Berlin AWS meetup: here.com on AWS
Cristian Măgherușan-Stanciu
 
Making Service Deployments to AWS a breeze with Nova
Making Service Deployments to AWS a breeze with NovaMaking Service Deployments to AWS a breeze with Nova
Making Service Deployments to AWS a breeze with Nova
Gregor Heine
 
Load impact insights webinar
Load impact insights webinarLoad impact insights webinar
Load impact insights webinar
John Emmitt
 
Deploying .Net Core Application to AWS ECS Fargate
Deploying .Net Core Application to AWS ECS FargateDeploying .Net Core Application to AWS ECS Fargate
Deploying .Net Core Application to AWS ECS Fargate
kloia
 
The New era in QA: k6
The New era in QA: k6The New era in QA: k6
The New era in QA: k6
kloia
 
Using OpenShift PaaS
Using OpenShift PaaSUsing OpenShift PaaS
Using OpenShift PaaS
Anuchit Chalothorn
 
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhiskTechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
Janakiram MSV
 
Dr. Strangeconfig or: How I Learned to Stop Using Chef and Puppet and Love th...
Dr. Strangeconfig or: How I Learned to Stop Using Chef and Puppet and Love th...Dr. Strangeconfig or: How I Learned to Stop Using Chef and Puppet and Love th...
Dr. Strangeconfig or: How I Learned to Stop Using Chef and Puppet and Love th...
Amir Moghimi
 
So you want to write a cloud function
So you want to write a cloud functionSo you want to write a cloud function
So you want to write a cloud function
Elad Hirsch
 

What's hot (20)

Session Slides from DEVintersection Europe
Session Slides from DEVintersection EuropeSession Slides from DEVintersection Europe
Session Slides from DEVintersection Europe
 
Session Slides from DEVintersection Europe
Session Slides from DEVintersection EuropeSession Slides from DEVintersection Europe
Session Slides from DEVintersection Europe
 
How we leveraged Drupal to build a leading SaaS product
How we leveraged Drupal to build a leading SaaS product How we leveraged Drupal to build a leading SaaS product
How we leveraged Drupal to build a leading SaaS product
 
My session from Tuga IT 2017 on the Azure Container Service
My session from Tuga IT 2017 on the Azure Container ServiceMy session from Tuga IT 2017 on the Azure Container Service
My session from Tuga IT 2017 on the Azure Container Service
 
CI/CD using CodeCommit CodeBuild CodeDeploy CodePipeline
CI/CD using CodeCommit CodeBuild  CodeDeploy  CodePipelineCI/CD using CodeCommit CodeBuild  CodeDeploy  CodePipeline
CI/CD using CodeCommit CodeBuild CodeDeploy CodePipeline
 
Confoo - DevOps & Agile Infrastructure
Confoo - DevOps & Agile InfrastructureConfoo - DevOps & Agile Infrastructure
Confoo - DevOps & Agile Infrastructure
 
My slides from SharePoint Saturday Oslo
My slides from SharePoint Saturday OsloMy slides from SharePoint Saturday Oslo
My slides from SharePoint Saturday Oslo
 
Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5
 
TCE Automation
TCE AutomationTCE Automation
TCE Automation
 
Kenzan Spinnaker Meetup
Kenzan Spinnaker MeetupKenzan Spinnaker Meetup
Kenzan Spinnaker Meetup
 
Promise of DevOps
Promise of DevOpsPromise of DevOps
Promise of DevOps
 
Berlin AWS meetup: here.com on AWS
Berlin AWS meetup: here.com on AWSBerlin AWS meetup: here.com on AWS
Berlin AWS meetup: here.com on AWS
 
Making Service Deployments to AWS a breeze with Nova
Making Service Deployments to AWS a breeze with NovaMaking Service Deployments to AWS a breeze with Nova
Making Service Deployments to AWS a breeze with Nova
 
Load impact insights webinar
Load impact insights webinarLoad impact insights webinar
Load impact insights webinar
 
Deploying .Net Core Application to AWS ECS Fargate
Deploying .Net Core Application to AWS ECS FargateDeploying .Net Core Application to AWS ECS Fargate
Deploying .Net Core Application to AWS ECS Fargate
 
The New era in QA: k6
The New era in QA: k6The New era in QA: k6
The New era in QA: k6
 
Using OpenShift PaaS
Using OpenShift PaaSUsing OpenShift PaaS
Using OpenShift PaaS
 
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhiskTechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
 
Dr. Strangeconfig or: How I Learned to Stop Using Chef and Puppet and Love th...
Dr. Strangeconfig or: How I Learned to Stop Using Chef and Puppet and Love th...Dr. Strangeconfig or: How I Learned to Stop Using Chef and Puppet and Love th...
Dr. Strangeconfig or: How I Learned to Stop Using Chef and Puppet and Love th...
 
So you want to write a cloud function
So you want to write a cloud functionSo you want to write a cloud function
So you want to write a cloud function
 

Similar to Accelerate Your Development: CI/CD using AWS and Serverless

Crio.do - Deployment on AWS Masterclass
Crio.do - Deployment on AWS MasterclassCrio.do - Deployment on AWS Masterclass
Crio.do - Deployment on AWS Masterclass
Dhaval Nagar
 
Next gen software operations models in the cloud
Next gen software operations models in the cloudNext gen software operations models in the cloud
Next gen software operations models in the cloud
Aarno Aukia
 
Journey Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityJourney Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment Maturity
Altoros
 
Serverless & Serverless Devops: Scaling Together
Serverless & Serverless Devops: Scaling TogetherServerless & Serverless Devops: Scaling Together
Serverless & Serverless Devops: Scaling Together
AaronLieberman5
 
Serverless
ServerlessServerless
Serverless
Daniel Cottone
 
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdfServerless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Dhaval Nagar
 
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptxMuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
Shiva Sahu
 
Serverless Toronto User Group - Let's go Serverless!
Serverless Toronto User Group - Let's go Serverless!Serverless Toronto User Group - Let's go Serverless!
Serverless Toronto User Group - Let's go Serverless!
Daniel Zivkovic
 
Azure DevOps Pipeline setup for Mule APIs #36
Azure DevOps Pipeline setup for Mule APIs #36Azure DevOps Pipeline setup for Mule APIs #36
Azure DevOps Pipeline setup for Mule APIs #36
MysoreMuleSoftMeetup
 
A guide to modern software development 2018
A guide to modern software development 2018A guide to modern software development 2018
A guide to modern software development 2018
Peter Bittner
 
Cloud Manthn Software Solutions Pvt Ltd - What we do ?
Cloud Manthn Software Solutions Pvt Ltd - What we do ?Cloud Manthn Software Solutions Pvt Ltd - What we do ?
Cloud Manthn Software Solutions Pvt Ltd - What we do ?
amodkadam
 
Extensible dev secops pipelines with Jenkins, Docker, Terraform, and a kitche...
Extensible dev secops pipelines with Jenkins, Docker, Terraform, and a kitche...Extensible dev secops pipelines with Jenkins, Docker, Terraform, and a kitche...
Extensible dev secops pipelines with Jenkins, Docker, Terraform, and a kitche...
Richard Bullington-McGuire
 
Dev ops for big data cluster management tools
Dev ops for big data  cluster management toolsDev ops for big data  cluster management tools
Dev ops for big data cluster management tools
Ran Silberman
 
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
Vietnam Open Infrastructure User Group
 
Serverless - DevOps Lessons Learned From Production
Serverless - DevOps Lessons Learned From ProductionServerless - DevOps Lessons Learned From Production
Serverless - DevOps Lessons Learned From Production
Steve Hogg
 
Introduction to Google Cloud Services / Platforms
Introduction to Google Cloud Services / PlatformsIntroduction to Google Cloud Services / Platforms
Introduction to Google Cloud Services / Platforms
Nilanchal
 
Idi2018 - Serverless does not mean Opsless
Idi2018 - Serverless does not mean OpslessIdi2018 - Serverless does not mean Opsless
Idi2018 - Serverless does not mean Opsless
Linuxaria.com
 
Start Serverless with Golang!
Start Serverless with Golang!Start Serverless with Golang!
Start Serverless with Golang!
Kyuhyun Byun
 
Cloud: Shift in the Mindset
Cloud: Shift in the MindsetCloud: Shift in the Mindset
Cloud: Shift in the Mindset
Pradeep Bhadani
 
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
Haggai Philip Zagury
 

Similar to Accelerate Your Development: CI/CD using AWS and Serverless (20)

Crio.do - Deployment on AWS Masterclass
Crio.do - Deployment on AWS MasterclassCrio.do - Deployment on AWS Masterclass
Crio.do - Deployment on AWS Masterclass
 
Next gen software operations models in the cloud
Next gen software operations models in the cloudNext gen software operations models in the cloud
Next gen software operations models in the cloud
 
Journey Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityJourney Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment Maturity
 
Serverless & Serverless Devops: Scaling Together
Serverless & Serverless Devops: Scaling TogetherServerless & Serverless Devops: Scaling Together
Serverless & Serverless Devops: Scaling Together
 
Serverless
ServerlessServerless
Serverless
 
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdfServerless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdf
 
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptxMuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
 
Serverless Toronto User Group - Let's go Serverless!
Serverless Toronto User Group - Let's go Serverless!Serverless Toronto User Group - Let's go Serverless!
Serverless Toronto User Group - Let's go Serverless!
 
Azure DevOps Pipeline setup for Mule APIs #36
Azure DevOps Pipeline setup for Mule APIs #36Azure DevOps Pipeline setup for Mule APIs #36
Azure DevOps Pipeline setup for Mule APIs #36
 
A guide to modern software development 2018
A guide to modern software development 2018A guide to modern software development 2018
A guide to modern software development 2018
 
Cloud Manthn Software Solutions Pvt Ltd - What we do ?
Cloud Manthn Software Solutions Pvt Ltd - What we do ?Cloud Manthn Software Solutions Pvt Ltd - What we do ?
Cloud Manthn Software Solutions Pvt Ltd - What we do ?
 
Extensible dev secops pipelines with Jenkins, Docker, Terraform, and a kitche...
Extensible dev secops pipelines with Jenkins, Docker, Terraform, and a kitche...Extensible dev secops pipelines with Jenkins, Docker, Terraform, and a kitche...
Extensible dev secops pipelines with Jenkins, Docker, Terraform, and a kitche...
 
Dev ops for big data cluster management tools
Dev ops for big data  cluster management toolsDev ops for big data  cluster management tools
Dev ops for big data cluster management tools
 
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
 
Serverless - DevOps Lessons Learned From Production
Serverless - DevOps Lessons Learned From ProductionServerless - DevOps Lessons Learned From Production
Serverless - DevOps Lessons Learned From Production
 
Introduction to Google Cloud Services / Platforms
Introduction to Google Cloud Services / PlatformsIntroduction to Google Cloud Services / Platforms
Introduction to Google Cloud Services / Platforms
 
Idi2018 - Serverless does not mean Opsless
Idi2018 - Serverless does not mean OpslessIdi2018 - Serverless does not mean Opsless
Idi2018 - Serverless does not mean Opsless
 
Start Serverless with Golang!
Start Serverless with Golang!Start Serverless with Golang!
Start Serverless with Golang!
 
Cloud: Shift in the Mindset
Cloud: Shift in the MindsetCloud: Shift in the Mindset
Cloud: Shift in the Mindset
 
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
 

More from AaronLieberman5

Innovating on B2B Connectivity
Innovating on B2B ConnectivityInnovating on B2B Connectivity
Innovating on B2B Connectivity
AaronLieberman5
 
API Security - Everything You Need to Know To Protect Your APIs
API Security - Everything You Need to Know To Protect Your APIsAPI Security - Everything You Need to Know To Protect Your APIs
API Security - Everything You Need to Know To Protect Your APIs
AaronLieberman5
 
The Integrations Behind Connecting With Salesforce
The Integrations Behind Connecting With SalesforceThe Integrations Behind Connecting With Salesforce
The Integrations Behind Connecting With Salesforce
AaronLieberman5
 
Integration Success with AWS and Boomi
Integration Success with AWS and BoomiIntegration Success with AWS and Boomi
Integration Success with AWS and Boomi
AaronLieberman5
 
Deep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed MicroservicesDeep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed Microservices
AaronLieberman5
 
Unlocking the Power of Salesforce Integrations with Confluent
Unlocking the Power of Salesforce Integrations with ConfluentUnlocking the Power of Salesforce Integrations with Confluent
Unlocking the Power of Salesforce Integrations with Confluent
AaronLieberman5
 
Deep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed MicroservicesDeep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed Microservices
AaronLieberman5
 
Extending The Power Of Anypoint Platform Using Anypoint Service Mesh
Extending The Power Of Anypoint Platform Using Anypoint Service MeshExtending The Power Of Anypoint Platform Using Anypoint Service Mesh
Extending The Power Of Anypoint Platform Using Anypoint Service Mesh
AaronLieberman5
 
Serverless Cloud Integrations Meetup: The Path Forward
Serverless Cloud Integrations Meetup: The Path ForwardServerless Cloud Integrations Meetup: The Path Forward
Serverless Cloud Integrations Meetup: The Path Forward
AaronLieberman5
 
Serverless Cloud Integrations: The Path Forward
Serverless CloudIntegrations: The Path ForwardServerless CloudIntegrations: The Path Forward
Serverless Cloud Integrations: The Path Forward
AaronLieberman5
 
Layered API Security: What Hackers Don't Want You To Know
Layered API Security: What Hackers Don't Want You To KnowLayered API Security: What Hackers Don't Want You To Know
Layered API Security: What Hackers Don't Want You To Know
AaronLieberman5
 
Never Lose Data Again: Robust Integrations With MuleSoft
Never Lose Data Again: Robust Integrations With MuleSoftNever Lose Data Again: Robust Integrations With MuleSoft
Never Lose Data Again: Robust Integrations With MuleSoft
AaronLieberman5
 
Securing ap is oauth and fine grained access control
Securing ap is   oauth and fine grained access controlSecuring ap is   oauth and fine grained access control
Securing ap is oauth and fine grained access control
AaronLieberman5
 
What Hackers Don’t Want You To Know: How to Maximize Your API Security
What Hackers Don’t Want You To Know: How to Maximize Your API SecurityWhat Hackers Don’t Want You To Know: How to Maximize Your API Security
What Hackers Don’t Want You To Know: How to Maximize Your API Security
AaronLieberman5
 
Light Speed Integrations With Anypoint Flow Designer
Light Speed Integrations With Anypoint Flow DesignerLight Speed Integrations With Anypoint Flow Designer
Light Speed Integrations With Anypoint Flow Designer
AaronLieberman5
 
Sprinting with Anypoint Runtime Fabric
Sprinting with Anypoint Runtime FabricSprinting with Anypoint Runtime Fabric
Sprinting with Anypoint Runtime Fabric
AaronLieberman5
 
Sprinting with Anypoint Runtime Fabric
Sprinting with Anypoint Runtime FabricSprinting with Anypoint Runtime Fabric
Sprinting with Anypoint Runtime Fabric
AaronLieberman5
 
What Hackers Don’t Want You To Know: How to Maximize Your API Security
What Hackers Don’t Want You To Know: How to Maximize Your API SecurityWhat Hackers Don’t Want You To Know: How to Maximize Your API Security
What Hackers Don’t Want You To Know: How to Maximize Your API Security
AaronLieberman5
 
How to Expand Anypoint Platform's Capabilities by Developing Custom Connectors
How to Expand Anypoint Platform's Capabilities by Developing Custom ConnectorsHow to Expand Anypoint Platform's Capabilities by Developing Custom Connectors
How to Expand Anypoint Platform's Capabilities by Developing Custom Connectors
AaronLieberman5
 
Connect the Dots: Logging and Custom Connectors
Connect the Dots: Logging and Custom ConnectorsConnect the Dots: Logging and Custom Connectors
Connect the Dots: Logging and Custom Connectors
AaronLieberman5
 

More from AaronLieberman5 (20)

Innovating on B2B Connectivity
Innovating on B2B ConnectivityInnovating on B2B Connectivity
Innovating on B2B Connectivity
 
API Security - Everything You Need to Know To Protect Your APIs
API Security - Everything You Need to Know To Protect Your APIsAPI Security - Everything You Need to Know To Protect Your APIs
API Security - Everything You Need to Know To Protect Your APIs
 
The Integrations Behind Connecting With Salesforce
The Integrations Behind Connecting With SalesforceThe Integrations Behind Connecting With Salesforce
The Integrations Behind Connecting With Salesforce
 
Integration Success with AWS and Boomi
Integration Success with AWS and BoomiIntegration Success with AWS and Boomi
Integration Success with AWS and Boomi
 
Deep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed MicroservicesDeep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed Microservices
 
Unlocking the Power of Salesforce Integrations with Confluent
Unlocking the Power of Salesforce Integrations with ConfluentUnlocking the Power of Salesforce Integrations with Confluent
Unlocking the Power of Salesforce Integrations with Confluent
 
Deep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed MicroservicesDeep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed Microservices
 
Extending The Power Of Anypoint Platform Using Anypoint Service Mesh
Extending The Power Of Anypoint Platform Using Anypoint Service MeshExtending The Power Of Anypoint Platform Using Anypoint Service Mesh
Extending The Power Of Anypoint Platform Using Anypoint Service Mesh
 
Serverless Cloud Integrations Meetup: The Path Forward
Serverless Cloud Integrations Meetup: The Path ForwardServerless Cloud Integrations Meetup: The Path Forward
Serverless Cloud Integrations Meetup: The Path Forward
 
Serverless Cloud Integrations: The Path Forward
Serverless CloudIntegrations: The Path ForwardServerless CloudIntegrations: The Path Forward
Serverless Cloud Integrations: The Path Forward
 
Layered API Security: What Hackers Don't Want You To Know
Layered API Security: What Hackers Don't Want You To KnowLayered API Security: What Hackers Don't Want You To Know
Layered API Security: What Hackers Don't Want You To Know
 
Never Lose Data Again: Robust Integrations With MuleSoft
Never Lose Data Again: Robust Integrations With MuleSoftNever Lose Data Again: Robust Integrations With MuleSoft
Never Lose Data Again: Robust Integrations With MuleSoft
 
Securing ap is oauth and fine grained access control
Securing ap is   oauth and fine grained access controlSecuring ap is   oauth and fine grained access control
Securing ap is oauth and fine grained access control
 
What Hackers Don’t Want You To Know: How to Maximize Your API Security
What Hackers Don’t Want You To Know: How to Maximize Your API SecurityWhat Hackers Don’t Want You To Know: How to Maximize Your API Security
What Hackers Don’t Want You To Know: How to Maximize Your API Security
 
Light Speed Integrations With Anypoint Flow Designer
Light Speed Integrations With Anypoint Flow DesignerLight Speed Integrations With Anypoint Flow Designer
Light Speed Integrations With Anypoint Flow Designer
 
Sprinting with Anypoint Runtime Fabric
Sprinting with Anypoint Runtime FabricSprinting with Anypoint Runtime Fabric
Sprinting with Anypoint Runtime Fabric
 
Sprinting with Anypoint Runtime Fabric
Sprinting with Anypoint Runtime FabricSprinting with Anypoint Runtime Fabric
Sprinting with Anypoint Runtime Fabric
 
What Hackers Don’t Want You To Know: How to Maximize Your API Security
What Hackers Don’t Want You To Know: How to Maximize Your API SecurityWhat Hackers Don’t Want You To Know: How to Maximize Your API Security
What Hackers Don’t Want You To Know: How to Maximize Your API Security
 
How to Expand Anypoint Platform's Capabilities by Developing Custom Connectors
How to Expand Anypoint Platform's Capabilities by Developing Custom ConnectorsHow to Expand Anypoint Platform's Capabilities by Developing Custom Connectors
How to Expand Anypoint Platform's Capabilities by Developing Custom Connectors
 
Connect the Dots: Logging and Custom Connectors
Connect the Dots: Logging and Custom ConnectorsConnect the Dots: Logging and Custom Connectors
Connect the Dots: Logging and Custom Connectors
 

Recently uploaded

Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 

Recently uploaded (20)

Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 

Accelerate Your Development: CI/CD using AWS and Serverless

  • 1. Accelerate Your Development: CI/CD Using AWS and Serverless July 2020
  • 2. Overview 1. Big Compass Introduction 2. Deployment automation using AWS 3. Deployment automation using AWS + Serverless 4. CI/CD and Beyond 2
  • 3. About Big Compass ● Boutique consulting firm ● Specializing in integration and related technologies ● We build connections ○ Systems ○ Apps ○ Corporations ○ People 3
  • 4. Deployment Automation in AWS 4 CI/CD in AWS
  • 5. Pain Points ● Long running deployments taking large amount of effort ○ Time spent on deployments and not innovation ● Errors deploying ● Difficult to replicate the deployment to many instances ● Downtime on deployments ○ Lack of business continuity 5
  • 8. Serverless Framework With AWS 8 AWS + Serverless
  • 9. Serverless Framework Introduction ● Open source framework allowing you to build and deploy apps ● Configuration written in YAML ● Similar to CloudFormation ● Includes a CLI ● Can deploy to AWS, Azure, GCP, and more ● When deploying to AWS, it uses CloudFormation under the hood 9
  • 10. Uses for Serverless Framework ● Great for deploying serverless applications ● Speeds up deployment by automatically provisioning/mapping ● Can enable a multi-cloud strategy ● Local testing and mocks of cloud setup 10
  • 11. Serverless Framework With AWS ● Build and deployment configuration housed in the Serverless YAML ● Serverless framework takes over your build and deploys your code ● Eliminates steps from your CodePipeline 11
  • 12. Process Flow Using AWS + Serverless 12
  • 13. CI/CD Considerations ● Technology considerations ○ AWS CodeDeploy ○ AWS SAM ○ AWS CloudFormation ○ Serverless framework ○ Elastic Beanstalk ○ Terraform 13 ● Different environments ● Security ● Caching ● Pipeline optimization ● Test automation
  • 14. Takeaways ● AWS + Serverless is awesome for serverless applications ● AWS + Serverless only works in certain scenarios ● A more diverse or hybrid system may use CloudFormation, Terraform, etc ● A combination of solutions may be used ● Can split serverless deployments from EC2, RDS, etc ● CI/CD is an evolutionary process 14 Plan Design ImplementTest Deploy
  • 16. Pain Points ● Bugs deployed to Production ● Difficult to regression test ● Labor-intensive QA cycle slowing down releases ● Lack of understanding of use cases ○ Lack of documentation ○ Difficult to test all scenarios 16
  • 17. QA Automation Scenarios ● UI testing ● Unit testing ● Regression testing ● Load testing ● Stress testing ● Security testing 17
  • 18. QA Automation Methodology 1. Well defined DevOps 2. Gather requirements 3. Capture QA test cases 4. Design automated testing suite 5. Implement functions to run through all tests 6. Create a testing report 18
  • 20. Automated Testing Considerations ● Unit testing ● Test-driven development ● UI testing ○ Cypress, Selenium, or other tools ○ Use tools to deliver a better security posture 20 ● Regression, load, and stress testing ○ Implement reusable, automated test suite ○ Potential to use tools like Postman or JMeter ● Security testing ○ Probe for sensitive data ○ Create common attacks ○ Use tools to deliver a better security posture
  • 21. Automated Testing Considerations ● Changing requirements can mean altering automated testing suite ○ Design for this consideration to mitigate the risk ● Always run unit tests where possible ● CI/CD integration to automatically test before each deployment 21
  • 22. Above and Beyond 22 Provision New AWS Accounts
  • 23. Pain Points ● Account isolation ○ Environments ○ Customers ○ Tenants ● Difficult to sell SaaS solution ● Difficult to monetize ● Time taken to manually deploy to new accounts 23
  • 24. Account Creation Flow 1. Create new account 1. AWS Organizations + CloudFormation 2. Update existing account 1. Use your CI/CD pipeline 24
  • 25. Account Creation Considerations ● No one size fits all solution ● Monetization ● Versioning ● Updating all accounts vs. selectively updating ● Account management ● Account access 25
  • 26. CI/CD + QA Automation + Account Creation = DevOps Nirvana 26
  • 28. Next Steps ● Reach out to Aaron aaron@bigcompass.com ● Reach out to Jerry jerry.dixon@bigcompass.com ● Follow Big Compass on social media ● See you next time! 28
  • 31. AWS Services Used - CodePipeline ● Triggered off of GitHub commit ○ Other triggers available ● Orchestration ● Flexible ● Visibility ● Leverage current process 31
  • 32. AWS Services Used - CodeBuild ● Part of CodePipeline build phase ● Build your code to prepare for deployment ● Flexible ○ Execute custom commands ○ Prepare your deployment any way you need it 32
  • 33. AWS Services Used - Elastic Beanstalk ● Part of CodePipeline deploy phase ● Allows for EC2 deployments ○ Includes auto scaling and load balancing 33
  • 34. Process Flow - Update Account Alternate 34
  • 35. Process Flow - Update Serverless Account 35
  • 36. Process Flow - Create Account 36
  • 37. Process Flow - Update Account 37

Editor's Notes

  1. Elastic Beanstalk Lack deep AWS experience Want/need to move quickly Want to focus on code CodeDeploy Want to use shared hardware Comfortable with AWS networking and permissions Using EC2 to integrate with non-AWS services I basically think of Elastic Beanstalk as a managed CodeDeploy using AWS Services. In most use cases Elastic Beanstalk will work, but for some mega corporations that want full control over their server and run agents for non-AWS services that need regular access/updates CodeDeploy offers that control.
  2. CI/CD is cyclical and it’s an evolutionary process – don’t try to bite off everything at once
  3. CI/CD is cyclical and it’s an evolutionary process – don’t try to bite off everything at once
  4. This is the ultimate goal, but iterate to get there, and it all starts with a great CI/CD pipeline/process
  5. Orchestration Arrange your steps in whatever way you want. Define custom steps. Pass outputs from one process to another seamlessly Flexibility Change the order of steps without creating a new pipeline Easily integrate/deploy to a number of AWS Services based on what is right for your project Pull in code from github/bitbucket/codecommit/etc Visibility Easily see the status of deployments Quick high level troubleshooting Quick links to logs for each step Leverage Current Processes Easily link a CodePipeline step to an existing business process CodeBuild configurations CodeDeploy deployment groups Elastic Beanstalk configurations CodePipeline isn’t about defining the steps, it’s about arranging them to create a functioning cicd pipeline.