Your SlideShare is downloading. ×
Donabe - Basic Models/Technology
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Donabe - Basic Models/Technology

2,220
views

Published on

Donabe is a multi-tier Application Container Service and a top level orchestrator that will provision/deploy complex apps. These slides were presented at the Openstack Essex Design Summit in Boston.

Donabe is a multi-tier Application Container Service and a top level orchestrator that will provision/deploy complex apps. These slides were presented at the Openstack Essex Design Summit in Boston.

Published in: Technology, Business

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,220
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
77
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Donabe
    Debo~ Dutta (dedutta), Rick Clark (rickclar) @cisco
    http://etherpad.openstack.org/Donabe
  • 2. Conjecture: Applications are all that really matter to the end user!
  • 3. Anecdotal evidence: A CIO never sits around lamenting about infrastructure
    "I wish I had more servers so we could manage our customer relationships better“
    "SugarCRM's social media features would help our sales force be more responsive to the needs of our customers. How can I have that tomorrow?"
  • 4. Donabe is a multi-tierApplication Container Service and a top level orchestrator that will provision/deploy complex apps.
    Use case: e.g. ruby/rails guy: cares for 1) a scalable ruby tier and 2) scalable mysql tier network segments.
    Scalable
    Ruby/Rails
    Container
    scalable
    MySQL
    container
  • 5. Whats new?
    LB
    Apache
    passenger
    Scalable
    Ruby/Rails
    Container
    scalable
    MySQL
    container
    Mysql
    master
    Stdby
    master
    Mysql slaves
  • 6. Rails
    container
    LB
    LB
    Apache
    passenger
    Apache
    passenger
    Mysql
    master
    Stdby
    master
    Mysql
    master
    Stdby
    master
    Mysql slaves
    Mysql
    container
    Mysql slaves
  • 7. Rails
    container
    LB
    Apache
    passenger
    A collection of widgets?
    interconnected …
    Bunch of configs?
    Bundled in a profile …
    N-tier apps?
    Flexible app profiles?
    …….. And more?
    Mysql
    master
    Stdby
    master
    Mysql
    container
    Mysql slaves
    What is Donabe (again!)?
  • 8. What should we focus on first?
  • 9. Applications have requirements
  • A simple thought
    Donabe –abstract container model – (mimics a network of widgets)
    Abstraction of resources
    Infrastructure
    Apps (bundles)
    Nested containers/widgets
    Each container has ports (widget level ports?)
    for connecting to other containers
    Ways to connect nested containers
    Wont delve into policies here!
    Container definition will point to policy object
  • 17. API
    Resources
    Container
    Name
    Type
    (contains) List of containers
    Relationships of lower level containers (aka sub-widget graph)
    Policy
    Policy
    Opaque, known only to the SPs who implement containers
    Separate template from instance
    Templates need a specification language
    Our choice: Declarative Languages
    Thus API will have a manifest property
  • 18. Declarative Domain-Specific-Language
    We need a DSL to declare the relationships between the containers and declare requirements that are not specifically owned by a container.
    • In prelim talks with puppet folks to extend the puppet manifest language for this purpose
  • The language needs to be declarative, because we want to be done, but not how to do it.
    I should be able to say I need a 2Gb/s connection between this point in container 1 and this point in container 2,
    without knowing anything about the networking devices or the commands and values that need to be supplied to accomplish my request.
  • 19. Container Types
    Compute
    VMs, clusters, processes
    Network
    Virtual Network Segments
    L2 container (like Quantum)
    Storage
    Objects, files, blocks, blobs
    App – higher layer
    Abstracts workloads
  • 20. Compute Containers
    Generic VMs or lightweight VM containers.
    Encompasses current VM semantics
    Can be used for openVZ or LXC
    Connected via virtual or real switches
    A server connected to an access
    Blade server/chassis (cisco, hp, ibm etc)
    Connects to the same access switch
    Simple example:
    apache container has a nested compute container
    This container specifies a VM or a LXC container to run
  • 21. Network containers
    Forms the pipes/segments used by other containers to talk to each other.
    Refine attachment points/ports semantics
    VMs  vNIC
    Quantum/L2 network  ports
    Apps  socket/ports
    Widgets  in/out ports
    Can support point-point or multipoint communication
    Services containers can be injected using a filter path/graph model e.g. a bump-in-the-wire chain
    E.g. Quantum is a good L2 network container ….
  • 22. Key work areas for Essex
    Model/APIs
    Agreement of models needed for 1st phase.
    Declarative languages
    Puppet network additions
    Integration with OVF 2.0 profiles
    Widget library/container template design
    Orchestration (stretch)
    Scheduling
  • 23. Who is doing something similar?
    In openstack - ? …
    Heroku?
    Cloudscaling?
    Opscode?