SlideShare une entreprise Scribd logo
1  sur  31
© 2017 Pronko Consulting www.pronkoconsulting.com
DEPLOYMENT AUTOMATION:
FROM 6 HOURS TO 15 MINUTES
© 2017 Pronko Consulting www.pronkoconsulting.com
Max Pronko
CTO @ The Irish Store & Gifts Direct
Founder @ Pronko Consulting
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Ground Rules
• Ask me anything at any time - Q&A
• There are no silly questions
• Lots of pictures on Twitter :)
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Agenda
• Our releases in 2016
• New releases in 2017
• Magento 2 Adjustments
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
About The Irish Store
• Best Magento 1 to Magento 2 migration Award 2017
• On Magento 2 since September 2016
• 4k Catalog
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
About The Irish Store - Development
• Scrum - 2 weeks
• New feature - new module
• New module - new repository
• Staging testing
• Release
• Production testing
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
The Irish Store - Infrastructure
EFS
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Release Process 2016
75 manual steps
5 servers
SSH + AWS
Peer deployment
Errors
6 HOURS
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Our Release Goals
• Faster rollbacks
• No downtime
• Avoid "empty cache" state
• Pre-deploy testing availability
• Immutable system
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Release Process
75 manual steps
5 servers
SSH + AWS
Peer deployment
Errors
3 clicks
Blue Green
Deployment
20172016
15 MINUTES6 HOURS
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Blue Green Deployment
Deployment
Blue
Current
Green Production
© 2017 Pronko Consulting www.pronkoconsulting.com
AWS Code Deploy
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
AWS Code Deploy
• EC2 Instances
• Security Groups
• Auto Scaling Groups
• Load Balancers
• In-place & Blue/Green
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Overview
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
AppSpec File
version: 0.0
os: linux
files:
- source: /
destination: /var/www/magento
permissions:
- object: /
owner: magento
group: www-data
hooks:
BeforeInstall:
- location: staging-before-install.sh
timeout: 600
appspec.yml
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Hooks
ApplicationStopStart DownloadBundle
Install
End
BeforeInstall AfterInstall
ApplicationStart ValidateService
© 2017 Pronko Consulting www.pronkoconsulting.com
The Irish Store Deployment
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Deployment Groups
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Deployments
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Individual Deployment
15 mins 31 secs
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Magento 2 Deployment Instructions
BeforeInstall AfterInstall ValidateService
• Server Cleanup • Install dependencies
• User
• Permissions
• Prepare Magento 2
• Check Magento 2
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
• Server Cleanup
• New Relic
• Install dependencies
• User
• Permissions
• Prepare Magento 2
• Prepare Varnish IPs
• Prepare env.php
• Attach EFS
• Prepare Sitemap
The Irish Store + Magento 2
BeforeInstall AfterInstall ValidateService
• Check Magento 2
• Env check
© 2017 Pronko Consulting www.pronkoconsulting.com
Magento 2 Adjustments
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Database Deployments
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Static Content Version
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
File Permissions Checks
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Sitemap & Robots
© 2017 Pronko Consulting www.pronkoconsulting.com
Lessons Learned
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
Lessons Learned
• Disable crontab during deployments
• Deploy frontend servers first
• Avoid database changes in Install/Upgrade scripts
© 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com
More Information
• https://docs.cloudfoundry.org/devguide/deploy-apps/blue-green.html
• https://aws.amazon.com/codedeploy/
• www.maxpronko.com/blog
© 2017 Pronko Consulting www.pronkoconsulting.com
www.maxpronko.com
www.pronkoconsulting.com
@max_pronko
Thank You

Contenu connexe

Tendances

Συναισθήματα και τέχνη ("παιχνίδι" για αναγνώριση και έκφραση συναισθημάτων)
Συναισθήματα και τέχνη ("παιχνίδι" για αναγνώριση και έκφραση συναισθημάτων)Συναισθήματα και τέχνη ("παιχνίδι" για αναγνώριση και έκφραση συναισθημάτων)
Συναισθήματα και τέχνη ("παιχνίδι" για αναγνώριση και έκφραση συναισθημάτων)Αντιγόνη Κριπαροπούλου
 
