Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates to Server Products #114

Open
drewlyall opened this issue Feb 12, 2014 · 2 comments
Open

Updates to Server Products #114

drewlyall opened this issue Feb 12, 2014 · 2 comments

Comments

@drewlyall
Copy link
Collaborator

We need to address issues arising when clouds allow contiguous values for defining a server product.
Firstly we should allow free integer values for both CPUs and Ram.
Secondly, volumes would be better if treated separately from the server product string - perhaps ServerProduct could have an array of volumes.
This would allow better control for those clouds that treat Server Products this way.

@daniellemayne
Copy link
Contributor

In Cloudstack, when you launch a server from an ISO as opposed to a template, there is an additional parameter which must be set.
This is for the root disk volume.
Cloudstack has two calls to list the available offerings for both server and disk products (serviceOfferingID and diskOfferingID respectively) but we need to ensure we have a way to specify them both.
See http://cloudstack.apache.org/docs/api/apidocs-4.2/user/deployVirtualMachine.html

@erik-johnson
Copy link

We should have a supportsServerProducts method to determine if we should be specifying a product or CPU and Ram and Volume values when launching a server. I think there should also be getCPURequirements, getMemoryRequirements, getVolumeRequirements methods or something like that so we know what values are allowed in the clouds that don't have products. Those would return an object that has a min value, a max value and an increment value or a list of supported values. Some clouds would probably return -1s if there is no min/max/interval or -2 if it's not documented or something like that.

Right now we enforce those kinds of requirements in places like this, but there isn't a way to let the user know what the requirements are:

https://github.com/greese/dasein-cloud-terremark/blob/2013.07/src/main/java/org/dasein/cloud/terremark/compute/VMSupport.java#L220-227

https://github.com/greese/dasein-cloud-terremark/blob/2013.07/src/main/java/org/dasein/cloud/terremark/compute/VMSupport.java#L242-247

drewlyall pushed a commit that referenced this issue Nov 11, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants