Self-service Cloud View 4.4
This is a simplified view mainly intended for cloud consumers that just require a portal where they can provision new virtual machines easily. They just have to select one of the available templates and the operating system that will run in this virtual machine. For more information about the suntone views, please check the following guide
In this scenario the cloud administrator must prepare a set of templates and images and make them available to the cloud users. Templates must define all the required parameters and just leave the DISK section empty, so the user can select any of the available images. New virtual machines will be created merging the information provided by the user (image, vm_name…) and the base template. Thereby, the user doesn't have to know any details of the infrastructure such as networking, storage…
These are the steps that an administrator should follow in order to prepare a self-service scenario for his users.
Create a new group for the users, to which you want to expose the cloud vie.
<xterm> $ onegroup create cloud_consumers </xterm>
Update the /etc/one/sunstone-views.yaml
file adding the new group and the desired view (cloud
).
groups: oneadmin: - admin - user cloud_consumers: - cloud
and restart sunstone-server after that.
Create new users in this group
<xterm> $ oneuser crete new_user password $ oneuser chgrp new_user cloud_consumer </xterm>
You can modify the functionality that is exposed in this view, in the /etc/one/sunstone-views/cloud.yaml
file.
Prepare a set of template that the cloud consumers will use to create new instances. These templates should define all the required parameters of the virtual machine that depends on you network, storage… but should not define the OS image of the virtual machine. The OS image will be selected by the user in the creation dialog along with the template.
Example:
<xterm> $ cat small-x1-1GB.template NAME = small-x1-1GB MEMORY = 1024 CPU = 1
NIC = [ NETWORK = “Public” ]
GRAPHICS = [
TYPE = "vnc", LISTEN = "0.0.0.0"]
$ cat large-x4-8GB.template NAME = large-x4-8GB MEMORY = 8192 CPU = 8
NIC = [ NETWORK = “Public” ]
GRAPHICS = [
TYPE = "vnc", LISTEN = "0.0.0.0"]
$ onetemplate create small-x1-1GB.template $ onetemplate create large-x4-8GB.template </xterm>
If you want to make these template available to the users of the cloud_cosumers group, the easiest way is to move them to that group and enable the use permission for group:
<xterm> ontemplate chgrp small-x1-1GB.template cloud_consumers ontemplate chmod small-x1-1GB.template 640 </xterm>
You can also create the template using the Sunstone wizard
Prepare a set of images that will be used by the cloud consumers in the templates that were created in the previous step.
<xterm> $ oneimage create –datastore default –name Ubuntu-1204 –path /home/cloud/images/ubuntu-desktop \
$ oneimage create –datastore default –name CentOS-65 –path /home/cloud/images/ubuntu-desktop \
</xterm>
If you want to make these available available to the users of the cloud_consumers group, the easiest way is to move them to that group and enable the use permission for group:
<xterm> oneimage chgrp Ubuntu-1204 cloud_consumers oneimage chmod CentOS-65 640 </xterm>
End users that want to interact with Sunstone have to open a new browser and go to the url where the Sunstone server is deployed. They will find the login screen where the username and password correspond to the OpenNebula credentials.