ένα ζιζάνιο στη ζύμη
ένα ζιζάνιο στη ζύμηένα ζιζάνιο στη ζύμη
ένα ζιζάνιο στη ζύμηIoanna Chats
 
Μια αγκαλιά για τα παιδιά Ρομά
Μια αγκαλιά για τα παιδιά ΡομάΜια αγκαλιά για τα παιδιά Ρομά
Μια αγκαλιά για τα παιδιά ΡομάGeorge Markatatos
 
αφίσες για την ημερα κατα της ενδοσχολικής βίας
αφίσες για την ημερα κατα της ενδοσχολικής βίαςαφίσες για την ημερα κατα της ενδοσχολικής βίας
αφίσες για την ημερα κατα της ενδοσχολικής βίαςIoanna Chats
 
προγραφικες 2, λ και χ
προγραφικες 2, λ και χπρογραφικες 2, λ και χ
προγραφικες 2, λ και χIoanna Chats
 
"Είμαστε όλοι μαζί", μουσικοκινητικό τραγούδι
"Είμαστε όλοι μαζί", μουσικοκινητικό τραγούδι"Είμαστε όλοι μαζί", μουσικοκινητικό τραγούδι
"Είμαστε όλοι μαζί", μουσικοκινητικό τραγούδιevamitro
 
αλφαβητα σε φύλλα για πινακα
αλφαβητα σε φύλλα για πινακααλφαβητα σε φύλλα για πινακα
αλφαβητα σε φύλλα για πινακαIoanna Chats
 
Το ταξίδι στην Χωχαρούπα , B΄ μέρος
Το ταξίδι στην Χωχαρούπα , B΄ μέροςΤο ταξίδι στην Χωχαρούπα , B΄ μέρος
Το ταξίδι στην Χωχαρούπα , B΄ μέροςteaghet
 
ρίξε μια ζαριά καλή
ρίξε μια ζαριά καλήρίξε μια ζαριά καλή
ρίξε μια ζαριά καλήIoanna Chats
 
ποιηματα χριστουγεννα
ποιηματα χριστουγενναποιηματα χριστουγεννα
ποιηματα χριστουγενναAmeli Amelia
 
στον κόσμο των κόμικς (4)
στον κόσμο των κόμικς (4)στον κόσμο των κόμικς (4)
στον κόσμο των κόμικς (4)Ioanna Chats
 
τα παιχνιδια που επαιζαν παλια.
τα παιχνιδια που επαιζαν παλια.τα παιχνιδια που επαιζαν παλια.
τα παιχνιδια που επαιζαν παλια.Maria Michali
 
πάμε για ψώνια (1)
πάμε για ψώνια (1)πάμε για ψώνια (1)
πάμε για ψώνια (1)Ioanna Chats
 
εικόνες για οχταποδάκη
εικόνες για οχταποδάκηεικόνες για οχταποδάκη
εικόνες για οχταποδάκηIoanna Chats
 
επανάληψη 6ης ενότητας
επανάληψη 6ης ενότηταςεπανάληψη 6ης ενότητας
επανάληψη 6ης ενότηταςIoanna Chats
 
ασκηση είναι
ασκηση είναιασκηση είναι
ασκηση είναιIoanna Chats
 

Tendances (20)

Συναισθήματα και τέχνη ("παιχνίδι" για αναγνώριση και έκφραση συναισθημάτων)
Συναισθήματα και τέχνη ("παιχνίδι" για αναγνώριση και έκφραση συναισθημάτων)Συναισθήματα και τέχνη ("παιχνίδι" για αναγνώριση και έκφραση συναισθημάτων)
Συναισθήματα και τέχνη ("παιχνίδι" για αναγνώριση και έκφραση συναισθημάτων)
 
ένα ζιζάνιο στη ζύμη
ένα ζιζάνιο στη ζύμηένα ζιζάνιο στη ζύμη
ένα ζιζάνιο στη ζύμη
 
