cloudstack / saltstack lightning talk at devops amsterdam

Post on 04-Dec-2014

1.672 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

This is my lightning talk from DevOps days Amsterdam on June 14th. I present a quick hack I did during LinuxTag berlin. Saltstack is an alternative to Puppet and Chef, written in Python it has an active community and is easy to use. Saltstack has a cloud client called salt-cloud which can use apache libcloud to interact with Cloud providers. I created a coudstack driver in saltstack and patched libcloud to be able to use salt on a CloudStack cloud. This talk lasted 5 minutes as per the rules of DevOps Lightning talk.

TRANSCRIPT

CloudStack and SaltStack

Sebastien Goasguen@sebgoa

June 13th 2013Amsterdam, Netherlands

Apache CloudStack

Talk to the Cloud

Master

Minions

Salt Cloud

libcloud

• Python module that provides a Cloud Provider API abstraction

• Ability to write apps using multiple providers

• Now with an improved CloudStack driver

libcloud

conn=Driver(key=apikey,secret=secretkey,secure=True,host=host,path=path)

conn.list_locations()

conn.list_images()

conn.list_sizes()

conn.create_node(name=’foobar',image=images[0],size=offerings[0])

Patching libcloud

• https://issues.apache.org/jira/browse/LIBCLOUD-332

• https://issues.apache.org/jira/browse/LIBCLOUD-333

• https://issues.apache.org/jira/browse/LIBCLOUD-337

• https://issues.apache.org/jira/browse/LIBCLOUD-338

Git pull in salt-cloud

Defining a Provider

providers:

exoscale:

apikey: <api key>

secretkey: <secret key>

host: api.exoscale.ch

path: /compute

securitygroup: default

user: root

private_key: /path/to/private/key

provider: cloudstack

Node Profilesubuntu-exoscale-master:

provider: exoscale

image: 1d16c78d-268f-47d0-be0c-b80d31e765d2

size: b6cd1ff5-3a2f-4e9d-a4d1-8988c1191fe8

ssh_interface: public

ssh_username: root

keypair: exoscale

make_master: True

master:

user: root

interface: 0.0.0.0

ubuntu-exoscale-minion:

provider: exoscale

image: 1d16c78d-268f-47d0-be0c-b80d31e765d2

Using it$salt-cloud –list-locations exoscale

$salt-cloud –list-images exoscale

$salt-cloud –list-sizes exoscale

$salt-cloud –p ubuntu-exoscale-master mymaster

$salt-cloud –p ubuntu-exoscale-minion myminion

Thank you and Info

• Apache Top Level project• http://www.cloudstack.org• #cloudstack on irc.freenode.net• @cloudstack on Twitter• http://www.slideshare.net/cloudstack• http://www.slideshare.net/sebastiengoasguen• http://www.youtube.com/diycloudcomputing

• http://cloudstack.apache.org/mailing-lists.html

Welcoming contributions and feedback !

Sebastien Goasguen@sebgoa

top related