Creating an Agile Environment for Dev Ops Why

  • Slides: 31
Download presentation
Creating an Agile Environment for Dev. Ops

Creating an Agile Environment for Dev. Ops

Why Dev. Ops Matters How long does it take to deploy one line of

Why Dev. Ops Matters How long does it take to deploy one line of code to production? Lean Software Development: An Agile Toolkit 2 © 2017 Net. App, Inc. All rights reserved.

Why Dev. Ops Matters How long does it take to SAFELY deploy one line

Why Dev. Ops Matters How long does it take to SAFELY deploy one line of code to production? Lean Software Development: An Agile Toolkit 3 © 2017 Net. App, Inc. All rights reserved.

Agenda 1) What is Dev. Ops? 2) Dev. Ops Through Desired State 3) Containers

Agenda 1) What is Dev. Ops? 2) Dev. Ops Through Desired State 3) Containers Remove Friction 4) CI/CD 4 © 2017 Net. App, Inc. All rights reserved.

What is Dev. Ops? 5 © 2017 Net. App, Inc. All rights reserved.

What is Dev. Ops? 5 © 2017 Net. App, Inc. All rights reserved.

Dev. Ops is … § … a culture, movement or practice that emphasizes the

Dev. Ops is … § … a culture, movement or practice that emphasizes the collaboration and communication of both software developers and other information-technology (IT) professionals while automating the process of software delivery and infrastructure changes. § https: //en. wikipedia. org/wiki/Dev. Ops § … the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support. § https: //theagileadmin. com/what-is-devops/ § the combination of cultural philosophies, practices, and tools that increases an organization’s ability to deliver applications and services at high velocity § https: //aws. amazon. com/devops/what-is-devops/ 6 © 2017 Net. App, Inc. All rights reserved.

Dev. Ops Is not … § A new team § A specific skill set

Dev. Ops Is not … § A new team § A specific skill set § A product § A specific set of tools Is … § A culture of communication § The practice of enablement § Bringing dev and ops closer together to create better results 7 © 2017 Net. App, Inc. All rights reserved.

The goal of Dev. Ops? Increase quality and the pace of delivery for application(s)

The goal of Dev. Ops? Increase quality and the pace of delivery for application(s) 8 © 2017 Net. App, Inc. All rights reserved.

Dev. Ops Tool Ecosystem https: //xebialabs. com/periodic-table-of-devops-tools/ 9 © 2017 Net. App, Inc. All

Dev. Ops Tool Ecosystem https: //xebialabs. com/periodic-table-of-devops-tools/ 9 © 2017 Net. App, Inc. All rights reserved. --- NETAPP CONFIDENTIAL ---

Dev. Ops Through Desired State 10 © 2017 Net. App, Inc. All rights reserved.

Dev. Ops Through Desired State 10 © 2017 Net. App, Inc. All rights reserved.

What is Desired State Configuration Management? Configure all servers to run my app -

What is Desired State Configuration Management? Configure all servers to run my app - Ensure all storage controllers have a Flex. Vol called “my. App. Vol” - Ensure all dependencies are on the latest version, etc. • • • Target is already in the desired state 11 © 2017 Net. App, Inc. All rights reserved. Configuration in progress Target is not in the desired state Consistent Secure Reliable Scalable Automated

Desired State Automation Tools § Strong compliance automation and reporting tools § Active community

Desired State Automation Tools § Strong compliance automation and reporting tools § Active community support § Particularly useful, stable and mature solution for large enterprises 12 © 2017 Net. App, Inc. All rights reserved. § Very stable, reliable and mature, especially for large-scale deployments in both public and private environments. § Chef offers hybrid and Saa. S solutions for Chef server, analytics and reporting. § Easy remote execution, low barrier to entry. § Syntax and workflow is fairly easy to learn for new users. § Supports both push and pull models. § Agent-less deployment and communication is faster than the master-agent model.

Adoption of Desired State Tools Open. Stack User Survey: https: //www. openstack. org/assets/survey/April 2017

Adoption of Desired State Tools Open. Stack User Survey: https: //www. openstack. org/assets/survey/April 2017 Survey. Report. pdf 13 © 2017 Net. App, Inc. All rights reserved. --- NETAPP CONFIDENTIAL ---

Containers Remove Friction 14 © 2017 Net. App, Inc. All rights reserved.

Containers Remove Friction 14 © 2017 Net. App, Inc. All rights reserved.

Containers Are Not Virtual Machines § VMs are relatively large, composed of virtual hardware,

Containers Are Not Virtual Machines § VMs are relatively large, composed of virtual hardware, a full OS, and the application, including dependencies § Containers § A container is just the application and its dependencies § It runs as an isolated process in user space on the host OS Images: Docker, https: //www. docker. com 15 © 2017 Net. App, Inc. All rights reserved.

What Is Docker? § Docker abstracts the creation and management of containers # start