Μια αγκαλιά για τα παιδιά Ρομά
Μια αγκαλιά για τα παιδιά ΡομάΜια αγκαλιά για τα παιδιά Ρομά
Μια αγκαλιά για τα παιδιά Ρομά
 
αφίσες για την ημερα κατα της ενδοσχολικής βίας
αφίσες για την ημερα κατα της ενδοσχολικής βίαςαφίσες για την ημερα κατα της ενδοσχολικής βίας
αφίσες για την ημερα κατα της ενδοσχολικής βίας
 
προγραφικες 2, λ και χ
προγραφικες 2, λ και χπρογραφικες 2, λ και χ
προγραφικες 2, λ και χ
 
"Είμαστε όλοι μαζί", μουσικοκινητικό τραγούδι
"Είμαστε όλοι μαζί", μουσικοκινητικό τραγούδι"Είμαστε όλοι μαζί", μουσικοκινητικό τραγούδι
"Είμαστε όλοι μαζί", μουσικοκινητικό τραγούδι
 
αλφαβητα σε φύλλα για πινακα
αλφαβητα σε φύλλα για πινακααλφαβητα σε φύλλα για πινακα
αλφαβητα σε φύλλα για πινακα
 
Το ταξίδι στην Χωχαρούπα , B΄ μέρος
Το ταξίδι στην Χωχαρούπα , B΄ μέροςΤο ταξίδι στην Χωχαρούπα , B΄ μέρος
Το ταξίδι στην Χωχαρούπα , B΄ μέρος
 
ρίξε μια ζαριά καλή
ρίξε μια ζαριά καλήρίξε μια ζαριά καλή
ρίξε μια ζαριά καλή
 
ποιηματα χριστουγεννα
ποιηματα χριστουγενναποιηματα χριστουγεννα
ποιηματα χριστουγεννα
 
Η περίφημη βροχή του Πιομπίνο
Η περίφημη βροχή του ΠιομπίνοΗ περίφημη βροχή του Πιομπίνο
Η περίφημη βροχή του Πιομπίνο
 
στον κόσμο των κόμικς (4)
στον κόσμο των κόμικς (4)στον κόσμο των κόμικς (4)
στον κόσμο των κόμικς (4)
 
τα παιχνιδια που επαιζαν παλια.
τα παιχνιδια που επαιζαν παλια.τα παιχνιδια που επαιζαν παλια.
τα παιχνιδια που επαιζαν παλια.
 
τα αρθρα
τα αρθρατα αρθρα
τα αρθρα
 
πάμε για ψώνια (1)
πάμε για ψώνια (1)πάμε για ψώνια (1)
πάμε για ψώνια (1)
 
εικόνες για οχταποδάκη
εικόνες για οχταποδάκηεικόνες για οχταποδάκη
εικόνες για οχταποδάκη
 
επανάληψη 6ης ενότητας
επανάληψη 6ης ενότηταςεπανάληψη 6ης ενότητας
επανάληψη 6ης ενότητας
 
ασκηση είναι
ασκηση είναιασκηση είναι
ασκηση είναι
 
H paleta ton synaisthimaton 1
H paleta ton synaisthimaton 1H paleta ton synaisthimaton 1
H paleta ton synaisthimaton 1
 
sinesthimata.pdf
sinesthimata.pdfsinesthimata.pdf
sinesthimata.pdf
 

Similaire à Magento 2 Deployment Automation: from 6 hours to 15 minutes - Max Pronko

ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"
ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"
ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"Dakiry
 
Successes, Challenges, and Pitfalls Migrating a SAAS business to Hadoop
Successes, Challenges, and Pitfalls Migrating a SAAS business to HadoopSuccesses, Challenges, and Pitfalls Migrating a SAAS business to Hadoop
Successes, Challenges, and Pitfalls Migrating a SAAS business to HadoopDataWorks Summit/Hadoop Summit
 
DOES16 San Francisco - Marc Ng - SAP’s DevOps Journey: From Building an App t...
DOES16 San Francisco - Marc Ng - SAP’s DevOps Journey: From Building an App t...DOES16 San Francisco - Marc Ng - SAP’s DevOps Journey: From Building an App t...
DOES16 San Francisco - Marc Ng - SAP’s DevOps Journey: From Building an App t...Gene Kim
 
Drupal 8 Development at the Speed of Lightning (& BLT)
Drupal 8 Development at the Speed of Lightning (& BLT)Drupal 8 Development at the Speed of Lightning (& BLT)
Drupal 8 Development at the Speed of Lightning (& BLT)Acquia
 
Introduction to PowerShell (SharePoint Fest Chicago 2016 Workshop)
Introduction to PowerShell (SharePoint Fest Chicago 2016 Workshop)Introduction to PowerShell (SharePoint Fest Chicago 2016 Workshop)
Introduction to PowerShell (SharePoint Fest Chicago 2016 Workshop)Michael Blumenthal (Microsoft MVP)
 
BelTech 2017 - Building Quality in the Browser
BelTech 2017 - Building Quality in the BrowserBelTech 2017 - Building Quality in the Browser
BelTech 2017 - Building Quality in the BrowserEamonn Boyle
 
Cwin16 tls-s2-0945-going cloud native
Cwin16 tls-s2-0945-going cloud nativeCwin16 tls-s2-0945-going cloud native
Cwin16 tls-s2-0945-going cloud nativeCapgemini
 
Dare to Share Magento Community Engineering
Dare to Share Magento Community Engineering Dare to Share Magento Community Engineering
Dare to Share Magento Community Engineering Igor Miniailo
 
Edge 2016 measuring what matters
Edge 2016 measuring what mattersEdge 2016 measuring what matters
Edge 2016 measuring what mattersakamaidevrel
 
Measuring what matters
Measuring what mattersMeasuring what matters
Measuring what mattersCliff Crocker
 
Integrated Plan-Build-Operate for effective Multi-Access Rollout
Integrated Plan-Build-Operate for effective Multi-Access RolloutIntegrated Plan-Build-Operate for effective Multi-Access Rollout
Integrated Plan-Build-Operate for effective Multi-Access RolloutKiran Solipuram. DEP, CFHP
 
Accelerate Go-To-Market Speed in a CI/CD Environment
Accelerate Go-To-Market Speed in a CI/CD EnvironmentAccelerate Go-To-Market Speed in a CI/CD Environment
Accelerate Go-To-Market Speed in a CI/CD EnvironmentAmazon Web Services
 
Low Friction Continuous Delivery: Going From 0 to 1 with Drupal and Acquia
Low Friction Continuous Delivery: Going From 0 to 1 with Drupal and AcquiaLow Friction Continuous Delivery: Going From 0 to 1 with Drupal and Acquia
Low Friction Continuous Delivery: Going From 0 to 1 with Drupal and AcquiaAcquia
 
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...Gene Kim
 
The state of IPv6 at Swiss cloud providers
The state of IPv6 at Swiss cloud providersThe state of IPv6 at Swiss cloud providers
The state of IPv6 at Swiss cloud providersAarno Aukia
 
SplunkLive! London 2017 - Splunk Enterprise for IT Troubleshooting
SplunkLive! London 2017 - Splunk Enterprise for IT TroubleshootingSplunkLive! London 2017 - Splunk Enterprise for IT Troubleshooting
SplunkLive! London 2017 - Splunk Enterprise for IT TroubleshootingSplunk
 
UKOUG - Implementing Enterprise API Management in the Oracle Cloud
UKOUG - Implementing Enterprise API Management in the Oracle CloudUKOUG - Implementing Enterprise API Management in the Oracle Cloud
UKOUG - Implementing Enterprise API Management in the Oracle Cloudluisw19
 
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2Meet Magento Italy
 
Max Yekaterinenko - Magento 2 & Quality
Max Yekaterinenko - Magento 2 & QualityMax Yekaterinenko - Magento 2 & Quality
Max Yekaterinenko - Magento 2 & QualityMeet Magento Italy
 

Similaire à Magento 2 Deployment Automation: from 6 hours to 15 minutes - Max Pronko (20)

ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"
ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"
ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"
 
