devops: continuous delivery and windows azure

Post on 13-Dec-2014

121 Views

Category:

Software

3 Downloads

Preview:

Click to see full reader

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