a path to achieving true cloud portability

19
A Path to Achieving True Cloud Portability Tyler Fitch Customer Success Engineer at Chef @tfitch

Upload: tyler-fitch

Post on 27-Aug-2014

91 views

Category:

Software


1 download

DESCRIPTION

Moving applications from a traditional data center to a cloud provides immediate and real advantages in the way services are delivered to customers. What if you could also easily move from one cloud to another?

TRANSCRIPT

Page 1: A Path to Achieving True Cloud Portability

A Path to Achieving True Cloud PortabilityTyler FitchCustomer Success Engineer at Chef @tfitch

Page 2: A Path to Achieving True Cloud Portability

Define: Portability

A1: Your infrastructure is repeatable (and hopefully automated)

If you need someone to create and/or configure a serverit will be difficult to be portable

A2: You’re just a DNS change* away from new servers

* More specifically, you are your DNS’s TTL away from new, replacement or expansion servers

Page 3: A Path to Achieving True Cloud Portability

Gloom and Doom

Your hosting solution faces a couple of serious problems

Disaster Recovery

Photo: Iwan Baan

Your Data Center

Page 4: A Path to Achieving True Cloud Portability

Gloom and Doom

Your hosting solution faces a couple of serious problems

$$$

IT COSTS TOO MUCH

Page 5: A Path to Achieving True Cloud Portability

Joy and DelightConfiguration Management

Page 6: A Path to Achieving True Cloud Portability

Configuration Management

Infrastructure as code

run_list['webserver']

webserver/recipe/default.rbinclude_recipe 'nginx'

But this is not why we are here!

Page 7: A Path to Achieving True Cloud Portability

Joy and Delight

Machine Management

Page 8: A Path to Achieving True Cloud Portability

Scalr

A Cloud Management Platform.

Using a Web UI to manage your machines in your cloud(s)

Page 9: A Path to Achieving True Cloud Portability

Chef Metal

machine 'db' do

recipe 'postgresql'

end machine 'web1' do recipe 'nginx' end

Machines as code

Page 10: A Path to Achieving True Cloud Portability

Chef MetalMachines as *code*

with_machine_batch 'my_batch'

1.upto(50) do |i| machine "web#{i}" do recipe 'nginx' end end

Page 11: A Path to Achieving True Cloud Portability

How to Provision Machines with Chef Metal

An engineer can run it locally

Perfect for Proof of Concepts with quick iterations

But requires a person to execute the commands

Great from 9-5! Not great for the proverbial 3am issue.

Page 12: A Path to Achieving True Cloud Portability

How to Provision Machines with Chef Metal

Automation is better!

Let machines do the work within rules you define.

1. Nagios is monitoring your servers2. When a metric (CPU load, # connections, etc) reaches your threshold3. Nagios sends alert4. Jenkins responds to alert by spinning up new/more machines

Page 13: A Path to Achieving True Cloud Portability

Where to Provision Machines

A1: The place that costs you the least amount of money

A2: Your local machine.Happy engineers make applications rapidly

Page 14: A Path to Achieving True Cloud Portability

Where to Provision Machines

Supported providers:• OpenStack• LXC - Docker• EC2• DigitalOcean• SoftLayer• VSphere• VirtualBox• VMWare Fusion• Bare metal (SSH, no PXE yet)

• More providers are just an API away

Page 15: A Path to Achieving True Cloud Portability

Advantages we have gainedOps Life:

Your servers are now cattle.

They come, they go.They have important jobs, but they do not have names.

Photo: earthtimes.org

Page 16: A Path to Achieving True Cloud Portability

Advantages we have gainedBusiness Life:

Wheel and deal for savings with your hosting providers

Use the savings to take your engineers to Vegas

Photo: dumblittleman.com

Photo: myallinclusivedeals.com

Page 17: A Path to Achieving True Cloud Portability

Knowledge is Power

AKA: Always Be Learning

DISASTER RECOVERYhttp://www.slideshare.net/lnxchk/disaster-recovery-strategies-with-config-management-cfgmgmtcamp-2014

CHEF METALhttps://github.com/opscode/chef-metal

http://slides.com/jkeiser/chef-metal

Page 18: A Path to Achieving True Cloud Portability

Thank you

@tfitch

Page 19: A Path to Achieving True Cloud Portability