Presentation is loading. Please wait.

Presentation is loading. Please wait.

DevOps: CI/CD to Azure through Codeship

Similar presentations


Presentation on theme: "DevOps: CI/CD to Azure through Codeship"— Presentation transcript:

1 DevOps: CI/CD to Azure through Codeship
Jessica Deen Technical Evangelist - Microsoft

2 Agenda Review “DevOps,” what it is, and why it matters Azure Breakdown
Codeship Breakdown Quick overview of the code and how it works Live demo Deeper dive into the code Questions

3 1 million/hour 12 years 60% computing
Microsoft Envision 2016 12/16/2017 3:45 AM GOING DIGITAL 1 million/hour new devices coming online by 2020 12 years average age of S&P 500 corporations by 2020 60% computing in the public cloud by 2025 Why is this transformation important? Let’s take a look at the next few years before us… In 2020, 1 million new devices are expected to come online every hour. The connectivity between people and data is creating billions of new relationships that are driven not only by data but by algorithms that keep customers engaged and buying.* In 2020, the average age of a S&P 500 corporation is expected to be 12 years old. Compare that to the S&P 500 in 1960 when the average age was 60 years old.** By the year 2025, at least 60 percent of computing will be cloud-based, due to “everything-as-a-service” shifting fundamental changes in the IT industry.*** For digital transformation, mobility is the universal catalyst and cloud is the great enabler. How are you planning for digital transformation? Do you have the right people and the right technology in place to build your digital vision? How can you use technology to shape your future? * ** *** © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

4 What is DevOps? “It’s a job title” “It’s automation”
“It’s Development and Operations collaboration” “It means faster and smaller releases”

5 The DevOps conversation
PEOPLE Collaborate more Share common goals Focus on improvement BRINGING PEOPLE TOGETHER The DevOps conversation PROCESS Eliminate waste Increase efficiency Streamline feedback DELIVERING VALUE FASTER TOOLS Enhance productivity Enable collaboration Facilitate experimentation EXECUTING A DEVOPS STRATEGY

6 DevOps habits and practices
Application Performance Management Infrastructure as Code Continuous Deployment Release Management Configuration Management Automated Recovery PRACTICES Automated Testing Continuous Integration Continuous Deployment Release Management PRACTICES Usage Telemetry Monitoring Collection Testing in Production Stakeholder Feedback PRACTICES Code Reviews Automated Testing Continuous Measurement TEAM AUTONOMY & ENTERPRISE ALIGNMENT BACKLOG refined with LEARNING EVIDENCE gathered in PRODUCTION FLOW OF CUSTOMER VALUE MANAGED TECHNICAL DEBT PRODUCTION FIRST MINDSET INFRASTRUCTURE is a FLEXIBLE RESOURCE PRACTICES Application Performance Management Infrastructure as Code Continuous Delivery Release Management Configuration Management Automated Recovery PRACTICES Testing in Production Usage Monitoring User Telemetry Stakeholder feedback Feature flags PRACTICES Enterprise Agile Continuous Integration Continuous Deployment Release Management

