devops: continuous delivery and windows azure
Post on 27-Aug-2014
90 Views
Preview:
DESCRIPTION
TRANSCRIPT
DevOps: Continuous Delivery and Windows AzureIbon Landa
Plain Concepts
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
Principles behind the Agile Manifesto
How long would it take your organization to deploy a change that involves just one single line of code?
Do you do this on a repeatable, reliable basis?
Mary & Tom PoppendieckImplementing Lean Software Development
Done means "released". This implies ownership of a project right up until it’s in the hands of the user, and working properly. There’s none of this "I’ve checked in my code so it’s done as far as I’m concerned".
James Betteley
SOFTWAREDELIVERYMODELS
#1: No model, or random delivery.
#2: Let the operations guys figure out.
#3: Defined and collaborative approach.
DELIVERY PRACTICES
Versioneverything
Automate everything
Tokenize configurations
Use one-click deployments
Deploy to a copy of production
Deploy the same way to every environment
Have always a rollback mechanism in place.
Lock down
the environments.
Buildonlyonce
Measure the delivery process
26
Optimización de despliegues
1 2 3 Weeks
Provisioning new HWSW
Install/config
QACertif.
On-premises
Windows Azure
From 1-3 weeks to 30 minutes
Every machine certified separately
Basic checks prior to switch from staging
QACertif.
Bring the pain forward
PracticeDevOps!
Build a release pipeline
Virtual Networks
(10.0.0.0/16)
(10.2.0.0/16)
(10.1.0.0/16)
10.0.0.1010.0.0.11
131.57.23.120
10.2.2.0/24 10.2.3.0/24
10.2.2.0/24 10.2.3.0/24
65.52.249.22 10.1.0.4 10.1.1.4
Continuous Delivery
Recipes and CookbooksthatUSEE:
Recipes and Cookbooks that describe and
deliver code.
Chef enables people to easily build & manage complex & dynamic applications at massive scale.
• New model for describing infrastructure that promotes reuse
• Programmatically provision and configure• Reconstruct business from code repository,
data backup, and bare metal resources
What is Chef?Chef is an IT automation platform for developers & systems engineers to continuously
define, build, and manage infrastructure.CHEF USES:
Organizations
Environments
Roles
Nodes
Recipes
Resources
Cookbooks
Run-lists
Chef Concepts
■Azure plugin for Chef■Request new VM from Azure API
■Bootstrap it over WinRM
■Install and start Chef
■Register with Chef server
■Run through the “run list”
■Instant infrastructure with one command
Provisioning with Chef
■Easy to configure, reproducible, and portable work environments
■VirtualBox, Hyper-V, VMware, AWS, or any other provider. Windows Azure is not supported now.
■Shell scripts, Chef, or Puppet, can be used to automatically install and configure software on the machine
■Vagrant uses a base images: Boxes
■This Vagrant plugin allows you to standup Windows guests using WinRM instead of SSH
Why vagrant?
■Automate your OpenStack cloud infrastructure
■Juju Charms define applications as services
■An Ubuntu, OSX or Windows machine to install the client on
■GUI or command-line
Ubuntu juju
Charms for everything you need
juju generate-config
ALM your way
■A continuous deployment solution for .NET teams■Automates the deployment process
■Simplifies managing multiple environments
■Improves collaboration throughout the process
■Provides release analytics and reporting
■History■Originally launched in 2009 as InRelease by InCycle Software
■InRelease 2.0 launched in 2010, 3.0 in 2013
■Acquired by Microsoft in 2013
Release Management
Automation
Collaboration
Team Foundation Server integration
Analytics & reporting
What about your own patterns & practices?
Think about some delivery practice not covered in the session.
Thanks @jlsoriat!
http://aka.ms/ReleasePipeline
Thanks!
Madrid29 de Marzo
http://spain.windowsazurebootcamp.org
top related