model-driven deployment : the best practice successor to virtual appliances

33

Upload: therese-wells

Post on 12-Jun-2015

726 views

Category:

Technology


1 download

DESCRIPTION

Model-Driven Deployment: The Best Practice Successor to Virtual Appliances Presented by Standing Cloud CEO David Jilk at GlueCon2012

TRANSCRIPT

Page 1: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances
Page 2: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Model-Driven DeploymentThe Best Practice Successor to Virtual Appliances

Dave JilkCEO, Standing Cloud, Inc.

May 24, 2012

Page 3: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

AGENDA

1. What are Virtual Appliances and Models?2. Virtual Appliances are a Tar Pit of Despond3. Why Models will Rock your World4. Tools and Techniques for the Win

Page 4: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

DEFINITIONSWhat are Virtual Appliances and Models?

1. What are Virtual Appliances and Models?2. Virtual Appliances are a Tar Pit of Despond3. Why Models will Rock your World4. Tools and Techniques for the Win

Page 5: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

A Virtual Appliance is a

pre-configured bootable

disk image for an application or

stack

Page 6: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

a.k.a.

Golden ImageSoftware Appliance

TemplateSnapshot

Amazon Machine Image (AMI)VMWare ESX Image

Page 7: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

SysAdmin

configures

a serverby hand,

Saves a complete copy of the

drive to a file,

Which can be booted

as a virtual

machine.

Creating Virtual Appliances

Page 8: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

This is much easier to test and

support than a software installer.

Page 9: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

A Modelis a set of structured

procedures for automating

application or stack

management

Page 10: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Base O/S+

Deployment Script

+Scripts for backup and restore,

version upgrades, scaling, adding and removing services, porting, etc.

Page 11: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

THE PROBLEMVirtual Appliances are a Tar Pit of Despond

1. What are Virtual Appliances and Models?2. Virtual Appliances are a Tar Pit of Despond3. Why Models will Rock your World4. Tools and Techniques for the Win

Page 12: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

I got a girlfriend with bows in her hair

And nothing is better than that

Is it? Talking Heads

Page 13: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Let’s Talk About Combinatorics!

O/S versionsX

Stack configurationsX

Application versionsX

Virtualization environmentsX

Optional features

Page 14: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Makes a configurati

onchange,

And burns a

new golden image.

SysAdminboots

the golden image

as a VM,

Virtual Appliance Updates

Repeat

Page 15: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Like scanning a photo. Then scanning the scan. And so

on.

After a while, it’s

incomprehensible.

Page 16: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

It’s OK, though.

Your SysAdmins document all their work.

Page 17: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

But wait, that’s not all!A separate approach is required for

lifecycle management of the deployment.

Multi-server deployments require either manual control or an integration script.

Credentials must be baked into the virtual appliance, creating a security hole.

Creation of the virtual appliance is a bottleneck for system testing.

Page 18: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

This worked in an era of static, snapshot stages

Page 19: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

But in an agile, dynamic, devops world …

Page 20: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

anachronisticunmanageable

bottleneck.

… virtual appliances are an

Page 21: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

THE SOLUTIONWhy Models will Rock your World

1. What are Virtual Appliances and Models?2. Virtual Appliances are a Tar Pit of Despond3. Why Models will Rock your World4. Tools and Techniques for the Win

Page 22: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Models

Adopt two basic techniques from software development

Abstraction&

Modularization

Page 23: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

if ($database == MYSQL)install_mysql($op_system)connect_php_to_mysql()

else if ($database == ORACLE)install_oracle($op_system)connect_php_to_oracle()

end

This is pseudo-code. The engineers don’t let me write real code any more. I’m not bitter.

Abstraction

Modularization

Page 24: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

This solves the two biggest problems with virtual

appliances

Combinatoric Proliferation

Because the combinations are represented by parameters

Generational LossBecause scripts are self-

documenting

Page 25: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Model scripts are also

Small & DynamicWhich addresses all the other

problems with virtual appliances.

If you have the right tools.

Page 26: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

THE TOOLSTools and Techniques for the Win

1. What are Virtual Appliances and Models?2. Virtual Appliances are a Tar Pit of Despond3. Why Models will Rock your World4. Tools and Techniques for the Win

Page 27: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Virtual Appliance Generators

This approach only addresses the documentation problem.

Page 28: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Configuration Management

Page 29: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Model Repositories

Page 30: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

?

Page 31: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

There is one relative

disadvantage of model-driven deployment.

Any ideas?

Page 32: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances

Provisioning Latency

This could be solved with a “burn image” API function

embedded into the IaaS orchestration layer.

It is still a manual operation on most public clouds.

Page 33: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances