Here are some high level use cases to get us discussing the boundaries of libcloud. There are some things in here which may or may not be part of libcloud, and the anbiguity should be good to help drive the boundaries.
Actor:
Jerome the Application Deployer: Owns an applications, responsible for the SLA of the application
Use Case: Enroll with the Cloud ------------------------------- Jerome chooses to use CloudCo as his cloud provider. Jerome enrolls with CloudCo providing them his credentials and his billing information. Jerome is provided with an additional set of credentials which he must use when authenticating with CloudCo.
Use Case: Test Application ---------------------------- Jerome bundles an application with Fedora to create his test image. He loads the image into the cloud. His application is database intensive, so he launches the image and associates a data disk to the instance where DB files are to be located. He sets an FQDN for the instance, and uses this FQDN to do testing. Jerome finds an issue with the image, so he updates the image in the cloud as well as his internal gold copy. Once testing is complete, Jerome generates a new gold image and reloads a second version of the image. He then performs another round of testing. Once satisfied, Jerome leaves the instance running for 1 week for his users to sanity test the application.
Use Case: Simple Deployment -------------------- Jerome is satisfied with the gold copy of the instance. Jerome clones the image to create a new image for production, and assigns a new FQDN. Jerome associates new storage with the production image for the production database. Jerome configures automated backup of the database, and sets up monitoring to inform him when the image stops working.
Note: Not dealing with multi-tier applications with firewalls or clustering.
Use Case: Reporting ----------------------- Jerome is required to maintain a 3 nines uptime. On the first of each month, Jerome queries for the uptime of the image in order to generate his statistics. Jerome also queries disk, bandwidth, and memory usage in order to generate his chargeback reports.
Use Case: Decommissioning ------------------------ CloudCo has only allowed Jerome to achieve a 95% uptime for 3 months. Jerome decides to go with iCloud instead of CloudCo. Jerome has enrolled with iCloud,and exports his image and data files from CloudCo and loads them into iCloud.
Other Ideas Not covered here ---------------------------- - granting access to images. - firewalls, LANS, - clustering - Recovery
-- bk