10. Testing testing testing On Sep 12, 2013, at 12:27 PM, Everett Toews wrote:
> Hi All, > > I had a great chat with Nirmal on IRC today. I got a good feel for what it > will take to add Rackspace support to Stratos. Here are the work items and > stumbling blocks we identified. > > 1. Get Stratos code and IDE setup (Done). > > 2. Learn how to deploy Stratos as a user. > > 3. Learn how to deploy Stratos as a developer from an IDE to test changes to > the Cloud Controller (CC). > > 4. Create a Cartridge (i.e. an Image) [1] for Rackspace. > > Intermediate stumbling block here is that Rackspace doesn't support > customized public images but it does support customized private images. That > means we'll have to provide a guide for users to create an Image that will > work with Stratos. FYI, Rackspace users can't share images but a user can > share an images with it's sub-users. > > Cartridge creation could be eased by use of Rackspace Deployments [2] but it > would take time to get up to speed on that too. > > 5. Implement a RackspaceIaas by extending > org.apache.stratos.cloud.controller.interfaces.Iaas. > > Minor stumbling block here is that Rackspace doesn't have floating/elastic > IPs. Not really a big deal. Picking up the auto assigned public IP after the > instance has started will suffice. Iaas.associateAddress() will need to > return an empty String. > > 6. Get the Stratos payload into the Cartridge instance. > > Major stumbling block here is that Rackspace doesn't support cloud-init like > functionality. Servers can be created with something similar known as > Personality [3] but it's pretty limited. > > We could hack something together so that the Image has a script that expects > a URL (or some other data) in the Personality file that directs it to > download the payload from the CC. This means something would have to be built > into the CC to allow this download of the payload file. > > This was just our initial stab at the problem. Suggestions or alternatives > are welcome. > > 7. Security > > Rackspace supports key pairs so that's okay. > > Intermediate stumbling block here is that Rackspace doesn't support security > groups. We might have to lock down the machines manually with iptables or > something. Here's the list of ports that Stratos uses [4]. > > 8. Documentation. > > User and developer documentation > > 9. Examples. > > Examples on how to use it. > > > Can anyone see anything we've missed? > > Are there any assumptions hidden in here? > > As the Rackspace cloud evolves, some of these pain points will go away. But > for now, this is what we have to deal with. > > Thanks, > Everett > > > [1] https://cwiki.apache.org/confluence/display/STRATOS/Creating+a+Cartridge > [2] > http://www.rackspace.com/blog/automate-your-deployments-quickly-easily-launch-your-app-in-the-rackspace-cloud/ > [3] > http://docs.rackspace.com/servers/api/v2/cs-devguide/content/Server_Personality-d1e2543.html > [4] > https://cwiki.apache.org/confluence/display/STRATOS/Common+IaaS+Configurations
