cooking the cloud

12
Cooking the cloud Managing configuration with Chef, and How Abiquo uses it to provision nodes Ignasi Barrera Senior Software Engineer

Upload: ignasi-barrera

Post on 07-Nov-2014

1.099 views

Category:

Technology


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Cooking the cloud

Cooking the cloud

Managing configuration with Chef, and

How Abiquo uses it to provision nodes

Ignasi Barrera

Senior Software Engineer

Page 2: Cooking the cloud

We will talk about…

The need for configuration management

Quick overview of Chef and its different flavors

What the jclouds-chef project is

How we can combine it with jclouds

How Abiquo integrated Chef inside the platform

Page 3: Cooking the cloud

Configuration management

Centralization of the configuration

Automation in large infrastructures

Ease of maintenance

Automatic provisioning

Page 4: Cooking the cloud

How does it look like in Chef

Cookbooks Recipes

Ruby scripts Templates Configuration attributes

Nodes Maintain the configuration of each node

Databags

Page 5: Cooking the cloud

ChefContext chefContext = ContextBuilder.newBuilder(“chef|hostedchef|privatechef”)

.credentials(client, certificate) .build();

chefContext.getApi(); // Returns the typed API

Pick your favorite flavor

Community Chef (Open source)

Hosted Chef (PaaS, free limited account)

Private Chef (Opscode Chef inside the firewall)

Page 6: Cooking the cloud

The Chef service

Stores bootstrap configurationThe configuration is stored in the Chef Server and is accessible for jclouds and the nodes

Generates the bootstrap scriptThe script can be executed with the ComputeService

updateBootstrapConfigForGroup(runlist, config, group);

bootstrap = createBootstrapScriptForGroup(group); compute.runScriptOnNode(id, bootstrap);

Page 7: Cooking the cloud

The Abiquo approach

Software provisioning should be a simple process

Users should be able to provision and configure software when they need it

Each tenant should be able to configure custom software packages

Page 8: Cooking the cloud

Tenant management

Each tenant can configure the access to a custom Chef server

The tenant will be able to manage the cookbooks and recipes in the Chef server

Page 9: Cooking the cloud

Node configuration

The list of recipes available in the tenant’s Chef server is presented to the user

The user can select which recipes and roles will be applied to the node

Supports live configuration!

Page 10: Cooking the cloud

Resources

http://www.abiquo.com

http://www.opscode.com

http://www.jclouds.org

Page 11: Cooking the cloud

Follow us!

Me: https://twitter.com/IgnasiBarrera

Abiquo: https://twitter.com/abiquo

Abiquo Engineering: https://twitter.com/abiquolabs

Jclouds: https://twitter.com/jclouds

Page 12: Cooking the cloud

Thank you!