devops: continuous delivery and windows azure

73
DevOps: Continuous Delivery and Windows Azure Ibon Landa Plain Concepts

Upload: plainconcepts

Post on 13-Dec-2014

121 views

Category:

Software


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: DevOps: Continuous Delivery and Windows Azure

DevOps: Continuous Delivery and Windows AzureIbon Landa

Plain Concepts

Page 2: DevOps: Continuous Delivery and Windows Azure
Page 3: DevOps: Continuous Delivery and Windows Azure
Page 4: DevOps: Continuous Delivery and Windows Azure
Page 5: DevOps: Continuous Delivery and Windows Azure
Page 6: DevOps: Continuous Delivery and Windows Azure
Page 7: DevOps: Continuous Delivery and Windows Azure

Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

Principles behind the Agile Manifesto

Page 8: DevOps: Continuous Delivery and Windows Azure

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

Page 9: DevOps: Continuous Delivery and Windows Azure

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

Page 10: DevOps: Continuous Delivery and Windows Azure

SOFTWAREDELIVERYMODELS

Page 11: DevOps: Continuous Delivery and Windows Azure

#1: No model, or random delivery.

Page 12: DevOps: Continuous Delivery and Windows Azure

#2: Let the operations guys figure out.

Page 13: DevOps: Continuous Delivery and Windows Azure

#3: Defined and collaborative approach.

Page 14: DevOps: Continuous Delivery and Windows Azure

DELIVERY PRACTICES

Page 15: DevOps: Continuous Delivery and Windows Azure

Versioneverything

Page 16: DevOps: Continuous Delivery and Windows Azure

Automate everything

Page 17: DevOps: Continuous Delivery and Windows Azure

Tokenize configurations

Page 18: DevOps: Continuous Delivery and Windows Azure

Use one-click deployments

Page 19: DevOps: Continuous Delivery and Windows Azure

Deploy to a copy of production

Page 20: DevOps: Continuous Delivery and Windows Azure

Deploy the same way to every environment

Page 21: DevOps: Continuous Delivery and Windows Azure

Have always a rollback mechanism in place.

Page 22: DevOps: Continuous Delivery and Windows Azure
Page 23: DevOps: Continuous Delivery and Windows Azure

Lock down

the environments.

Page 24: DevOps: Continuous Delivery and Windows Azure

Buildonlyonce

Page 25: DevOps: Continuous Delivery and Windows Azure

Measure the delivery process

Page 26: DevOps: Continuous Delivery and Windows Azure

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.

Page 27: DevOps: Continuous Delivery and Windows Azure

Bring the pain forward

Page 28: DevOps: Continuous Delivery and Windows Azure

PracticeDevOps!

Page 29: DevOps: Continuous Delivery and Windows Azure

Build a release pipeline

Page 30: DevOps: Continuous Delivery and Windows Azure
Page 31: DevOps: Continuous Delivery and Windows Azure
Page 32: DevOps: Continuous Delivery and Windows Azure
Page 33: DevOps: Continuous Delivery and Windows Azure

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

Page 34: DevOps: Continuous Delivery and Windows Azure

Continuous Delivery

Page 35: DevOps: Continuous Delivery and Windows Azure
Page 36: DevOps: Continuous Delivery and Windows Azure
Page 37: DevOps: Continuous Delivery and Windows Azure

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:

Page 38: DevOps: Continuous Delivery and Windows Azure
Page 39: DevOps: Continuous Delivery and Windows Azure

Organizations

Environments

Roles

Nodes

Recipes

Resources

Cookbooks

Run-lists

Chef Concepts

Page 40: DevOps: Continuous Delivery and Windows Azure

■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

Page 41: DevOps: Continuous Delivery and Windows Azure
Page 42: DevOps: Continuous Delivery and Windows Azure
Page 43: DevOps: Continuous Delivery and Windows Azure
Page 44: DevOps: Continuous Delivery and Windows Azure
Page 45: DevOps: Continuous Delivery and Windows Azure
Page 46: DevOps: Continuous Delivery and Windows Azure
Page 47: DevOps: Continuous Delivery and Windows Azure
Page 48: DevOps: Continuous Delivery and Windows Azure

■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?

Page 49: DevOps: Continuous Delivery and Windows Azure
Page 50: DevOps: Continuous Delivery and Windows Azure
Page 51: DevOps: Continuous Delivery and Windows Azure
Page 52: DevOps: Continuous Delivery and Windows Azure
Page 53: DevOps: Continuous Delivery and Windows Azure
Page 54: DevOps: Continuous Delivery and Windows Azure

■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

Page 55: DevOps: Continuous Delivery and Windows Azure

Charms for everything you need

Page 56: DevOps: Continuous Delivery and Windows Azure
Page 57: DevOps: Continuous Delivery and Windows Azure
Page 58: DevOps: Continuous Delivery and Windows Azure

juju generate-config

Page 59: DevOps: Continuous Delivery and Windows Azure
Page 60: DevOps: Continuous Delivery and Windows Azure
Page 61: DevOps: Continuous Delivery and Windows Azure
Page 62: DevOps: Continuous Delivery and Windows Azure

ALM your way

Page 63: DevOps: Continuous Delivery and Windows Azure

■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

Page 64: DevOps: Continuous Delivery and Windows Azure

Automation

Page 65: DevOps: Continuous Delivery and Windows Azure

Collaboration

Page 66: DevOps: Continuous Delivery and Windows Azure

Team Foundation Server integration

Page 67: DevOps: Continuous Delivery and Windows Azure

Analytics & reporting

Page 68: DevOps: Continuous Delivery and Windows Azure
Page 69: DevOps: Continuous Delivery and Windows Azure

What about your own patterns & practices?

Think about some delivery practice not covered in the session.

Thanks @jlsoriat!

http://aka.ms/ReleasePipeline

Page 70: DevOps: Continuous Delivery and Windows Azure
Page 71: DevOps: Continuous Delivery and Windows Azure

Thanks!

Page 72: DevOps: Continuous Delivery and Windows Azure

Madrid29 de Marzo

Page 73: DevOps: Continuous Delivery and Windows Azure

http://spain.windowsazurebootcamp.org