Model-Driven Deployment : The Best Practice Successor to Virtual Appliances
-
Upload
therese-wells -
Category
Technology
-
view
726 -
download
1
description
Transcript of Model-Driven Deployment : The Best Practice Successor to Virtual Appliances
![Page 1: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/1.jpg)
![Page 2: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/2.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/3.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/4.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/5.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/6.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/7.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/8.jpg)
This is much easier to test and
support than a software installer.
![Page 9: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/9.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/10.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/11.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/12.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/13.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/14.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/15.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/16.jpg)
It’s OK, though.
Your SysAdmins document all their work.
![Page 17: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/17.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/18.jpg)
This worked in an era of static, snapshot stages
![Page 19: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/19.jpg)
But in an agile, dynamic, devops world …
![Page 20: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/20.jpg)
anachronisticunmanageable
bottleneck.
… virtual appliances are an
![Page 21: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/21.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/22.jpg)
Models
Adopt two basic techniques from software development
Abstraction&
Modularization
![Page 23: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/23.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/24.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/25.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/26.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/27.jpg)
Virtual Appliance Generators
This approach only addresses the documentation problem.
![Page 28: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/28.jpg)
Configuration Management
![Page 29: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/29.jpg)
Model Repositories
![Page 30: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/30.jpg)
?
![Page 31: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/31.jpg)
There is one relative
disadvantage of model-driven deployment.
Any ideas?
![Page 32: Model-Driven Deployment : The Best Practice Successor to Virtual Appliances](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/32.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022081512/557ab05dd8b42a79378b4fd2/html5/thumbnails/33.jpg)