Successes, Challenges, and Pitfalls Migrating a SAAS business to Hadoop
Successes, Challenges, and Pitfalls Migrating a SAAS business to HadoopSuccesses, Challenges, and Pitfalls Migrating a SAAS business to Hadoop
Successes, Challenges, and Pitfalls Migrating a SAAS business to Hadoop
 
DOES16 San Francisco - Marc Ng - SAP’s DevOps Journey: From Building an App t...
DOES16 San Francisco - Marc Ng - SAP’s DevOps Journey: From Building an App t...DOES16 San Francisco - Marc Ng - SAP’s DevOps Journey: From Building an App t...
DOES16 San Francisco - Marc Ng - SAP’s DevOps Journey: From Building an App t...
 
Drupal 8 Development at the Speed of Lightning (& BLT)
Drupal 8 Development at the Speed of Lightning (& BLT)Drupal 8 Development at the Speed of Lightning (& BLT)
Drupal 8 Development at the Speed of Lightning (& BLT)
 
Introduction to PowerShell (SharePoint Fest Chicago 2016 Workshop)
Introduction to PowerShell (SharePoint Fest Chicago 2016 Workshop)Introduction to PowerShell (SharePoint Fest Chicago 2016 Workshop)
Introduction to PowerShell (SharePoint Fest Chicago 2016 Workshop)
 
BelTech 2017 - Building Quality in the Browser
BelTech 2017 - Building Quality in the BrowserBelTech 2017 - Building Quality in the Browser
BelTech 2017 - Building Quality in the Browser
 
Cwin16 tls-s2-0945-going cloud native
Cwin16 tls-s2-0945-going cloud nativeCwin16 tls-s2-0945-going cloud native
Cwin16 tls-s2-0945-going cloud native
 
Dare to Share Magento Community Engineering
Dare to Share Magento Community Engineering Dare to Share Magento Community Engineering
Dare to Share Magento Community Engineering
 
Edge 2016 measuring what matters
Edge 2016 measuring what mattersEdge 2016 measuring what matters
Edge 2016 measuring what matters
 
Measuring what matters
Measuring what mattersMeasuring what matters
Measuring what matters
 
Integrated Plan-Build-Operate for effective Multi-Access Rollout
Integrated Plan-Build-Operate for effective Multi-Access RolloutIntegrated Plan-Build-Operate for effective Multi-Access Rollout
Integrated Plan-Build-Operate for effective Multi-Access Rollout
 
Accelerate Go-To-Market Speed in a CI/CD Environment
Accelerate Go-To-Market Speed in a CI/CD EnvironmentAccelerate Go-To-Market Speed in a CI/CD Environment
Accelerate Go-To-Market Speed in a CI/CD Environment
 
Low Friction Continuous Delivery: Going From 0 to 1 with Drupal and Acquia
Low Friction Continuous Delivery: Going From 0 to 1 with Drupal and AcquiaLow Friction Continuous Delivery: Going From 0 to 1 with Drupal and Acquia
Low Friction Continuous Delivery: Going From 0 to 1 with Drupal and Acquia
 
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
 
The state of IPv6 at Swiss cloud providers
The state of IPv6 at Swiss cloud providersThe state of IPv6 at Swiss cloud providers
The state of IPv6 at Swiss cloud providers
 
SplunkLive! London 2017 - Splunk Enterprise for IT Troubleshooting
SplunkLive! London 2017 - Splunk Enterprise for IT TroubleshootingSplunkLive! London 2017 - Splunk Enterprise for IT Troubleshooting
SplunkLive! London 2017 - Splunk Enterprise for IT Troubleshooting
 
UKOUG - Implementing Enterprise API Management in the Oracle Cloud
UKOUG - Implementing Enterprise API Management in the Oracle CloudUKOUG - Implementing Enterprise API Management in the Oracle Cloud
UKOUG - Implementing Enterprise API Management in the Oracle Cloud
 
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
 
Building Web Apps & APIs With Node JS
Building Web Apps & APIs With Node JSBuilding Web Apps & APIs With Node JS
Building Web Apps & APIs With Node JS
 
Max Yekaterinenko - Magento 2 & Quality
Max Yekaterinenko - Magento 2 & QualityMax Yekaterinenko - Magento 2 & Quality
Max Yekaterinenko - Magento 2 & Quality
 