7 DevOps: the three stage conversation
S4 Solution Specialist Sales Summit 12/16/2017 3:45 AM DevOps: the three stage conversation DEV OPS People = Culture Fundamental attributes of successful cultures: Shared mission and incentives: infrastructure as code, apps as services, DevOps/all as teams You need to consider your hardware as a commodity, (don't give your servers names) , servers are like farm animals, it is just harder if you let theids name them Build deep instrumentation into services, push complexity up the stack Rally around agile, shared metrics, CI, service owners on call, etc. Changing the culture: any change takes time, changing culture is no exception and you can't do it alone, exploit compelling events to change culture: downtimes, cloud adoption, devops buzz PROCESS Definition and design, compliance, and continuous improvement PEOPLE Responsibilities, management, skills development, and discipline Products Tools and infrastructure 1 People 2 Process 3 Products © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

8 <Event Name Here>
12/16/2017 DevOps Benefits Strong IT Performance is a competitive advantage Deploy code 30x faster Firms with high-performing IT organizations were 2x as likely to exceed their profitability, market share, and productivity goals and with 200x shorter lead time as compared to their lower-performing peers Have 60x fewer failures 2014 Report collected in December 2013 had over 9,200 survey respondents across 110 countries with companies of ALL sizes and verticals. 2015 Report had 4,976 respondents with companies of ALL sizes and verticals. DevOps Practices improve IT performance and recover from failure 168x faster as compared to their lower-performing peers Source: © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

9 4 1 3 2 End-to-end DevOps Development Production Monitor + learn
Plan + track Development Production 3 2 Develop + test Release

10 Plan + track It starts with an idea - and a plan how to turn this idea into reality… Project starts Manage work Develop + test Track progress Plan 1

11 Develop + test After the iteration starts, developers turn great ideas into features and functionality … 2 Write code Unit testing Version control Build Build verification Release

12 Flexible version control
Source code management All your code is linked directly to the story, bug, or task driving the work. Flexible version control Collaborate on code Any IDE, any code

13 Test management Test planning and tracking Developer testing
Manual and exploratory testing

14 Continuous integration (CI) – a DevOps practice
SOURCE REPOSITORY BUILD Issues Delivery delays Non-working/low-quality code Incomplete solutions Rework Value Frequent integration Higher quality Repeatability TEST DEV OPS

15 Release When all tests pass, the build is deployed to testing environments for each stage in the release process … Cloud load testing Integration testing environment Staging environment 3 Automated functional testing environment Pre-production environment Monitor + learn

16 Continuous delivery (CD) – a DevOps practice
SOURCE REPOSITORY DEVELOPMENT Issues Slow delivery cadence Limited predictability when deploying Complexity when deploying Value Consistency Accelerated deployment Repeatability Human error reduction STAGING PRODUCTION DEV OPS

17 Continuous integration
Continuous delivery Streamline and automate the workflow between development and IT ops and deliver higher quality software more frequently with less risk. Continuous integration Release management Continuous quality

18 Infrastructure as code (IAC) – a DevOps practice
SOURCE REPOSITORY DEV Value Optimize resources Accelerate delivery STAGE Measure Deployment rate MTTR PRODUCTION DEV OPS

19 Monitor + learn When all tests pass, the build is deployed to testing environments for each stage in the release process Plan the next iteration Feedback Monitor 4

20 Monitor + learn Streamline and automate the workflow between development and IT ops and deliver higher quality software more frequently with less risk. Stakeholder feedback management Application telemetry Performance and load testing

21 CI / CD Process Code repository Build + deploy Automated testing
User testing Backlog Monitor and improve

22 Why does this matter?

23

24 CONTINUOUS INTEGRATION CONTINUOUS DEPLOYMENT
YOU CONTINUOUS INTEGRATION WEB APPS CONTINUOUS DEPLOYMENT INFRASTRUCTURE

25

26

27 AZURE BREAKDOWN HOW DO WE CONNECT? AUTHENTICATION EXAMPLE: az login \
--service-principal \ -u $spn \ -p $password \ --tenant $tenant NON-INTERACTION AUTHENTICATION METHOD SERVICE PRINCIPAL NAME SPN CREATION SCRIPT

28 CODESHIP BREAKDOWN CODESHIP.AES JET (LOCAL TOOL) SERVICES STEPS

29 Demo

30 CODESHIP BREAKDOWN DEFINE SERVICES - CODESHIP-SERVICES.YML (EXAMPLE)
acsdeploy: image: azuresdk/azure-cli-python:latest encrypted_env_file: azure.env.encrypted environment: - Resource=LFNW-CS - Location=eastus - Servicename=ACSJDDemo - Orchestrator=Swarm - Dnsprefix=lfnwdemo - sshkey=/deploy/lfnw.pub volumes: - ./:/deploy sshtunnel: build: image: sshtunnel dockerfile_path: sshtunnel/Dockerfile add_docker: true encrypted_env_file: azure.env.encrypted environment: - Servicename=ACSJDDemo - Resource=LFNW-CS - Orchestrator=Swarm - local_port=2375 - remote_port=2375

31 CODESHIP BREAKDOWN DEFINE STEPS | CODESHIP-STEPS.YML (EXAMPLE)
- name: Azure ACS Deploy service: acsdeploy command: bash /deploy/deployment/acs_deploy.sh - type: serial name: SSH Tunnel service: sshtunnel steps: - command: docker run -d --name docker-nginx -p 80:80 nginx - command: docker ps -a

32 AZURE ACS BREAKDOWN ACS Deployment Methods Via Portal (Manual)
Azure CLI 2.0 (Manual) Deployment Bash script using AZ CLI 2.0 (DevOps IAC) SSH Tunnel to Docker Swarm Cluster ssh -fNL 2375:localhost:2375 -p 2200 Export DOCKER_HOST=:2375 End result: Pass Docker commands natively to Swarm cluster through newly created SSH tunnel

33 CONTINUOUS INTEGRATION CONTINUOUS DEPLOYMENT
YOU CONTINUOUS INTEGRATION WEB APPS CONTINUOUS DEPLOYMENT INFRASTRUCTURE

34

35

36 Demo

37 The shift to DevOps OLD WORLD Focus on planning
Compete, not collaborate Static hierarchies Individual productivity Efficiency of process Assumptions, not data NEW WORLD Focus on delivering Collaborate to win Fluent and flexible teams Collective value creation Effectiveness of outcomes Experiment, learn, and respond

38 RECAP HOW DO WE CONNECT? AUTHENTICATION
NON-INTERACTION AUTHENTICATION METHOD SERVICE PRINCIPAL NAME USING THE SPN CREATION SCRIPT CODE IS SCALABLE! IT’S JUST IAC – BASH SCRIPTS. THIS CAN SCALE WITH VIRTUALLY ANY CI/CD TOOL!

39 QUESTIONS?

40 www.jessicadeen.com | @jldeen github.com/jldeen/
Thank you! github.com/jldeen/ Channel 9 - We’ve gone through a journey today, through the various capabilities of Azure that support your path toward digital transformation, from app innovation, to data and intelligence, to open and flexible deployments, to trust. We’re here to partner with you as you continue to innovate and transform. Thank you.


Download ppt "DevOps: CI/CD to Azure through Codeship"

Similar presentations


Ads by Google