Fully Stacked: Less Oops, More Ops for Magento Development

Size: px
Start display at page:

Download "Fully Stacked: Less Oops, More Ops for Magento Development"

Transcription

1

2 Fully Stacked: Less Oops, More Ops for Magento Development

3 Mathew Beane Director of Systems Robofirm

4 Todays Plan Foundations: An overview of Magento Development and Operations. Team: Discussing the culture of processes, technology and people that are found throughout the Devops Lifecycle. Infrastructure: Examining the building blocks that make up Devops. Creating a Blueprint: A brief look into the setting up Devops.

5 Magento Development & Operations Foundations, an overview of Devops.

6 What is Devops? Devops is the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support. From:

7 Devops Goals Release on demand Prepare technology and processes Infrastructure as code Eliminate technical debt Fail without fear Measure and document everything Provide a knowledge and cultural feedback loop

8 Devops Foundation: CAMS Cycle Term coined by John Willis in This is a feedback loop which can be built around simple building blocks Produces incremental growth of the Devops culture, which creates more automation, monitoring and sharing

9 CAMS: Culture People and process first. If you don t have culture, all automation attempts will be fruitless.

10 CAMS: Automation Start to stitch together an automation fabric for Devops. Tools for release management, provisioning, configuration management, systems integration, monitoring and control, and orchestration become important pieces in building a Devops fabric.

11 CAMS: Measurement If you can t measure, you can t improve. A successful Devops implementation will measure everything it can as often as it can performance metrics, process metrics, and even people metrics.

12 CAMS: Sharing Sharing is the loopback in the CAMS cycle. Creating a culture where people share ideas and problems is critical.

13 Team Devops Discussing the processes, technology and people that are found throughout the Devops Lifecycle.

14 Team Devops Each Devops role has people, processes and technologies that are used to deliver the end product.

15 Devops Individual Roles Roles may be more individualized for some of your Star Players Automation Architect Release Manager Security Engineer Experience/Quality Assurance Disruptive Technology Research Technician

16 Business / Operations Business Sales Support Administration Business Operations Business Snowflake Logic Operations The Store and any hardware or software that is providing it Support for customers, administrators and other users Secondary and tertiary applications that support The Store

17 Development / Engineering People who write and test code Tools that are used for Development Methods and Practices that are encouraged The development and testing infrastructure

18 Testing / Monitoring A wide variety of technologies and tools exist for testing Monitoring can turn up things tests missed Responding to monitoring is a must for it to be effective Testing and Monitoring can be found throughout the Devops lifecycle

19 Customers / End Users Users of the store/website including administrators and customers Any service that consumes data from the website Processes that are related to User Experience Feedback from this group is critical to operational success

20 Infrastructure Examining some of the building blocks that make up Devops.

21 Devops Infrastructure Overview

22 Example Setup of Development Environment

23 Example Setup of Testing Environment

24 Infrastructure and Configuration as Code Automated builds using Vagrant and Terraform by HashiCorp are a great way to treat infrastructure as code. Configuration Management Tools: Ansible Chef Puppet Salt Stack And many others

25 AWS

26 AWS Continuous Full Coverage

27 Continuous Integration and Delivery Tools Automated build, deploy, test and release. CI/CD Tools that work well with Magento Amazon CodePipeline Bamboo Jenkins TravisCI And many others

28 Continuous Testing * Testing is a broad subject, deserving of more attention. Continuous Integration tools like bamboo provides hooks to allow you to test using several different methods. Magento 2: Testing is built in and easy to tie into your CI/CD Magento 1: More difficult, it is possible with some effort

29 Continuous Monitoring Nagios:

30 Metrics

31 Logs With the constant fragmentation of the infrastructure you end up with some pretty incredible logging requirements. Data sources of interest: Infrastructure metrics (CPU, Network IO) Business metrics (Sign ups, logins, placed orders) Events (deployments, auto-scaling activity) Test metrics (response times, error rates)

32 Creating a Devops Blueprint A brief look into setting up Devops.

33 The Devops Plan Define, Document & Empower Devops Culture 1. Identify and Document Processes 2. Find people within the Roles 3. Focus on building the foundation for feedback loop Start Automating 1. Application build process 2. Development environment builds 3. UAT environments 4. Production environments Build in monitoring, metrics and create feedback loop.

34 Small Simple Building Blocks Start with the git workflow Application build process Testing and peer review Release build process Automate production deployments Use operations and monitoring to plan the next release

35 Keep it simple. With so many choices for all of the technology, its important to focus on small solutions that fit within your existing infrastructure that are easy to implement and maintain.

36 Thanks! My Family Robofirm The Magento Community Fabrizio Branca Follow me on The people who have contributed to the meta-culture that inspired this talk. See my blog at for a more detailed list of sources and inspiration for this talk.