What Is Docker? § Docker abstracts the creation and management of containers # start a container $ docker run mysql: latest § Containers for mortals! § Define application components: containers, storage, and networking § The Docker portfolio enables management for containerized microservice applications § § 16 Docker Engine Docker Registry Docker Swarm Docker Data Center © 2017 Net. App, Inc. All rights reserved. # map a port $ docker run –p 3306: 3306 mysql: latest # map a host directory $ docker run –v /mysql/data: /var/lib/mysql mysql: latest

Frictionless Interaction § Lightweight, fast, portable § A lot like Object Oriented Programming §

Frictionless Interaction § Lightweight, fast, portable § A lot like Object Oriented Programming § Inheritance, Encapsulation, Abstraction § Dev. Ops + Microservices + Containers = Maintainability and Scalability § Containers decouple the app from the OS 17 © 2017 Net. App, Inc. All rights reserved.

Orchestrating Application Deployment 18 © 2017 Net. App, Inc. All rights reserved.

Orchestrating Application Deployment 18 © 2017 Net. App, Inc. All rights reserved.

Orchestrator Services § Containerized application deployment § Service discovery § Health checking / high

Orchestrator Services § Containerized application deployment § Service discovery § Health checking / high availability § Scale up/down § Load balancing § Authentication / authorization § Secrets management § Logging § Monitoring 19 © 2017 Net. App, Inc. All rights reserved.

Orchestrator Adoption Open. Stack User Survey: https: //www. openstack. org/assets/survey/April 2017 Survey. Report. pdf

Orchestrator Adoption Open. Stack User Survey: https: //www. openstack. org/assets/survey/April 2017 Survey. Report. pdf 20 © 2017 Net. App, Inc. All rights reserved. --- NETAPP CONFIDENTIAL ---

Persistence using Kubernetes 21 © 2017 Net. App, Inc. All rights reserved.

Persistence using Kubernetes 21 © 2017 Net. App, Inc. All rights reserved.

Persistent Volume Allocation Application ! Kubernetes 3 GB RWO 5 GB RWO 22 ©

Persistent Volume Allocation Application ! Kubernetes 3 GB RWO 5 GB RWO 22 © 2017 Net. App, Inc. All rights reserved. 1 GB RWM

Dynamic Provisioning with Storage Classes Application ! Kubernetes 3 GB RWO Bronze Gold Silver

Dynamic Provisioning with Storage Classes Application ! Kubernetes 3 GB RWO Bronze Gold Silver 3 GB RWO 23 © 2017 Net. App, Inc. All rights reserved. Bronze

CI/CD 24 © 2017 Net. App, Inc. All rights reserved.

CI/CD 24 © 2017 Net. App, Inc. All rights reserved.

CI and CD Using Jenkins § Build automation for Continuous Integration (CI) and Continuous

CI and CD Using Jenkins § Build automation for Continuous Integration (CI) and Continuous Deployment (CD) § Plugins to support many different tasks § Works with nearly everything § Open. Stack and Containers 25 © 2016 Net. App, Inc. All rights reserved. --- NETAPP CONFIDENTIAL ---

Jenkins Pipeline – End-to-End Automation § Triggered by Git commit § Jenkinsfile documents, in

Jenkins Pipeline – End-to-End Automation § Triggered by Git commit § Jenkinsfile documents, in code, build -> test -> deploy pipeline § Source control of CI/CD process 26 © 2016 Net. App, Inc. All rights reserved. --- NETAPP CONFIDENTIAL ---

JFrog Artifactory § Artifact repository manager § Stores (usually binary) objects created during the

JFrog Artifactory § Artifact repository manager § Stores (usually binary) objects created during the development and compile processes § Simple revisioning of application versions without having to re-compile § Facilitates testing and deployment by making needed artifacts readily available to application 27 © 2017 Net. App, Inc. All rights reserved. --- NETAPP CONFIDENTIAL ---

Conclusion 28 © 2017 Net. App, Inc. All rights reserved.

Conclusion 28 © 2017 Net. App, Inc. All rights reserved.

Storage Enhances the Application Lifecycle § Rapid workspace creation § Reduced checkout and build

Storage Enhances the Application Lifecycle § Rapid workspace creation § Reduced checkout and build times § More productive developers § Improved quality § Accelerating test cycles and processes § Develop and test with real data § Faster deployment to QA and Production § Reducing infrastructure costs § Storage space savings § Reduce compute resources § Advanced data services at the storage layer 29 © 2017 Net. App, Inc. All rights reserved.

the. Pub – Net. App’s Developer and Open Source Community netapp. io @Net. App.

the. Pub – Net. App’s Developer and Open Source Community netapp. io @Net. App. Pub netapp. io/slack for customer Slack invites netapppub. slack. com with @netapp. com email address 30 © 2017 Net. App, Inc. All rights reserved.

Thank You

Thank You