Download presentation
Presentation is loading. Please wait.
1
Microsoft Virtual Academy
Free, online, technical courses Take a free online course.
2
Open Source for DevOps Practices
Ross Gardler David Tesar
3
We will cover… DevOps Overview Azure Basics + Process Tools
Source Code Repos + Communication Reproducible Environments Automated Testing Deployment & Configuration Management Release Management Monitor + Learn
4
Source Control & Collaboration
5
Centralized Version Control - Locking
History
6
Centralized Version Control - Merge
History
7
Distributed Version Control
History History History
8
Centralized and Distributed
Git Mercurial Bazaar Centralized Subversion CVS TFS VSS
9
Comparison Centralized Distributed
Hard drive space required for history? No Yes Who has latest revision? Central “master version” Variable, need to make rules Where is full history? Central machine Local machine Work offline? No* How fast are operations? Network-dependent Fast, most are local Branching and merging? Reliable, use w/ caution Reliable, used often Learning curve Relatively simple Relatively hard
10
Familiarity with source repository
11/7/2018 Familiarity with source repository Repository Version Control Main Test Version 1 Version 2 Main Branch Hierarchy Dev Feature A Feature B © 2014 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.
11
Centralized Workflow Shared Repository Developer Developer Developer
12
Integration-Manager Workflow
Blessed Repository Developer Public Developer Public Developer Public Integration Manager Developer Private Developer Private Developer Private
13
Dictator and Lieutenants Workflow
Blessed Repository Dictator Lieutenant Lieutenant Developer Public Developer Public Developer Public
14
Collaboration Challenges
15
Manually configuring the environment
16
Testing and Production
How is the environment set-up? Which Operating System? Which version of Node? Which endpoints are open? What other services are needed in the network? Etc.
17
Recap Lots of ways to do source code repos
Need more than just source code repo to effectively communicate Need a common way to define your infrastructure and app configuration
18
Resources Microsoft Git Repos Version Control & Git Learning
Version Control & Git Learning
19
Reproducible Environments
20
Infrastructure & Configuration as Code
11/7/2018 Infrastructure & Configuration as Code DEV Value Optimized Resources Accelerate Delivery CODE STAGE Measure Deployment Rate MTTR DEV OPS PRODUCTION © 2014 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.
21
Architecture Decisions
11/7/2018 Architecture Decisions Most control, but most management overhead Most cost Puppet/Chef/DSC agent integration Easier to port workloads from on-premises Azure VMs (IaaS) Easiest portability from on-premises Ecosystem of apps Host OS abstracted, but still requires management Security concerns Containers (PaaS) Startup tasks More complex workloads Do more than websites APM compatible Azure Cloud Services (PaaS) Easy CI and CD setup Easy Auto Recovery Easy Testing in Prod Easy deployments and scale Efficient Cost Only websites Azure Websites (PaaS) © 2014 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.
22
Azure Programmatic Interfaces
TechReady 18 11/7/2018 Azure Programmatic Interfaces √ = Current √ = Resource Manager SERVICES POWERSHELL XPLAT-CLI MAML REST Chef, Puppet, Vagrant Virtual Machine √ √ √ C P V Cloud Service Website √ √ Network C P Storage SQL Database P Service Bus Resource Groups Scheduler Monitoring Search HDInsight Mobile Services Azure AD Not a complete list © 2014 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.
23
OSS Tools for Environments
11/7/2018 OSS Tools for Environments Test Deploy Environments Monitor and Learn ONE CONSISTENT PLATFORM ON- PREMISES SERVICE PROVIDER Microsoft Azure Production/Stage Develop Build Developer Workstations Chef Puppet Labs Vagrant Source GitHub Codeplex Vagrant Dev/Test Processes © 2014 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.
24
Docker on Azure
25
Docker is…
26
VMs vs Containers Containers are isolated,
App A App A’ App B Containers are isolated, but share OS kernel and, where appropriate, bins/libraries Bins/ Libs Bins/ Libs Bins/ Libs VM Guest OS Guest OS …result is significantly faster deployment, much less overhead, easier migration, faster restart Guest OS Guest OS Guest OS App A App A’ App B App B’ App B’ App B’ Container Hypervisor (Type 2) Bins/Libs Bins/Libs Host OS Host OS Server Server
27
Microsoft and Docker http://msopentech.com/opentech-projects/docker/
Docker and Microsoft TechEd Europe 2014 breakout session
28
Choice
29
Building a Docker container
30
Configuration as Code We now have our application configuration as code Bootstrapping a machine is the same for all applications Install docker Get the source code What about infrastructure configuration? Docker is not suitable, we’ll look at solutions later
31
Testing and Deployment
Using containers export DOCKER_HOST=tcp://mydockerhost.com:4243 docker --tls run -p 49160:8080 -d server curl
32
Vagrant & Packer
33
Tools, Process and Team Our development lead, Jane, uses
Vagrant to provision her VMs Puppet to configure it Jane wants a reproducible VM for her Dev team Regardless of their preferred OS and Dev tooling Jane also wants to share the VM with the testing team Testing is done on a public cloud today but it might be some other cloud tomorrow
34
What is Vagrant?
35
Why Vagrant? Why Abstraction from host provider easily replicated for new colleagues; no longer any cases of "works on my machine" Automate the setup of the development environment easily replicated for new colleagues; no longer any cases of "works on my machine". Consistent workflow for developing and testing once tested, easily replicable in production environments both on and off premise How Hyper-V and Azure provider therefore Vagrant can manage and automate Hyper-V and Azure VM’s
36
Base configuration vagrant init cirex/Ubuntu-13.10
vagrant up –provider=hyperv vagrant ssh You need to be using a shell with SSH (e.g. MinGW) Alternatively connect via Hyper-V manager (username “vagrant”, password “vagrant” /vagrant on the guest is mapped to your PuppetDemo folder Edit your files on the host using your preferred tools
37
Configuring Vagrant Images
With Puppet With Chef
38
Azure is just another provider
vagrant up --provider=azure Need to do some additional configuration in vagrantfile: config.vm.provider :azure do |azure| #Configuration of Azure provider goes here End
39
Vagrant Cloud
40
What is Packer? http://packer.io JSON
Template JSON Builders Amazon, Azure, Docker, GCE, OpenStack, VMWare … Post-Processor Docker *, Vagrant, vSphere … Provisioners Ansible, Chef *, Puppet *, Salt, Shell Script Build The end deliverable VM
41
Where are the Hyper-V and Azure images?
packer-hyperv packer-azure
42
Recap Think seriously about your app architecture first!
Reproducible environment Container or VM based application Staging server for customer validation Easy to share Where are we at? Fairly manual process so far No word of testing yet
43
TechNet Virtual Labs Deep technical content and free product evaluations Hands-on deep technical labs Free, online, technical courses At the TechNet Evaluation Center you can download free, trial versions of Microsoft software, with no feature limits. Dozens of trials are available – all at no cost. Try Windows Server 2012 for up to 180 days. Download the Windows 8 Enterprise 90-day evaluation. Or try Microsoft Azure at no-cost for up to 90 days. Microsoft Hands On Labs offer virtual environments that will take you through guided, technically deep product learning experience. Learn at your own pace in labs that you can complete in 90 minutes or less. There is no complex setup or installation is required to use TechNet Virtual Labs. Microsoft Virtual Academy provides free online training on the IT scenarios that are important to your company and your career. Learn at your own pace and boost your IT skills with over 100 courses across more than 15 Microsoft technologies including Windows Server, Windows 8, Microsoft Azure, Office 365, virtualization, Windows Phone, and more. Download Microsoft software trials today. Find Hand On Labs. Take a free online course. Technet.microsoft.com/evalcenter Technet.microsoft.com/virtuallabs microsoftvirtualacademy.com
44
11/7/ :43 PM © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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. © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.