Plus de Max Pronko

Mastering Declarative Database Schema - MageConf 2019
Mastering Declarative Database Schema - MageConf 2019Mastering Declarative Database Schema - MageConf 2019
Mastering Declarative Database Schema - MageConf 2019Max Pronko
 
Service Oriented Architecture in Magento 2
Service Oriented Architecture in Magento 2Service Oriented Architecture in Magento 2
Service Oriented Architecture in Magento 2Max Pronko
 
Checkout Customizations in Magento 2 - MageTitansMCR 2017
Checkout Customizations in Magento 2 - MageTitansMCR 2017Checkout Customizations in Magento 2 - MageTitansMCR 2017
Checkout Customizations in Magento 2 - MageTitansMCR 2017Max Pronko
 
Checkout in Magento 2 by Max Pronko
Checkout in Magento 2 by Max PronkoCheckout in Magento 2 by Max Pronko
Checkout in Magento 2 by Max PronkoMax Pronko
 
Real use cases of performance optimization in magento 2
Real use cases of performance optimization in magento 2Real use cases of performance optimization in magento 2
Real use cases of performance optimization in magento 2Max Pronko
 
Ups and Downs of Real Projects Based on Magento 2
Ups and Downs of Real Projects Based on Magento 2Ups and Downs of Real Projects Based on Magento 2
Ups and Downs of Real Projects Based on Magento 2Max Pronko
 
Key Insights into Development Design Patterns for Magento 2 - Magento Live UK
Key Insights into Development Design Patterns for Magento 2 - Magento Live UKKey Insights into Development Design Patterns for Magento 2 - Magento Live UK
Key Insights into Development Design Patterns for Magento 2 - Magento Live UKMax Pronko
 
Magento 2 Design Patterns
Magento 2 Design PatternsMagento 2 Design Patterns
Magento 2 Design PatternsMax Pronko
 
Zepplin_Pronko_Magento_Festival Hall 1_Final
Zepplin_Pronko_Magento_Festival Hall 1_FinalZepplin_Pronko_Magento_Festival Hall 1_Final
Zepplin_Pronko_Magento_Festival Hall 1_FinalMax Pronko
 

Plus de Max Pronko (9)

Mastering Declarative Database Schema - MageConf 2019
Mastering Declarative Database Schema - MageConf 2019Mastering Declarative Database Schema - MageConf 2019
Mastering Declarative Database Schema - MageConf 2019
 
Service Oriented Architecture in Magento 2
Service Oriented Architecture in Magento 2Service Oriented Architecture in Magento 2
Service Oriented Architecture in Magento 2
 
Checkout Customizations in Magento 2 - MageTitansMCR 2017
Checkout Customizations in Magento 2 - MageTitansMCR 2017Checkout Customizations in Magento 2 - MageTitansMCR 2017
Checkout Customizations in Magento 2 - MageTitansMCR 2017
 
Checkout in Magento 2 by Max Pronko
Checkout in Magento 2 by Max PronkoCheckout in Magento 2 by Max Pronko
Checkout in Magento 2 by Max Pronko
 
Real use cases of performance optimization in magento 2
Real use cases of performance optimization in magento 2Real use cases of performance optimization in magento 2
Real use cases of performance optimization in magento 2
 
Ups and Downs of Real Projects Based on Magento 2
Ups and Downs of Real Projects Based on Magento 2Ups and Downs of Real Projects Based on Magento 2
Ups and Downs of Real Projects Based on Magento 2
 
Key Insights into Development Design Patterns for Magento 2 - Magento Live UK
Key Insights into Development Design Patterns for Magento 2 - Magento Live UKKey Insights into Development Design Patterns for Magento 2 - Magento Live UK
Key Insights into Development Design Patterns for Magento 2 - Magento Live UK
 
Magento 2 Design Patterns
Magento 2 Design PatternsMagento 2 Design Patterns
Magento 2 Design Patterns
 
