I think this is a great conversation to have, but maybe we should wait until 
after the 4.0 release? Seems like it might be a bit of a distraction right now…

On Aug 8, 2012, at 9:38 PM, Alex Huang wrote:

> CloudStack 3.x has quite a bit of baggage after years of development.  This 
> makes it difficult for new committers to join the project.  Even for existing 
> committers, it is easy to make mistakes.  We're looking to make some 
> fundamental changes to CloudStack to overcome these problems.  Please feel 
> free to comment.
> 
> Problems:
>  - No clear separation between orchestration and the subsystems being 
> orchestrated.  We've done a lot of work in this area in networking.  However, 
> storage and hypervisor  are still missing.
>  - No clear separation between orchestration and the ACL system.  
>  - No clear separation between orchestration and the extra services (read 
> SSVM, console proxy VM)
>  - CloudStack believes it is the master of all physical resources when it is 
> not.
> 
> Goals:
>  - Form a core orchestration engine that is free of unnecessary artifacts 
> such as ACL.
>  - Clear definition of functionalities and how to contribute to different 
> parts of CloudStack.
>  - Allow developers to write and deploy services on the CloudStack 
> orchestration server.
> 
> Design:
> CloudStack will be refactor into the following functional areas.  Details to 
> follow after the design.
> Orchestration Platform will include the following:
>  - Orchestration Framework:  Orchestration engine is key in cloud 
> infrastructure.   
>  - Subsystem Plugins: Actual implementations in network, hypervisor, and 
> storage of the orchestration steps.
>  - Services Framework: A framework for others developers to build additional 
> services that can be launched using the Orchestration Service.
>  - Events Framework: Allow third-party components to integrate with 
> Orchestration Platform through events only.
> 
> On top of the Orchestration Platform, CloudStack will come with the following 
> Services which can be enabled/disabled without affecting CloudStack 
> orchestration functionalities.  Each of these services can be deployed on 
> bare metal, VM, or as a webapp.
>  - ACL Service to provide advance ACL control to other services launched
>  - End User API Service to provide orchestration of end user VMs
>  - ConsoleProxy Service to provide console access
>  - Template Service to provide template/ISO transport and access within a zone
>  - Router Service to provide routing services to end user VMs
>  - Object Store Service to provide object store functionality
>  - EC2 API Service
> 
> Details:
> Orchestration Platform
>  - Continues to manage hardware resources
>  - Provide administrative API/UI
>  - Minimal ACL provided
>  - Provides a Services Directory for services to find each other
>  - Includes the following components
> 
> Orchestration Framework
>  - Orchestrates VMs, Volumes, Templates, Networks operations within a data 
> center
>  - Ensures the operations are idempotent
>  - Deals with hiccups and maintenances needs of the system administrator so 
> that services built on top do not have to.
>  - Breaks down cloud operations into steps and pushes the steps to the 
> subsystems to be perform but does not actually perform the steps.
> 
> Subsystem Plugins:
>  - Plugins that knows how to perform different functionalities that the 
> orchestration framework needs.
>  - Current Subsystem Planned: Deployment Planning, NetworkGuru, 
> NetworkElement, Storage, Snapshot, Backup (see Edison's RFC)
> 
> Services Framework:  (RFC upcoming)
>  - Leverages the current system VM to allow more services to be built.
> 
> Events Framework: (RFC upcoming)
>  - Publishes all Orchestration platform entity changes as events.
>  - Allow other components outside of Orchestration Platform to interact with 
> Orchestration Platform only through event notifications.
> 
> Design Thoughts:
>  - In this design, end user API and end user VMs is one particular service 
> provided.  End User VM services can innovate independently from the 
> Orchestration Platform.
>  - Domains and Accounts will reside with the ACL service which can integrate 
> with Active Directory and LDAP services.  
> 
> --Alex
> 

Stratosec - Secure Infrastructure as a Service
o: 415.315.9385
@johnlkinsella

Reply via email to