Top Banner
CloudKitty by Objectif Libre Christophe Sauthier – CEO Stéphane Albert – DevOps & Technical Leader for CloudKitty The Rating Component for OpenStack
22

OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Aug 11, 2015

Download

Documents

objectiflibre
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty by Objectif LibreChristophe Sauthier – CEO

Stéphane Albert – DevOps & Technical Leader for CloudKitty

The Rating Component for OpenStack

Page 2: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Innovative infrastructure technologies

Your #ID please ?

A 100% Open Source Services

Company

Satisfied clients &Community involvement

ConsultingExpertise

DeploymentsSupport

We Linux #Cloud #Virtualization#Automation

98% of happy traineesMajor OpenStack Contributor

OpenStack 'Starter Packs'Comprehensive training catalog

Page 3: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Branches Toulouse | Paris

The year we were born

employeesin our

Dream Team

And we are looking for more !

trained (and happy) people

OpenStack SummitBTW: who owns the loyalty program?

Our YtoY growth

The part of 2015 revenues invested in R&D

Yes We Count!

2009

2

+3000+30%

5th 11%

10

Page 4: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Our OpenStack Involvement

We spread OpenStackTrainings for all tastes, support and skill leverage, proofs of concepts

We contribute any time we can

We deploy OpenStack clouds for our clients & partners

We gave birth to CloudKitty to fill in the gap in rating

Page 5: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Let us introduce you… CloudKitty

The Rating Component for OpenStack

Developed with full respect of OpenStack best practices

Integrated with OpenStack

Interfacing with Ceilometer API and much more

Integrated in Horizon

Highly-modular

Metrics module

(Ceilometer or other) API

Rating policy configuration

Tariff view, even before resource activation

Cost analysis follow-up

Usage live follow-up and history

User view

API or GUI(Horizon

extension)

Admin view

Data extraction in any format for post-treatmentAPI

API or GUI(Horizon

extension)

Page 6: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Thanks to CloudKitty, you can...

IT ManagersCloud

ProvidersPublishers

Charge for use any application or SaaS

solution,

On cloud infrastructures… or old-

fashion ones!

Charge usage for all types of clouds

Address each of your clients – it's multi-

tenant

Analyze data from OpenStack… and also

from your own data

Define and apply your pricing policy

Give users tools to predict and track their

usage

Page 7: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Orchestrator

Keystone

Tenant Fetcher

Keystone1

Filters tenant to be processed

Page 8: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Configuration file:

[tenant_fetcher]

backend = keystone

[keystone_fetcher]

username = cloudkitty

password = password

tenant = service

region = RegionOne

url = http://keystone.mycloud.com:5000/v2.0

Page 9: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Orchestrator

Keystone

Tenant Fetcher

Ceilometer

Meta

Keystone Ceilometer

Collector

2

Fetch usage information Using multiple collectors

if using meta

Page 10: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Configuration file:

[collect]

collector = ceilometer

period = 3600

wait_periods = 2

services = compute,image,volume,network.floating,network.bw.out,network.bw.in

[ceilometer_collector]

username = cloudkitty

password =

tenant = service

region =

url = http://127.0.0.1:5000

Page 11: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Orchestrator

Keystone

Tenant Fetcher

Ceilometer

Meta

CK Format

Ceilometer

Keystone Ceilometer

Collector Transformers

3

Transformation of the various data collected Shared between collectors

Dependencies enforced by the collectors

Page 12: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Orchestrator

Keystone

Tenant Fetcher

Ceilometer

Meta

CK Format

Ceilometer

Keystone Ceilometer

Rating

Collector

Hashmap

Noop

Transformers

4

Processing of the calculation Multiple modules sequentially

applied (priority set by API) Module are dynamically

enabled/disabled

Page 13: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Orchestrator

Keystone

Tenant Fetcher

Ceilometer

Meta

CK Format

Ceilometer

Keystone Ceilometer

Storage Rating

Collector

Hashmap

Noop

Sqlalchemy

Transformers

5

Writes the

processed data to

backend

Page 14: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Configuration file:

[storage]

backend = sqlalchemy

Page 15: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty's internals: developed with all OpenStack standards

Orchestrator

Keystone

Tenant Fetcher

Ceilometer

Meta

CK Format

Ceilometer

Keystone Ceilometer

Storage Rating

Collector

Hashmap

Noop

Sqlalchemy

Transformers

6

Glues previous components Manage the

workers

Page 16: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Report Generator

Output the stored data as a consolidated file

Various output formats (even multiple at a time)

Allows importing into third-party software

Page 17: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

A closer look at Hashmap

Matching arbitrary values from service type to resource metadata Group : Define set of rules that are processed together

Service : Match a CK Service (compute, network,..)

Field : Match a resource metadata field (flavor, image_id,...)

Mapping- Can be attached to a service or a field

- Map the value of a metadata to a cost and a type of cost

Threshold- Can be attached to a service or a field

- Define thresold levels on a metadata to a cost and a type of cost

Page 18: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Enough chalk talk !

Let's create a rating policyand look at the impact on the user side

Demo !

Page 19: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

CloudKitty Roadmap

Q1 2015 Q2 2015 Q3 2015 Q4 2015

New dashboards with

reporting

ODS Vancouver

Dedicated WebSite

La PosteCustom POC Orange Business

Services tryLooking for much

more !

Big Tent OpenStack

Asynchronous worker pool

Partnerships with major actors

ODSTokyo

Translation

CloudWeek Paris

New rating parameters

e-téra project

Configurable rating period

Page 20: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Try it with devstack!

enable_plugin cloudkitty https://github.com/stackforge/cloudkitty masterenable_service ck-api ck-proc

enable_plugin cloudkitty https://github.com/stackforge/cloudkitty masterenable_service ck-api ck-proc

enable_plugin cloudkitty https://github.com/stackforge/cloudkitty masterenable_service ck-api ck-proc

enable_plugin cloudkitty https://github.com/stackforge/cloudkitty masterenable_service ck-api ck-proc

enable_plugin cloudkitty https://github.com/stackforge/cloudkitty masterenable_service ck-api ck-procR

atin

g as

a S

erv

ice

with

Clo

udK

itty

✂✂

Page 21: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Visit us Booth T57

Page 22: OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback component for OpenStack

Thank you

www.objectif-libre.com

@objectiflibre

Stéphane Albert (sheeprine) Christophe Sauthier (huats)