Zepplin_Pronko_Magento_Festival Hall 1_Final
Zepplin_Pronko_Magento_Festival Hall 1_FinalZepplin_Pronko_Magento_Festival Hall 1_Final
Zepplin_Pronko_Magento_Festival Hall 1_Final
 

Dernier

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 

Dernier (20)

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 

Magento 2 Deployment Automation: from 6 hours to 15 minutes - Max Pronko

  • 1. © 2017 Pronko Consulting www.pronkoconsulting.com DEPLOYMENT AUTOMATION: FROM 6 HOURS TO 15 MINUTES
  • 2. © 2017 Pronko Consulting www.pronkoconsulting.com Max Pronko CTO @ The Irish Store & Gifts Direct Founder @ Pronko Consulting
  • 3. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Ground Rules • Ask me anything at any time - Q&A • There are no silly questions • Lots of pictures on Twitter :)
  • 4. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Agenda • Our releases in 2016 • New releases in 2017 • Magento 2 Adjustments
  • 5. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com About The Irish Store • Best Magento 1 to Magento 2 migration Award 2017 • On Magento 2 since September 2016 • 4k Catalog
  • 6. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com About The Irish Store - Development • Scrum - 2 weeks • New feature - new module • New module - new repository • Staging testing • Release • Production testing
  • 7. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com The Irish Store - Infrastructure EFS
  • 8. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Release Process 2016 75 manual steps 5 servers SSH + AWS Peer deployment Errors 6 HOURS
  • 9. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Our Release Goals • Faster rollbacks • No downtime • Avoid "empty cache" state • Pre-deploy testing availability • Immutable system
  • 10. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Release Process 75 manual steps 5 servers SSH + AWS Peer deployment Errors 3 clicks Blue Green Deployment 20172016 15 MINUTES6 HOURS
  • 11. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Blue Green Deployment Deployment Blue Current Green Production
  • 12. © 2017 Pronko Consulting www.pronkoconsulting.com AWS Code Deploy
  • 13. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com AWS Code Deploy • EC2 Instances • Security Groups • Auto Scaling Groups • Load Balancers • In-place & Blue/Green
  • 14. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Overview
  • 15. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com AppSpec File version: 0.0 os: linux files: - source: / destination: /var/www/magento permissions: - object: / owner: magento group: www-data hooks: BeforeInstall: - location: staging-before-install.sh timeout: 600 appspec.yml
  • 16. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Hooks ApplicationStopStart DownloadBundle Install End BeforeInstall AfterInstall ApplicationStart ValidateService
  • 17. © 2017 Pronko Consulting www.pronkoconsulting.com The Irish Store Deployment
  • 18. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Deployment Groups
  • 19. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Deployments
  • 20. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Individual Deployment 15 mins 31 secs
  • 21. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Magento 2 Deployment Instructions BeforeInstall AfterInstall ValidateService • Server Cleanup • Install dependencies • User • Permissions • Prepare Magento 2 • Check Magento 2
  • 22. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com • Server Cleanup • New Relic • Install dependencies • User • Permissions • Prepare Magento 2 • Prepare Varnish IPs • Prepare env.php • Attach EFS • Prepare Sitemap The Irish Store + Magento 2 BeforeInstall AfterInstall ValidateService • Check Magento 2 • Env check
  • 23. © 2017 Pronko Consulting www.pronkoconsulting.com Magento 2 Adjustments
  • 24. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Database Deployments
  • 25. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Static Content Version
  • 26. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com File Permissions Checks
  • 27. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Sitemap & Robots
  • 28. © 2017 Pronko Consulting www.pronkoconsulting.com Lessons Learned
  • 29. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com Lessons Learned • Disable crontab during deployments • Deploy frontend servers first • Avoid database changes in Install/Upgrade scripts
  • 30. © 2016 Magento, Inc.© 2017 Pronko Consulting www.pronkoconsulting.com More Information • https://docs.cloudfoundry.org/devguide/deploy-apps/blue-green.html • https://aws.amazon.com/codedeploy/ • www.maxpronko.com/blog
  • 31. © 2017 Pronko Consulting www.pronkoconsulting.com www.maxpronko.com www.pronkoconsulting.com @max_pronko Thank You