Welcome to CloudStack-UI!

_images/cloudstack_logo.png

CloudStack-UI is a project which purpose is to provide an easy-to-use, light, and user friendly frontend interface for the Apache CloudStack virtualization management system.

Apache CloudStack is a great product which is widely used. But its frontend is developed for administrators (from our point of view), not for cloud end users. Some of the interactions are not straightforward and unnatural to an average user and require quite a long time to adapt. Other reasons to develop the UI are connected with lack of functions like virtual machine statistics & charting, sophisticated resource accounting, and application management.

That’s what we are trying to add to Cloudstack-UI. The work is still in progress. But for now we have already covered lots of features that make CloudStack more good-looking and intuitive.

Project on GitHub

Join CloudStack-UI LinkedIn Group

Contents:

Overview

CloudStack-UI is a project which purpose is to provide an easy-to-use, light, and user-friendly front-end interface for the Apache CloudStack virtualization management system.

Apache CloudStack is a great product which is widely used. But its front end is developed for administrators (from our point of view), not for cloud end-users. Some of the interactions are not straightforward and unnatural to an average user and require quite a long time to adapt. Other reasons to develop the UI are connected to the lack of functions like virtual machine statistics & charting, sophisticated resource accounting, and application management.

That is what we are trying to add to Cloudstack-UI. The work is still in progress. But for now we have already covered lots of features that make CloudStack more good-looking, intuitive and convenient.

Project on GitHub.

Join the CloudStack-UI LinkedIn Group.

Project History

This page provides some background about the project, describes what CloudStack-UI is, and why it was developed.

At Bitworks Software, we have been running an ACS public cloud for 3 years (actually we still run CS 4.3 cloud in production). And we have found that average users who are familiar with Digital Ocean, Amazon AWS, and other VPS management systems feel uncomfortable with original CloudStack UI and make a lot of operational mistakes. That is why we have decided to implement a convenient and neat end-user facing UI covering regular activities, which are important for day-to-day VM management.

There are several aims we strived to achieve with the new UI:

  1. The first goal is to make the UI more intuitive in terms of usability, business processes and typical use-cases.
  2. As nowadays people move further from desktop PCs and go full mobile, we wanted the UI to have a support for that. Having a full control of your cloud from a smartphone, what could be better?
  3. One of the major goals we want to achieve is to build a UI that is possible to support for many years. That’s why we have to use only modern technologies.
  4. From the technical perspective we also want the UI to support additional meta-information like descriptions, colors, groups, helpers. All of that is not supported by the native UI and it could be used to add some additional semantics to the entities that user has: like Vms, snapshots and so on.
  5. The next key point that we wanted to cover with the new UI is to have some extra features beyond the functionality that CloudStack provides, e.g. DNS management, helpdesk integration, PaaS management, runtime statistics charts and monitoring.
  6. And a final goal is to have a community support that could help us to improve the product and provide better user experience for the CloudStack users.

Implementation Details

Designed compatible with Apache CloudStack 4.10 and has been tested for 4.9.

Powered by Angular and Material 2.

Tested and works fine in next modern browsers:

  • Google Chrome 60.0.3112.78
  • Chromium 60.0.3169.0
  • Mozilla Firefox 54.0.1
  • Safari 5.1.7
  • Internet Explorer 11.483.150630

Documentation

The documentation for the project is presented in the CloudStack-UI User Guide that explains to average users how to use the UI when working with CloudStack. It also includes explanations on managers’ part clarifying how to manage the cloud infrastructure via CloudStack-UI.

We hope the new features we support will be useful for both end-users and administrators.

How to Contribute

CloudStack-UI is an open-source project. It is developed by an open and friendly community. Everybody is welcome to contribute and engage with the community. We are happy to accept any contribution. You can contribute to the project development in various ways:

  1. Share the information about the project with other people, try to install the UI and share your opinion with us and your colleagues.
  2. Propose useful features. Ideas are always welcome.
  3. Deploy it somewhere and inform us about your success story and we will share it in the adopters section.
  4. Fix bugs and send us the PR.
  5. Implement a feature from the Roadmap or simply make something new.
  6. Support and promote the development of specific functions which are important to you and may be shared.
  7. Provide testing environment for other deployment schemes. Now we interested in testing the app with
    1. KVM with RBD
    2. Xen with NFS, Local, RBD
    3. Oher browsers and operating systems
  8. Hire us for frontend or backend development of custom software development projects. Take a look at our website to know where we can be useful. Take a look at our presentation to learn more about us.

To contribute, just contact us via e-mail: info@bw-sw.com

CloudStack-UI User Guide

CloudStack-UI is created to make it easier for end-users to use cloud infrastructure - to view and use their cloud resources, including virtual machines, templates and ISOs, data volumes and snapshots, security groups, and IP addresses.

The documentation gives precise instructions on working with the interface. The UI is quite intuitive and user-friendly, but we still advise studying the documentation first to get deeper insight of the features.

Here is the documentation structure:

Start Working With CloudStack-UI

This page is aimed to help you to make first steps at CloudStack-UI. If you have never worked with CloudStack before, you should start with installing the CloudStack platform. Follow the instruction in the official documentation.

Then deploy CloudStack-UI (see the instructions for deployment).

Logging In

To enter the platform use your credentials provided by an administrator:

Note

Required fields are marked with asterisks (*).

  • User name * - The user ID of your account.

  • Password * - The password associated with the user ID.

  • Domain - Specify domain when you log in. CloudStak-UI supports three ways to do it. Choose the one which is more convenient for you:

    1. Enter a domain in the field under the “Show advanced options” button adv icon.
    2. Administrator can set a domain in configurations. Domain field will be prepopulated with the specified value. It is more convenient for a user as he/she does not need to enter the domain every time at logging in. In this case the domain field can be hidden by clicking adv icon. Find more information on the feature configuration at the configuration guide.
    3. Another way to log in is to enter a URL in the format http://<ip-address>/login?domain=<domain>. The domain will be prepopulated in the logging in form with the value that is specified in the URL. Please, note, the domain value in URL will override the domain set in the configurations by Administrator.
_images/LoginScreen.png

Push “Login” to proceed to CloudStack. You will see the first section - Virtual Machines.

To the left you can see the main navigation bar. It shows the user name and allows moving from section to section.

_images/NavBar_AccDetails.png

When entering the system, a user sees the Virtual Machines section at the second level of the menu. At the first level, the main navigation bar has two expandable sections with the following nested menu items:

  • Virtual Machines
    • Virtual machines
    • Storage
    • Images
    • Snapshots
    • Firewall
    • SSH keys
    • Logout
  • Accounts
    • Accounts
    • Activity log
    • Settings
    • Logout

Note

The Logout section is placed at both levels.

To move between levels, click menu icon and then one of the two levels.

_images/NavBar_2level.png

Resource Usage

In this section you can see the resource statistics: used and free VMs, computational resources, volumes and storage space.

Unfold Resource Usage panel in the upper part of the screen. It provides information on the following resources:

  1. Virtual machines;
  2. Computational resources - CPU, RAM;
  3. Volumes and snapshots;
  4. Storage - primary and secondary.

You can switch between used or free resources by clicking the option you need above the resource data list.

A user can see the resource usage statistics for his/her user only.

_images/VMs_ResourceUsage_User1.png

A Domain Administrator can view resources for his/her account and for the whole domain.

Notifications on Pending Operations

In the upper-right corner of the screen, you can see the list of pending operations by clicking a bell button bell icon. It informs you of the latest operations in the system. You can clear the list after its reviewing by deleting every notification one by one or by clicking “CLEAR ALL” at the list bottom.

_images/VMs_Alerts2.png

Alongside with the notification panel, the action completion confirmation additionally appears in the snackbar notification at the page bottom.

_images/Snackbar.png

In case of errors at data loading the snackbar also notifies of them. In this case it has a refresh button that refreshes the whole app.

_images/VMs_Snackbar2.png

Support Information in Error Messages

A user can add the information on support services to all error messages to let users get assistance faster in case of a failure. Support information should be specified in the support-info.md file stored in a special folder of the project. It may include contacts e.g. phone numbers, emails or any other details.

The specified support details will display under a drop-down menu. Click it in the error message window to expand it.

_images/RN_Supportinfo.png

Localization of the file is supported.

Virtual Machines

Virtual Machines is the starting section. Here and in all other views we have implemented a “one-step” approach, and we also made it work without moving from view to view. So all actions on VMs can be managed from one screen view.

In this section, you can perform actions over a VM, that is to create, start, stop, delete it. Besides, here you can configure the machine editing its service offering parameters, group, firewall rules. The UI allows monitoring the resource usage and viewing statistics of VM performance. Making a VM snapshot allows capturing the machine’s data volumes and CPU/memory state and easily revert the VM to the snapshot state. Finally, you can access a VM selecting the most appropriate way. We support three options for accessing a VM: via the console, SSH or HTTP.

_images/VM_Management.png

Below, you will find the detailed information on the aforementioned options for VM management via CloudStack-UI.

Virtual Machines List

At this page, you can see the list of your virtual machines available to your user only.

_images/VMs_List_User2.png

If you are a Domain Administrator you can see the virtual machines of all users in the domain.

You can change the data representation of existing virtual machines from “card” to “list”. We have added the switch view icon/box icon in the upper-right corner of each section. This improvement gives a user an opportunity to work with data in each specific section in a more convenient way.

A list view can be switched to a box view:

_images/VMs_List.png

And vice versa, switch a list view to a box view:

_images/VMs_Boxes.png

For each VM in the list you can see the following information:

  • VM name and IP;
  • State - shows the VM state by color spot: green for Running, red for Stopped, yellow for changing status;
  • OS family;
  • CPU;
  • RAM;
  • Disks.

To the right the Actions button actions icon expands the list of actions available for the VM.

Filtering of Virtual Machines

The filtering and search tool will help you to find a virtual machine in the list.

_images/VMs_FilterAndSearch_User2.png

You can filter the VM list by accounts (available for Domain Administrators) and/or zones and/or groups and/or states. In the drop-down lists tick the filtering parameters and see the immediate result.

Besides, VMs can be grouped by zones and/or groups and/or colors and/or accounts. Grouping makes it easier to identify necessary VMs on the list.

_images/VMs_Filter.png

Use the search tool to find a virtual machine by its name or a part of the name.

Under the Virtual Machines section, you can open a form to create a new virtual machine.

Create a Virtual Machine

Creating a new VM in CloudStack-UI is a one-step action. You can select options from one screen without additional steps.

Please, note that a virtual machine is created with a root disk so you do not need to add any volume at the VM creation step. If necessary, you can add a data disk to the VM later.

_images/VMs_CreationOverview.png

To create a new VM click the “Create” button create icon at the bottom-right corner.

_images/VMs_Create5.png

The New virtual machine form contains two tabs: General and Advanced.

In the General tab the following fields should be filled in:

Note

Required fields are marked with an asterisk (*).

  1. VM display name * - A name of VM that will be displayed in the machine list and in any other interface place (except VM details). You can define here any VM name you wish.
  2. Zone * - A zone of VM operation. Select a zone from the drop-down list. The list of available zones is managed by a Root Administrator. More information about zones in CloudStack can be found in the official documentation.
  3. Service offerings * - Select a set of options and resources for a VM, such as templates for creating virtual machines, disk storage, and other. In the block of the form, a default service offering displays if it is specified in the configuration file.

Click “SELECT” in the Service Offerings block and choose any other option you wish in the modal window.

_images/VMs_Create_SO_Custom_Change6.png

The list of available service offerings is managed by an Administrator. Service offering availability is determined by zone in the configuration file. Service offerings are devided into two lists: Fixed and Custom.

Fixed service offerings are the offerings with fixed parameters. They can not be changed.

Custom service offerings are offerings with adjustable parameters. You can set the amount of CPU cores, CPU memory and Network rate as you need.

Use the switcher “Fixed/Custom” above the list to select a necessary type of offerings.

If service offering classes are determined in the configuration file (see the configuration guide), the list of service offerings is displayed as a list grouped by the determined classes. You can filter the list by classes using the filtering tool above the list. Classes provide additional semantics defining the purpose of VM.

_images/VMs_Create_SOClasses1.png

You also can use the search tool to find an option in the list by a name or a part of the name.

Fixed Service Offerings

For fixed service offerings the parameters are provided in the table per each option. Four main parameters are provided by default. They are:

  • CPU Cores;
  • CPU (MHz);
  • Memory (MB);
  • Network Rate (Mb/s).

Click “SHOW DETAILS” to the right to expand the range of parameters. Scroll the table to right and you will see:

  • Disk read rate (Mb/s);
  • Disk write rate (Mb/s);
  • Disk read rate (IO/s);
  • Disk write rate (IO/s).

You can hide the additional parameters by clicking “HIDE DETAILS”.

_images/VMs_Create_SO_AdditionalFields1.png

Choose the option in the list and click “SELECT” below.

_images/VMs_Create_SO_Select2.png

The settings will appear for the VM service offerings.

Custom Service Offerings

For custom service offerings the parameters are also provided in the table per each option. Besides, you can see more parameters by clicking “SHOW DETAILS”.

By selecting an option in the list, you open a modal window where you can set values for the following parameters:

  • CPU Cores;
  • CPU (MHz);
  • Memory (MB).

These parameters can be predefined in the configuration file by an Administrator. The values specified there will be used as default parameters for a custom service offering.

Administrators can set limits for custom service offering parameters in the configuration file. That means you cannot set values larger than the limits specified for custom service offerings.

Besides, the system checks the available account resources. And if you try to enter a value larger than the available amount of resources, the system will automatically change it to the maximum available value.

_images/VMs_Create_SO_Custom3.png

Click “CONFIRM” to set the custom service offering parameters. The modal window will close and the set values will appear in the list for the selected custom service offerings option. Click “CANCEL” to drop all the settings.

Click “SELECT” below the list to assign a selected service offering to your machine. The custom settings will appear for the VM service offerings. Custom service offering parameters are saved to account tags (see the list of tags) if they are supported for the account. This will make it easier for you to use saved custom parameters for service offerings next time at VM creation as they will be predefined in the form automatically.

Note

The system checks the amount of available account resources. In case a selected service offering does not fit the amount of available account resources, a warning message will appear saying the offering cannot be selected.

  1. Installation source * - Select an installation source - a Template or an ISO file - that will be used to create the machine from. In the block you can see the installation source selected by default. Click “Select” to choose an installation source you wish. In a modal window you will see a list of templates/ISOs with the “Ready” status available for the selected zone as well as for user’s account or the whole domain.

    The filtering tool allows finding a necessary option by selecting among templates/ISOs by OS families, types and groups, or search the source by a name or a part of its name.

    Tick the source in the list and click “SELECT” to implement the selected source.

    Click “CANCEL” to drop selected options. No source will be selected then.

_images/VMs_Create_IstallationSource2.png

The Disk size slider below the Installation source block allows changing the size of a root-disk of the VM. The default minimum size is determined by the account limits and shown in the number field. Move the slider or enter a number value in the field to set the root-disk size.

_images/VMs_Create_IstallationSource_DiskSize.png
  1. Disk offering - Available if ISO is selected as a source. Here you can see a disk offering preselected for the machine. To choose another disk offering open a modal window by clicking “SELECT” in the disk offering section and choose a disk offering in the list of available disk offerings. The list of available options is managed by an Administrator. Disk offering availability is determined by the zone defined in the configuration file.
_images/VMs_Create_DO1.png

For each disk offering you can expand detailed information by clicking the arrow icon or the whole line in the list. In the appeared section you will see a range of parameters. The following parameters are shown by default:

  • Bandwidth (MB/s): Read/Write rates;
  • IOPS: Read/Write rates and Min/Max values;
  • Storage type;
  • Provisioning type;
  • Creation date.

Use the scrolling tool to view them all.

More parameters can be added via the configuration file by an Administrator. Select a disk offering in the list and click “SELECT”.

_images/VMs_Create_DO1_Expanded.png

If the selected disk offering has a custom disk size (it is set by Administrator), you can change the disk size. Move the slider up to the volume size you wish.

_images/VMs_Create_DO_ChangeSize2.png

Note

If you do not have enough account resources, you will not be able to select the disk that does not fit the available amount of resources - an error will display.

Find more about disk offerings in the official documentation.

In the Advanced tab you will find the following fields:

_images/VMs_Create_Advanced1.png
  1. VM host name - This is a hostname for the machine. It will be shown only in the Virtual Machine tab of the VM details sidebar. The field is optional. You can enter any name you wish but it should start with a Latin letter, contain figures, Latin letters and ‘-’ (up to 63 symbols) and be unique within the zone. If the field is left empty, the system auto-generates a name in the following form: vm-<UID>.

  2. Group - Select a group from the drop-down list. Or create a new group by typing its name right in the field. If no group is assigned, a Default group will be displayed for this machine.

  3. Affinity group - Select an affinity group in the list or create a new group filling in the form. By clicking “SELECT” in the block you open a form with the list of existing groups and a creation block above the list.

    Create an Affinity group. To create a new affinity group you should fill in the form at the top of the dialog box:

    • Name * - Enter a name for the group. The name should contain letters, figures, start with a letter and should not contain spaces. Maximum length is 63 symbols.
    • Type * - Select type of the group - “anti-affinity” or “affinity”.
    • Description - Provide a short description. Maximum length is 63 symbols.

    Click “+” to add the new group with the specified settings to the list.

    Select a group. Click on a group in the list and press “SELECT”.

    What an affinity group is you can read in the official documentation.

  4. Firewall rules - Select a security group for the machine. Click “EDIT” to specify a security group for the VM. A default security group, defined in the configuration file, is shown in this field. To change it click “EDIT”. In the appeared window choose between “Create new” or “Select Shared” options.

Create a new security group

A new security group can be created on the base of templates. This security group will be created as a private group used for this VM only.

When creating a new security group, you can see the templates in the “All templates” section of the modal window. To form your custom security group, select a template in the “All templates” list at the left and move it to the “Selected templates” list at the right by clicking the arrow icon:

_images/VMs_Create_AddSecGr_New.png

Click “SELECT ALL” to move all templates from left to right at once.

Click “RESET” to drop all selected templates.

In the list below you will see the rules corresponding to the selected templates. All of them are checked as selected. Uncheck those you do not wish to add to your VM as firewall rules.

Click “SAVE” to apply the selected rules to your virtual machine.

Click “CANCEL” to drop the selected options. No rules will be assigned to the virtual machine. You will return to the “Create new virtual machine” window.

Select Shared security group

If you would like to select an existing group of firewall rules, you can click the “Select Shared” option and tick those groups in the list that you want to assign to your VM. The security groups in the Shared list are used by other VMs in the domain. That means you won’t be able to uncheck some rules in the group that you do not want to include into the list (like at creating VM from a template). You can assign only the whole shared security group to your VM.

_images/VMs_Create_AddSecGr_Shared1.png

You can edit a shared security group after the VM is created. In the Network tab of the VM details sidebar the assigned shared security group(s) can be viewed and edited. Please, find more information on security group editing in the Network Tab section.

Click “Cancel” to drop the selected options. No rules will be assigned to the virtual machine.

  1. SSH keypair - Select an SSH keypair. The list of keys contains the SSH keys available for the account under which the VM is being created. Find more information on SSH keys in the SSH Keys section.
  2. Start VM - Tick the box to start the VM right after its deployment. If this option is activated, the VM acquires an IP and a password (if required by the template). If it is not, the machine IP is not available till VM is started, no password is assigned to it.

Once all fields are filled in, click “Create”.

For some templates/ISOs used at VM creation you are offered to accept a “Template/ISO Terms and Conditions Agreement”. An administrator is able to specify an agreement for a template or ISO. An agreement may determine, for example, software licensing terms or restrictions on the liability of the software template vendor. A user must confirm it to continue VM installation from a chosen source.

If you are creating a virtual machine on the base of a template/ISO that requires an agreement, read the terms in the appeared window and click “I AGREE” to continue.

_images/VMs_Create_Agreement.png

Click “CANCEL” to close the terms and move back to the creation form. Change the installation source.

After clicking “CREATE”, a dialog window will appear where you can monitor the VM creation process: security group creation, virtual machine deployment, template tags copying, etc. These procedures are fulfilled one by one. A procedure in progress is marked with a spinner in the message. In case of an error occurring at any VM creation step, a user can understand at what step it has happened.

_images/VMs_Create_Logger.png

Once the VM creation process finishes, the success message will inform you of that.

_images/VMs_Create_SuccessMessage.png

The message will show the list of all creation steps and the virtual machine information:

  • VM name and IP (if it is available),
  • VM Password - This field appears after the VM creation if a password is enabled for the template used for creating this machine. A password is autogenerated. Click “SAVE” next to it in the dialog window if you want to save it for this VM. The password will be saved to the VM tags. You can see the saved password later by clicking “Access VM” in the Actions box for this machine.
_images/VMs_Create_Dialogue_SavePass.png

The system will ask you if you wish to save passwords to VM tags by default for the virtual machines created in the future. Click “Yes” and the “Save VM password by default” option will be activated in the account settings:

_images/Settings_SavePass2.png

It means the password will be saved to tags automatically for all created virtual machines.

From this window, you can access the VM opening VNC console.

Close the dialog window and make sure the newly created VM is in the list of virtual machines.

Click “CANCEL” to drop the VM creation.

Below, we have summarized possible issues that may take place at VM creation.

Possible Issues When Creating a Virtual Machine

You can face the following issues when creating a virtual machine:

  • Lack of resources.

    An important thing in CloudStack-UI is that the system immediately checks that a user has the amount of resources required to create a virtual machine. It does not allow launching the creation of a VM which will fail for sure because of the resource lack.

    If you lack the required amount of resources, the message will appear when clicking “Create Virtual Machine”:

    “Insufficient resources. You ran out of Primary storage.”

    No VM creation form is available.

  • VM host name you specified is not unique.

    If the name specified for the virtual machine is not unique within a zone, the dialog window after VM creation will show an error. The VM will not be created. The creation form will be closed. You will have to open the VM creation form and fill it in again. You will have to specify another host name for your VM or leave it empty to let the system autogenerate a correct unique host name in the form of vm-<UID>.

View API logs at VM creation failures

In case an error occurs at VM creation, the dialog box shows the text of the error. Next to it, there is the “Details” button. By clicking it you can open a list of raw logs including JSON requests to the server with their statuses. They can be easily copied by clicking the copy icon below.

_images/CreateVM_ErrorDetails.png

We implemented this feature to provide access to raw API logs and allow you to copy them and address the support service to get assistance in solving the problem in the shortest time.

VM Action Box

Once a VM instance is created, you can stop, restart, or delete it as needed. These actions are available under the “Actions” button actions icon to the right from each virtual machine in the list.

_images/VMs_ActionBox2.png

It allows performing the following actions with the VM:

  • Start VM - Allows a user to launch a VM,

  • Stop VM - Allows a user to stop a running VM,

  • Reboot VM - Allows a user to restart a VM,

  • Reinstall VM - Allows a user to reinstall a VM,

  • Destroy VM - Allows a user to delete a VM. After deleting the virtual machine will remain in the system. It will look faded in the list and can be recovered later.

    _images/VMs_Destroyed.png

    To recover a destroyed VM (which is not expunged) open the Actions list and click “Recover”.

    _images/VMs_RestoreDeletedVM.png

    Click “Expunge” to completely destroy the VM. The VM will not be available for recovering anymore.

    _images/VMs_DestroyExpunge.png

    When deleting a virtual machine, if the machine has data disks attached, the system will ask you in a dialog window whether these disks should be deleted. If data disks have snapshots, you will be offered to delete the snapshots as well by activating a “Delete snapshots” option in the dialog.

    Confirm your intention to delete disks (and snapshots) by clicking “Yes”. Click “No” to cancel the disk (and snapshots) deleting.

    _images/VMs_Destroy_DeleteSnaps.png
  • Reset password - Allows a user to change the password for VM (available for started VMs only in case a VM requires a password). The VM will be rebooted if you reset the password.

    _images/VMs_ResetPassDialogue.png

    After clicking “Yes” the VM will be rebooted and a new password will be autogenerated for it. You will see the new password in the dialog window.

    _images/VMs_PasswordReset.png

    Click “Save” to save the password for this VM. It will activate the “Save VM passwords by default” option in the Settings section (see Save VM passwords by default). In the future the password will be saved automatically right at VM creation. Click “OK” to close the dialog window.

  • Access VM - Opens an “Access VM” dialog window which allows to view VM name and IP, view and save a password for the VM and access the VM via the VNC console.

    _images/AccessVM_OpenConsole4.png

    In the Access a Virtual Machine section you can find more information on accessing a VM.

  • Log View - This option is available if the Log View plugin is activated via the configuration file. It allows creating and managing a secret token required for secure publishing of VM logs (see more details in the plugin documentation).

    _images/VMactions_ViewLogs.png

    Under the Log View submenu of the Action box a user can select between two actions:

    • Create token - Allows creating a token. When selected, it asks to confirm the action and opens a modal window with the newly created token:

      _images/VMactions_ViewLogs_Token.png

      The created token can be copied by clicking COPY.

      _images/VMactions_ViewLogs_CopyToken.png

      To access the detailed information on how to add the token to the Filebeat configuration, please, use the provided link to the plugin documentation:

      _images/VMactions_ViewLogs_UseToken.png

      Click OK to close the window.

    • Invalidate token - Allows making the token invalid. It is necessary in case of compromising when a token needs to be changed to a new one. In the appeared window, input the token into the text field and click INVALIDATE. The token will become invalid.

      _images/VMactions_ViewLogs_InvalidateToken.png

      Or you may click CANCEL to close the window. The token will remain valid.

  • Pulse - It is a new feature created in CloudStack-UI to visualize the VM performance statistics. By clicking “Pulse” at the Actions box you will open a modal window with 3 tabs: CPU/RAM, Network, Disk. There you can see the charts of resources statistics for the VM.

    _images/Pulse.png

    You can adjust the graphs by range, data aggregation period, shift interval and other parameters.

    This plugin is convenient for dynamic monitoring of VM performance. Find more information about it in the official documentation. Pulse plugin deployment instructions can be found at the Pulse Plugin page.

    Note

    Please, note, when performing one of the actions from the list, other actions in this list are disabled until the action in progress finishes.

VM Details Sidebar

For each virtual machine, you can get the details.

By clicking a VM line or card you can open a sidebar to the right.

_images/VMs_Details3.png

Here and in all other sections the sidebar width is adjustable - you can change it by hovering over its edge and dragging to the width you wish.

_images/VM_Details_Resize1.png
_images/VM_Details_Resize2.png

In the details sidebar you will find the information for the selected virtual machine:

  1. VM name.
  2. Color-picker color picker - Allows marking a virtual machine with a color to distinguish it in the list. The range of available colors for VMs is specified in the configuration file.
  3. Actions on the VM. See the VM Action Box section below.

You will see four tabs in the sidebar. Let’s describe what information on the virtual machine is presented in each tab.

Virtual Machine Tab

The Virtual Machine tab contains the general setting of the VM. Some settings can be edited here. At the bottom you can see the Statistics section which shows real-time data for the VM performance.

  1. Description - A short description of the VM. Click the block to edit it. Enter a few words about the VM. Click “Save” to save the description. It is a custom description for your machine. It is saved to tags with csui.vm.description tag.

    The description can be edited. Click “Edit” edit icon to change the description.

    _images/VMs_Details_EditDescription2.png

    It also can be edited from the Tags tab. Click Edit icon edit icon next to the csui.vm.description tag and change the description text in the appeared form.

    _images/VMs_Tags_EditDescription1.png
  2. Details - Displays the VM host name, the zone selected for the VM to be available in, the machine ID.

  3. Group - A group the VM is assigned to. Edit this field by clicking the “Edit” button edit icon. In the appeared dialog window choose a group from the drop-down list. Click “Assign” to assign the VM to the chosen group.

    _images/VMs_Details_EditGroup2.png

    Or you can create a new group right from this window selecting the “Create a new group” option. Click “ASSIGN” to assign the created group to the VM.

    _images/VMs_Details_CreateGroup.png

    To remove a machine from the assigned group select the “Remove from the group” option and click “REMOVE” to eliminate the VM from the group. A Default group will be displayed for this machine.

    _images/VMs_Details_RemoveGroup2.png
  1. Service offering - The service offerings of the VM. Expand the section to view the whole list of offering parameters.

    Edit this field by clicking the “Edit” button edit icon. In the appeared window you will see the list of available service offerings.

    The list consists of two sections - Fixed and Custom. In each section, offerings can be filtered by classes if classes are determined in the configuration file.

    _images/VMs_Create_SOClasses1.png

    You can use the search tool to find an offering in the list by a name or a part of the name.

    Select an option from the list to change the service offering.

    _images/VMs_Details_EditSO4.png

    Click “Change” to implement the edits.

    Note

    The system checks the amount of available account resources. In case a selected service offering does not fit the amount of available account resources, a warning message will appear saying the offering cannot be selected.

    A started virtual machine will be rebooted at editing the service offering.

  2. Affinity Group - The affinity group(s) assigned to the virtual machine. A name and a type of groups are displayed here. Groups are listed in alphabetic order. Hovering over a group name shows a description of a group (if provided at creation).

    If no affinity group is assigned to the VM, or you wish to add another affinity group to the list, click “Add” (+) in the block. A dialog box appears where you can choose an existing group or create a new one.

    Select a group in the list and click “Assign” to assign it to the VM. A user can add several groups to one virtual machine.

    _images/VMs_Details_EditAffGroup.png

    To create an affinity group fill in the form at the top of the dialog box and click “+” to add the group to the list. Then, you can assign the newly created group to the VM.

    _images/VMs_Details_CreateAffGroup2.png

    When assigning an affinity group to a started virtual machine, the system will suggest you stopping the VM. Click “OK” in the dialog window. Then, the VM will be started again.

    The selected group/groups can be deleted by clicking delete icon near the group name in the list.

    _images/VMs_Details_RemoveAffGroup2.png
  3. Template - Shows the template used to create the virtual machine.

  4. SSH key - Shows the SSH key of the virtual machine. Add the SSH key by clicking “+”. In the appeared window select the SSH key in the drop-down list and click “CHANGE”:

    _images/VMs_Details_AddSSH2.png

    At saving the new SSH key for a started VM you will see the warning: “You need to stop the virtual machine to reset SSH key.” Click “OK” if you want to stop it right now. Click “Cancel” to drop the edits.

  1. Statistics - shows VM statistics on CPU utilized, Network read, Network write, Disk read, Disk write, Disk read (IO), Disk write (IO). Refresh data by clicking the “Refresh” button refresh icon in the upper-right corner.

  2. VM Snapshots

    This section presents the information on snapshots created for the virtual machine. It shows the details for the last taken snapshot, allows viewing a complete list of all machine’s snapshots and managing them. You also can take a VM snapshot in this section.

    _images/VMs_Details_VMsnaps.png

    The following information is displayed in this section:

    • Details on the last taken snapshot: name, creation date and time;
    • “View All” allows viewing a full list of snapshots created for the machine. It opens a modal window where a user can see the list of snapshots and manage them using the action buttons:
    _images/VMs_Details_VMSnapshots_List.png

    A user can manage snapshots in the list using action buttons:

    • Revert VM to snapshot - Allows returning the virtual machine to the state captured in the snapshot. It is useful if you implemented any changes to the VM and they went wrong. You can easily restore the VM to its previous state using this action. Select “Revert VM to snapshot” by clicking revert icon and confirm your action in the dialog window. The VM will be reverted.

      Note

      The machine cannot be reverted to the snapshot state if the current Service Offering of the VM differs from that used at the moment the snapshot was taken. Besides, the action is not available for stopped machines.

    • Delete - Allows deleting a snapshot from the system.

    _images/VMs_Details_VMSnapshots_Actions.png

    Create Snapshot

    Note

    Taking a VM snapshot is available for machines in the Running state only. The maximum number of VM snapshots can be defined in the configuration file (see the configuration guide).

    To create a snapshot click ‘+’ and fill in the appeared form:

    • Name - Enter a name for the snapshot.
    • Description - Provide a short description for the snapshot.
    • Snapshot memory - Check the box to snapshot the VM CPU and memory, i.e. a snapshot of the DiskAndMemory type. Currently, it is activated by default and is not editable.

    Once all fields are completed, click CREATE to save the snapshot.

    _images/VMs_Details_VMSnapshots_Create.png

    The VM will be paused for creating a snapshot and then resumed. The snapshot will appear in the list of VM snapshots.

    To drop the snapshot creation, click CANCEL.

Storage Tab

The second tab - Storage - contains the information on the volumes allocated to the virtual machine as well as snapshots created for the volumes.

_images/VMs_Details_Storage.png

In this tab the following information is presented:

  1. Disk information

Each VM has a root disk. Besides, data disks can be added to the VM.

The following general information on a root disk is presented (expand the card to see the whole list):

  • Name - The disk name.
  • Size - The disk size.
  • Creation Date and Time.
  • Storage Type (Shared/Local).
  • Last Snapshot information.
  • Action Box.
  1. Attach a volume - Allows attaching a data disk to the VM.

Note

Attaching volumes available for machines in the «Running» status only. Attaching a volume is not available for machines with active snapshots.

Additional volume (a data disk) can be attached to the VM. Click “Select” to select a data disk. Select a disk in the drop-down list and click “SELECT”.

_images/VMs_AttachVolume_Select1.png

The chosen data disk will appear for the virtual machine with the “Attach” button. Click “Attach” to attach the selected disk to the virtual machine.

_images/VMs_AttachVolume_Attach3.png

If there are no available spare drives yet, you can create one right from this panel.

_images/VMs_Details_Storage_CreateNewVolume1.png

Click “Create new volume” and you will be moved to the Storage section. A “New volume” form will appear where you should specify the following information:

Note

Required fields are marked with an asterisk (*).

  • Name * - Name of the new data disk.
  • Zone * - Select a zone for it from the drop-down list.
  • Disk offering * - Select a disk offering from the list in the modal window. The disk offering list is managed by Root Administrator.
  • Size - Set the disk size if it is available. Disk size can be changed if a custom disk offering is selected above.

Once all fields are filled in, click “CREATE” to save the new volume.

Click “CANCEL” to drop the new volume creation.

_images/VMs_AttachVolume_Create2.png

Move back to the virtual machine information sidebar. Under the “Storage” tab in the “Attach a volume” section click “+” to select an additional disk. Select a data disk in the drop-down list and click “Select” to add it to the “Attach a volume” section. To attach the volume press the “Attach” button.

Volume Action Box

For each volume, the Actions list can be opened by clicking the actions icon actions icon.

The following actions on disks are available in this list:

For root disks:

  • Take a snapshot;
  • Set up snapshot schedule;
  • Resize the disk.

For data disks:

  • Take a snapshot;
  • Set up snapshot schedule;
  • Detach;
  • Resize the disk;
  • Delete.

Take a snapshot

You can take a VM snapshot to preserve all the VM’s data volumes as well as (optionally) its CPU/memory state. This is useful for quick restore of a VM.

Click “Take a snapshot” in the disk Actions list and in the dialog window enter the following information:

Note

Required fields are marked with an asterisk (*).

  • Name of the snapshot * - Define a name for the snapshot. It is auto-generated in the form <date>-<time>. But you can specify any name you wish.
  • Description - Add a description of the snapshot to know what it contains.
_images/VMs_Info_Storage_Snapshot.png

All snapshots are saved in the list of snapshots. In the disk information, you will see the name and time of the last-taken snapshot. For each snapshot the list of actions is available. Find more information on snapshot actions in the Snapshot Action Box sections below.

Set up snapshot schedule

You can schedule regular snapshotting by clicking “Set up snapshot schedule” in the Actions list.

In the appeared window set up the schedule for recurring snapshots:

  • Select the frequency of snapshotting - hourly, daily, weekly, monthly;
  • Select a minute (for hourly scheduling), the time (for daily scheduling), the day of week (for weekly scheduling) or the day of month (for monthly scheduling) when the snapshotting is to be done;
  • Select the timezone according to which the snapshotting is to be done at the specified time;
  • Set the number of snapshots to be made.

Click “+” to save the schedule. You can add more than one schedule but only one per each type (hourly, daily, weekly, monthly).

_images/VMs_Info_Storage_Snapshot_Schedule.png

Resize the disk

Note

Disk resizing is not available for machines with active snapshots.

This action is available to data disks created on the base of disk offerings with a custom disk size. Disk offerings with custom disk size can be created by Root Administrators only.

Selecting “Resize the disk” option in the Actions list you are able to enlarge the disk size.

In the appeared window set up a new size using the slider and click “RESIZE” to save the edits.

_images/VMs_Info_Storage_Resize.png

Click “CANCEL” to drop the size changes.

Detach

Note

Detaching a volume is not available for machines with active snapshots.

This action can be applied to data disks. It allows detaching the data disk from the virtual machine.

Click “Detach” in the Actions list and confirm your action in the dialog window.

_images/VMs_Details_Storage_Detach2.png

The data disk will be detached. It will be in the list of Spare drives in the Storage section.

Delete

Note

Deleting a volume is not available for machines with active snapshots.

This action can be applied to data disks. It allows deleting a data disk from the system right in the Storage VM details sidebar.

Click “Delete” in the volume Actions list and confirm your action in the dialog window.

_images/VMs_Details_Storage_DeleteDisk2.png

The data disk will be deleted from the system right at this moment.

If a disk has snapshots, the system will ask you if you want to delete the snapshots of the disk as well. Click “Yes” to delete the snapshots. Click “No” to leave the snapshots in the system after volume deleting.

Snapshot Action Box

Note

For a newly taken snapshot all actions except “Delete” are disabled until the snapshot is backed up to the Secondary Storage that may take some time. Once it is backed up, a full range of actions is available to a user.

For each snapshot the following actions are available:

  • Create a template - Register a new template right from the disk information block of the sidebar. In the appeared window fill in the form:

Note

Required fields are marked with an asterisk (*).

  • Name * - Enter a name of the new template.
  • Description * - Provide a short description of the template.
  • OS type * - Select an OS type from the drop-down list.
  • Group - Select a group from the drop-down list.
  • Password enabled - Tick this option if your template has the CloudStack password change script installed. That means the VM created on the base of this template will be accessed by a password, and this password can be reset.
  • Dynamically scalable - Tick this option if the template contains XS/VM Ware tools to support dynamic scaling of VM CPU/memory.

Click “SHOW ADDITIONAL FIELDS” to expand the list of optional settings. It allows creating a template that requires HVM. Tick this option in this case.

Once all fields are filled in click “CREATE” to create the new template.

_images/VMs_Info_Storage_Snapshot_CreateTemplate2.png
  • Create Volume - Allows creating a volume from the snapshot.

Type a name for a new volume into the Name field in the modal window. Click “CREATE” to register a new volume.

_images/VMs_SnapshotActions_CreateVolume1.png

Click “CANCEL” to cancel the volume creation.

  • Revert Volume To Snapshot - Allows turning the volume back to the state of the snapshot.

In the dialog window confirm your action. Please, note, the virtual machine the volume is assigned to will be rebooted.

_images/VMs_SnapshotActions_Revert1.png
  • Delete - allows deleting the last-taken snapshot.

Besides, you can see all the snapshots in the list by clicking the “VIEW ALL” button. In the appeared window you will see the list of all snapshots. For each snapshot in the list, the same actions are available: you can create a template, or delete a snapshot.

_images/VMs_Info_Storage_Snapshot_View2.png
  1. ISO - Allows attaching ISO.

Attach ISO by clicking the “Attach” button in the ISO card. In the dialog window you will see the list of available ISO files. To easily find the ISO file you need, please, use the search tool above the list. Additionally, you can filter the list by OS family(-ies), by type(-s), by group(-s). Tick the ISO file you wish in the list and click “ATTACH”. The ISO will be attached to the VM.

_images/VMs_AddISO3.png

You can detach the ISO file by clicking the “Detach” button.

_images/VMs_ISO_Detach2.png
Network Tab

Under the Network tab the network configurations of the VM are presented.

_images/VMs_Details_Network1.png
  1. NIC information - VM network details are shown here: Network namе, Netmask, Gateway, IP, Broadcast URI, Traffic Type, Type, Default, MAC address.

You can add a secondary IP for the VM from this tab. Click “+” next to the Secondary IP option and confirm your action in the dialog window. The IP appears for the VM.

_images/VMs_Network_SecIP1.png

You can delete the secondary IP by clicking the “Delete” button next to it.

  1. Firewall rules - Allows viewing the security group assigned to the virtual machine. Click view to open the list of assigned security group(-s).
_images/VMs_SG_View2.png

You can filter the list by IP version, types and/or protocols. Or you can adjust the view by grouping the list by types and/or protocols.

_images/VMs_SG_Filter2.png

In the modal window you can edit a security group. Click “EDIT” to move to editing form. There you will be able to add rules, or delete the selected ones from the list.

To add rules, please, fill in the fields in the bar above the list and click “+”:

_images/VMs_SG_Edit_Add.png

To delete rules, please, click “Delete” icon in the list. The rule will be deleted from the security group.

_images/VMs_SG_Edit_Delete.png

Then you can move back to the view mode, or close the window.

Please, note, when editing shared security groups, a warning message appears:

_images/VMs_SharedSG_EditWarning2.png

Click “Yes” if you still want to edit a shared security group. You will be moved to the “Firewall” section where you can edit the security group. After editing, go back to the virtual machine that uses this group. You will see the rules are edited.

See the Firewall section for more information on firewall rules in the system.

Tags Tab

Under this tab, you can create and see the VM tags.

_images/VMs_Details_Tags1.png

CloudStack-UI uses tags very extensively to provide additional UX capabilities. Tags are key-value pairs. So it makes a kind of a key-value storage for the meta-information - VM description or group, or a user language. The tags used by Cloudstack-UI are system tags. They are prefixed with csui. You can find the full list of system tags supported by CloudStack-UI at the page.

System tags are used to provide functionality from the user interface perspective. Changing these tags affects the functionality of the application. The “Show system tags” checkbox allows to view or hide system tags of the virtual machine. Uncheck this box to hide system tags from the list. It helps to avoid accidental unwanted changes. If a user has disabled displaying of these tags, the system will remember it and next time tags will also be hidden.

To find the tag you are interested in, please, use the search tool above the tag list. You can enter a name or a part of the tag name to distinguish it in the list.

_images/VMs_Tag_Search1.png

The tags assigned to the virtual machine are presented in the list. System tags are presented in one card, other tags - in a separate card. For each tag in the list the following actions are available when hovering the mouse over the tag key:

  • Edit - Allows editing the tag. In the appeared form define a new key and/or value (both fields are required). Click “Edit” to save the edits. Click “Cancel” to drop the edits. The tag won’t be changed then.
  • Delete - Allows deleting the tag. Click “Delete” and confirm your action in the dialog window.
_images/VMs_Details_Tags_Actions3.png

Create Tags

You can create a tag right from Tags tab.

Click “Create” create icon and fill in the appeared form:

Note

Required fields are marked with an asterisk (*). You cannot use space as the first symbol.

  • Key * - Enter a key here.
  • Value * - Enter the value here.
_images/VMs_Tag_CreateNew1.png

When adding a system tag, click “+” in the card to open the creation form. You will see that the csui prefix is automatically prepopulated here.

_images/VMs_SystemTag_Create1.png

If you create a non-system tag, it will be saved in a new card. If you have entered a key in the format <prefix>.<example>, a card will be named as “<prefix>”. When creating a new tag from this card, click “+” in the card and in the tag creation form the Key field will be prepopulated with the <prefix>.

_images/VMs_Tag_Create2.png

Access a Virtual Machine

Access VM component allows a user to obtain all necessary credentials to access a VM in the final dialog box shown after VM creation, or later when a user selects a corresponding action in the VM Action box. Depending on tags determined for a template or a VM, the system allows getting access to the VM interaction interface. Currently, the following access modes are supported:

  • Via a VNC console - active by default for all VMs;
  • Via SSH;
  • Via HTTP.

The three access modes can be used at the same time for one machine.

You can find more information on how to enable a necessary access mode at the wiki-page.

Selecting “Access VM” in the VM action list, you open a modal window with three tabs. The view and contents of the modal window are determined by the defined tags. Some tabs in the window can be inactive. That means these access modes are not enabled for the machine. In active tab(s) you can view detailed access information for the machine: login, password, port, path and other.

In each tab you can click on a corresponding link to open a console or a window to access the VM.

Below you will find more information on each access mode.

VNC console

This tab contains the following details:

  • Login;
  • Password (if available);
  • Open VNC console link that opens a console to access the VM.
_images/AccessVM_OpenConsole4.png
SSH

This tab is active if the access via SSH is enabled. It is determined by the following template tags:

csui.vm.auth-mode = SSH
csui.vm.ssh.login = login
csui.vm.ssh.password = password
csui.vm.ssh.port = port

This tab displays the following details:

  • Connection String (IPv4), that can be copied by clicking on copy icon.
  • Connection String (IPv6), that can be copied by clicking on copy icon.
  • IPv4
  • IPv6
  • Port
  • Login
  • Password
  • SSH Key
  • Open WebShell - a clickable link to open a WebShell console.

In case the WebShell plugin is enabled, a user can SSH to VM in browser. To find more information on deployment and using the WebShell plugin, please, refer to the page.

_images/AccessVM_WebShell3.png
HTTP

Under this tab you can access a VM via HTTP/HTTPS URL. This mode is defined by the tags:

csui.vm.auth-mode = HTTP
csui.vm.http.protocol = HTTP|HTTPS
csui.vm.http.port =
csui.vm.http.path =
csui.vm.http.login =
csui.vm.http.password =

Note

If no csui.vm.http.port is defined, then default values are used:

  • for HTTPS protocol: 443
  • for HTTP protocol: 80

This tab displays the following information:

  • Login;
  • Password (if available);
  • Open URL with a clickable URL.

To configure VM access via HTTP/HTTPS, please, refer to page.

_images/AccessVM_OpenURL4.png

To close the modal window click “CLOSE”.

Storage

In the Virtual Machines -> Storage section, you can create and manage drives for virtual machines. Here you can add new disks, create templates and snapshots of a volume, view the list of snapshots for each volume.

_images/Storage_VolumeManagement.png

Drive list

Note

If you have just started working with CloudStack and you do not have virtual machines yet, you have no disks in the list. Once you create a VM, a root disk is created for it automatically. Creation of an additional disk takes resources and requires expenses. Please, make sure you definitely need an additional data disk.

Here you can find a list of disks existing for your user.

_images/Storage_List2.png

Domain Administrator can see disks of all accounts in the domain.

_images/Storage_List_Admin4.png

Disks can be viewed as a list or as a grid of cards. Switch the view by clicking a view icon view icon/box icon in the upper-right corner.

Filtering of Drives

Root disks are visually distinguished from data disks in the list. There is an option to display only spare disks which allows saving user’s time in certain cases.

As in all lists, there is the filtering tool for selecting drives by zones and/or types. You also can apply the search tool selecting a drive by its name or a part of the name.

_images/Storage_FilterAndSearch3.png

For better distinguising of drives in the list you can group them by zones and/or types, like in the figure below:

_images/Storage_Grouping2.png

Domain Administrators can see the list of drives of all accounts in the domain. Filtering by accounts is available to Administrators.

_images/Storage_FilterAndSearch_Admin.png

For each drive in the list the following information is presented:

  • Drive name,
  • Size,
  • State - Ready or Allocated.

The Actions button actions icon is available to the right. It expands the list of actions for a disk. See the information on actions in the Volume Action Box section below.

Create New Volume

In the Storage section you can create new volumes. Please, note that if you are aimed at creation of a virtual machine, we do not recommend starting from adding new disks to the system. You can go right to the Virtual Machines section and create a VM. A root disk will be cerated for the VM automatically.

_images/CreateVMwithRD.png

If necessary, you can create a data disk and attach it to your VM. By clicking the “Create” button create icon in the bottom-right corner you will open a creation form. Please, make sure you definitely need an additional disk as it takes resources and requires expenses. If you do not have disks yet, when clicking “Create”, a dialog box will ask you if you surely want to create a drive. Confirm your creation action by clicking “CONTINUE”:

_images/AdditionalDiskNotification.png

A creation form will appear.

_images/Storage_Create3.png

To create a new volume fill in the fields:

Note

Required fields are marked with an asterisk (*).

  • Name * - Enter a name of the volume.
  • Zone * - Select a zone from the drop-down list.
  • Disk offering * - Select from the list of available offerings opening it in a modal window by clicking “SELECT”. The list of available disk offerings is determined in the configuration file by Administrator.

In the modal window you can see the name and short description for each disk offering and a radio-button to select any option.

_images/Storage_Create_Select1.png

For each disk offering you can expand detailed information by clicking the arrow icon or the whole line in the list. In the appeared section you will see a range of parameters. The following parameters are shown by default:

  • Bandwidth (MB/s): Read/Write rates;
  • IOPS: Read/Write rates and Min/Max values;
  • Storage type;
  • Provisioning type;
  • Creation date.

Use the scrolling tool to view them all.

More parameters can be added via the configuration file by an Administrator.

_images/Storage_Create_Select_Expand.png

Select a disk offering in the list and click “SELECT”.

_images/Storage_Create_SelectDO.png

If the selected disk offering has a custom disk size (it is set by Administrator), you can change the disk size moving the slider to the volume size you wish or entering a value into the number field.

_images/Storage_Create_ResizeDisk1.png

Click “CREATE” to save the settings and create the new volume. You will see the drive appears in the list.

_images/Storage_Created1.png

Click “CANCEL” to drop all the settings. The drive will not be created then.

Volume Details Sidebar

By clicking a disk in the list you can access the information on the volume.

_images/Storage_Info3.png

At the right sidebar you can find two tabs:

  1. Volume tab - Provides the information on the disk volume:
  • General information - Presents disk size, date and time of creation, the storage type (shared, local).
  • Description - Allows entering a short description to the drive. Click at the Description card and enter a short description in the text block.
_images/Storage_Description2.png

Click “Save” to save the description. Description will be saved to volume tags.

You can edit the description by clicking the “Edit” button edit icon in the tab.

_images/Storage_DescriptionEdit2.png
  • Disk offering - Presents the information on the disk offering chosen at disk creation.
  1. Snapshots tab - Allows creating disk snapshots. Snapshots can be taken for disks with the “Ready” status only.

    Click the “Add” button create icon and enter in the dialog box:

    • Name - Define a name for the snapshot. It is auto-generated in the format <date>-<time>. But you can specify any name you wish.
    • Description - Add a description of the snapshot to know what it contains.

    Then click “Create” and see the snapshot has appeared in the list.

_images/Storage_CreateSnapshot2.png

Every snapshot is saved in a separate card. There you will see the name and time of the snapshot.

For each snapshot the list of actions is available. Find more information on snapshot actions in the Snapshots Action Box section below.

Snapshots Action Box

Note

For a newly taken snapshot all actions except “Delete” are disabled until the snapshot is backed up to the Secondary Storage that may take some time. Once it is backed up, a full range of actions is available to a user.

Likewise the Virtual Machine information tab, the same actions are available for a snapshot:

  • Create a template - Allows creating a template from the snapshot. This template can be used for VM creation.

Fill in the form to register a new template:

Note

Required fields are marked with an asterisk (*).

  • Name * - Enter a name of the new template.
  • Description * - Provide a short description of the template.
  • OS type * - Select an OS type from the drop-down list.
  • Group - Select a group from the drop-down list.
  • Password enabled - Tick this option if the template has the password change script installed. That means the VM created on the base of this template will be accessed by a password, and this password can be reset.
  • Dynamically scalable - Tick this option if the template contains XS/VM Ware tools to support the dynamic scaling of VM CPU/memory.

Click “SHOW ADDITIONAL FIELDS” to expand the list of optional settings. It allows creating a template that requires HVM.

Once all fields are filled in click “Create” to create the new template.

_images/Storage_CreateTemplate2.png
  • Create Volume - Allows creating a volume from the snapshot.

Type a name for a new volume into the Name field in the modal window. Click “Create” to register a new volume.

_images/Storage_SnapshotActions_CreateVolume1.png

Click “Cancel” to cancel the volume creation.

  • Revert Volume To Snapshot - Allows turning the volume back to the state of the snapshot.

In the dialog box confirm your action. Please, note, the virtual machine the volume is assigned to will be rebooted.

_images/Storage_SnapshotActions_Revert1.png
  • Delete - Allows deleting the snapshot. Click “Delete” in the Action box and confirm your action in modal window. The snapshot will be deleted. Click “Cancel” to cancel the snapshot deleting.

Volume Action Box

Action on drives are available under the Actions button actions icon.

The following actions are available on disk:

For root disks:

  • Take a snapshot;
  • Set up snapshot schedule;
  • Resize the disk.

For data disks:

  • Take a snapshot;
  • Set up snapshot schedule;
  • Detach;
  • Resize the disk;
  • Delete.
_images/Storage_Actions.png

Take a snapshot

You can take a snapshot of the disk to preserve the data volumes. Snapshots can be taken for disks with the “Ready” status only.

Click “Take a snapshot” in the disk Actions list and in the dialog window enter the following information:

Note

Required fields are marked with an asterisk (*).

  • Name of the snapshot * - Define a name for the snapshot. It is autogenerated in the form <date>-<time>. But you can specify any name you wish.
  • Description - Add a description of the snapshot to know what it contains.

All snapshots are saved in the list of snapshots. For a snapshot you can:

  • Create a template;
  • Delete the snapshot.

See the Snapshots Action Box section for more information.

Set up snapshot schedule

This action is available for disks with the “Ready” status only.

You can schedule the regular snapshotting by clicking “Set up snapshot schedule” in the Actions list.

In the appeared window set up the schedule for recurring snapshots:

  • Select the frequency of snapshotting - hourly, daily, weekly, monthly;
  • Select a minute (for hourly scheduling), the time (for daily scheduling), the day of week (for weekly scheduling) or the day of month (for monthly scheduling) when the snapshotting is to be done;
  • Select the timezone according to which the snapshotting is to be done at the specified time;
  • Set the number of snapshots to be made.

Click “+” to save the schedule. You can add more than one schedule but only one per each type (hourly, daily, weekly, monthly).

_images/Storage_ScheduleSnapshotting1.png

Resize the disk

Note

This action is available to root disks as well as data disks created on the base of disk offerings with a custom disk size. Disk offerings with custom disk size can be created by Root Administrators only.

You can change the disk size by selecting “Resize the disk” option in the Actions list. You are able to enlarge disk size only.

In the appeared window set up a new size and click “RESIZE” to save the edits.

_images/Storage_ResizeDisk2.png

Click “Cancel” to drop the size changes.

Attach/Detach

This action can be applied to data disks. It allows attaching/detaching the data disk to/from the virtual machine.

Click “Attach” in the Actions list and in the dialog window select a virtual machine to attach the disk to. Click “ATTACH” to perform the attachment.

_images/Storage_AttachDisk1.png

An attached disk can be detached. Click “Detach” in the Actions list and confirm your action in the dialog window. The data disk will be detached from the virtual machine.

Delete

This action can be applied to data disks. It allows deleting a data disk from the system.

Click “Delete” in the Actions list and confirm your action in the dialog window.

If a volume has snapshots the system will ask you if you want to delete them as well. Click “YES” to delete the snapshots of the volume. Click “NO” to keep them.

The data disk will be deleted from the system.

Images

In the Virtual Machines -> Images section, you can manage Templates and ISO files that are used as installation sources for VMs.

A template is a reusable configuration for virtual machines. When users create a VM, they can choose from a list of templates. Administrators and users can create new templates and add them to CloudStack.

ISO files are another installation source for virtual machines.

You can switch from Templates to ISOs by selecting a corresponding option above:

_images/Images_TempISO3.png

Images List

Existing templates/ISOs are presented in the list in the “Images” section. A user can see the templates/ISOs belonging to his/her user only. Domain Administrator can see templates/ISOs of all users in the domain but cannot perform actions on other users’ templates.

You can switch the list view of templates/ISOs to the box view using the view button view box icon in the upper-right corner.

For each template/ISO in the list, you can see its name, OS family, description. The Actions button actions icon expands the list of actions. Actions are available to those templates/ISOs that belong to your user only (corresponding to “My” type). Administrators can see templates/ISOs of all users in the domain, but cannot manage them.

Filtering of Images

The list of templates/ISOs can be filtered using the filtering tool. The filtering parameters are as follows:

  • Accounts (for Domain Administrators);
  • OS families;
  • Types of templates/ISO:
    • My - for user’s templates or ISOs (Private),
    • Featured - for templates marked by an Administrator as most prominent for users to select,
    • Community - for templates accessible to all users of this CloudStack installation (Public);
  • Zones.
_images/Images_TempList_Admin3.png

Besides, you can adjust the list view using the grouping tool. Templates/ISOs can be grouped by zones or/and groups. Administrators can group the list by accounts.

_images/Images_Temp_AdminGrouping.png

Use the search tool to easily find a template/ISO by its name or by a part of the name.

Create Template

There is a variety of ways to add more templates to the system. In the VM Details Sidebar section, we have described one way of template creation from a VM volume snapshot in the “Storage” tab of the VM information sidebar (see Snapshot Action Box). From the Volume Details Sidebar of the “Storage” section, you also can create a template on the base of the volume snapshot (see Snapshots Action Box).

One more way to create a new template is filling in the form in the Images section by clicking “Create” create icon in the bottom-right corner.

_images/Images_Temp_Create.png

It will open a creation form where you should specify the following information:

Note

Required fields are marked with an asterisk (*).

  1. Name * - Enter a name for the new template.
  2. Description * - Provide a short description to have a general idea about the template.
  3. URL * - Specify a valid URL of the template file.
  4. OS type * - This helps CloudStack and the hypervisor perform certain operations and make assumptions that improve the VM performance. Select from the drop-down list the necessary option, or select “Other” if there is no needed option in the list.
  5. Zone * - Choose the zone where you want the template to be available.
  6. Group - Select a group from the drop-down list. The list of groups is managed by Administrator in the configuration file. The group assigned to a template is saved to template tags with the csui.template.group tag. The group can be edited or deleted from the Template/ISO Details Sidebar from the “Template” tab or by editing or deleting the corresponding tag in the “Tags” tab.
  7. Password enabled checkbox - Tick this option if your template has the CloudStack password change script installed. That means the VM created on the base of this template will be accessed by a password, and this password can be reset.
  8. Dynamically scalable checkbox - Tick this option if the template contains XS/VM Ware tools to support dynamic scaling of VM CPU/memory.
  1. “Show additional fields” allows expanding the form and set more settings:
    • Hypervisor - Select a hypervisor from the drop-down list.
    • Format - The format of the template upload file, e.g. VHD or RAW or VMDK.
    • Extractable - Tick this option if the template is available for extraction. If this option is selected, end-users can download a full image of a template.
    • Requires HVM - Tick this option for creating a template that requires HVM.

Once all fields are filled in, click “Create” to create the template with these settings. The created template will appear in the list.

Click “Cancel” to close the form without template creation. All fields will be cleared.

Create ISO

You can create a new ISO file in the Images section by clicking “Create” create icon in the bottom-right corner.

_images/Images_CreateISO.png

It will open a creation form where you should specify the following information:

Note

Required fields are marked with an asterisk (*).

  1. Name * - Enter a name for the new ISO file.
  2. Description * - Provide a short description to have a general idea about the ISO file.
  3. URL * - Specify a valid URL of the ISO file.
  4. OS type * - This helps CloudStack and the hypervisor perform certain operations and make assumptions that improve the VM performance. Select from the drop-down list the necessary option, or select “Other” if there is no needed option in the list.
  5. Zone * - Choose the zone where you want the ISO file to be available.
  6. Group - Select a group from the drop-down list. The list of groups is managed by Administrator in the configuration file. The group assigned to ISO is saved to ISO tags with the csui.template.group tag. The group can be edited or deleted from the Template/ISO Details Sidebar from the “Template” tab or by editing or deleting the corresponding tag in the “Tags” tab.
  1. “Show additional fields” allows expanding the form and set more settings:
    • Extractable - Tick this option if the ISO file is available for extraction. If this option is selected, end-users can download a full image of an ISO file.
    • Bootable - Tick this option to indicate whether the machine can be booted using this ISO.

Once all fields are filled in, click “CREATE” to create the ISO file with these settings. The created ISO file will appear in the list.

Click “CANCEL” to close the form without ISO creation. All fields will be cleared.

The created ISO will appear in the list.

Template/ISO Details Sidebar

The information on each template/ISO is presented in the sidebar to the right. It is opened by clicking the template/ISO card or line in the list. The information is presented here in 3 tabs. Above the tabs you can see the template/ISO general information:

  • Name - Template/ISO name and symbol,
  • Actions button - Actions list allowing the Delete action.
_images/Images_Temp_Details.png
  1. Template tab:
    • Description - Template/ISO description provided at its creation.
    • OS - The OS selected for this template/ISO.
    • General Information - The settings saved for this template/ISO: size, creation date, type, hypervisor, other settings.
    • Download URL - The URL provided for this template/ISO. Next to it you can see the “Copy” icon copy icon. Click it to copy the URL to clipboard and then paste it in the address line.
    • Group - Shows the template/ISO group if it is enabled via the configuration file. You can change the group by clicking “Edit” edit icon. Choose an existing group in the appeared window and click “ASSIGN” to assign the template/ISO to the selected group. You can remove the template/ISO from the group. Select the “Remove from the group <group name>” option and click “REMOVE”.
  1. Zones tab - Shows the zone where the template/ISO is available. If the zone has “Yes” for the Ready status, the template/ISO can be used for VM creation.
_images/Images_Temp_Details_Zone1.png
  1. Tags tab - Presents the list of tags assigned to the template/ISO.
_images/Images_Temp_Details_Tags1.png

Tags can be system or non-system. System tags are used to provide the functionality from the user interface perspective. Changing these tags affects the functionality of the application. The “Show system tags” checkbox allows to view or hide system tags of the template. Hiding system tags helps to avoid accidental unwanted changes. If a user has disabled displaying of these tags, the system will remember it and next time tags will also be hidden. Uncheck the “Show system tags” checkbox to hide system tags from the list.

The following system tags can be used for templates/ISOs:

  • csui.template.group - Used to assign a template/ISO to a group.
  • csui.template.download-url - Used for URL, if any provided for the template/ISO.

Note

Please, see the list of tags to find system tags that can be used for a template/ISO.

To find the tag you are interested in, please, use the search tool above the tag list. You can enter a name or a part of the tag name to distinguish it in the list.

To add a tag for the template/ISO click “Create” create icon. In the appeared form enter:

  • Key *
  • Value *

Note

Required fields are marked with an asterisk (*). The values in the fields cannot start with a space.

Click “Create” to assign a new tag to the template/ISO.

_images/Images_TagCreate1.png

When adding a system tag, click “+” in the card to open the creation form. You will see that the csui prefix is automatically prepopulated here.

_images/Images_SysTagCreate1.png

If you create a non-system tag, it will be saved in a new card. If you have entered a key in the format <prefix>.<example>, a card will be named as “<prefix>”. When creating a new tag from this card, click “+” in the card and in the tag creation form the Key field will be prepopulated with the <prefix>.

_images/Images_OtherTagCreate1.png

Tags can be edited or/and deleted. Mouse over the tag in the list and see “Edit” and “Delete” buttons.

_images/Images_TagActions1.png

Click “Edit” to change the tag’s key or value in the appeared form. Save the edits.

Click “Delete” to delete the tag from the list for this template. Confirm your action in the dialog window. Make sure the tag disappeared from the list of assigned tags.

Template/ISO Action Box

By clicking “Actions” actions icon you can expand the list of actions for those templates/ISO that are in the account your user belongs to (corresponding to “My” type). The deleting action is available here.

_images/Images_Temp_ActionBox1.png

Click “Delete” to delete the template/ISO and then confirm your action in the dialog window. The template/ISO will be deleted.

Click “Cancel” to close the window without deleting a template/ISO.

Snapshots

The Virtual Machines -> Snapshots section contains the information on snapshots - Volume snapshots and Virtual Machine snapshots - existing in the system.

_images/Snapshots3.png

A Volume snapshot is a capture of virtual machine disks. You can find more information on volume snapshots in the Apache CloudStack documentation.

_images/VolSnaps_Overview.png

Virtual Machine snapshots allow users to preserve the VM data volumes and its CPU/memory state.

_images/VMSnaps_Overview.png

Currently, we support VM snapshots for the KVM hypervisor only. For more information about Virtual Machine snapshots check out the official documentation.

Snapshots List

All snapshots existing in the system are presented in the list format. There are two lists in the section - Volume snapshots and Virtual Machine snapshots. To move between lists use the switch button at the top.

_images/Snapshots_Switch.png

The list of snapshots can be presented in the box view or in the list view. Change the view using view icon/box icon button.

For each snapshot in the list the following information is presented:

  • State bullet - green for a backed up snapshot, red for any error behavior, yellow for a snapshot being created, grey for allocated.
  • Name of the snapshot.
  • Volume/VM name the snapshot is created for.
  • Date and time of creation.
  • Actions button actions icon.
Filtering of Snapshots

Filtering of snapshots is available above the list.

_images/Snapshots_Filtering1.png

You can filter the list by the following parameters:

  • by Accounts (available to Administrators).
  • by Type - Hourly, Daily, Weekly, Monthly, Manual depending on the schedule of snapshotting (available for Volume snapshots).
  • by Virtual Machine - Select a VM or VMs in the drop-down list to filter the list for the snapshots belonging to the disks of the VM or VMs.
  • by creation date - Select a date using a date picker to filter the list for the snapshots created within the specified period.

You can group snapshots:

  • by Accounts (available for Administrators) and/or
  • by Type (for Volume snapshots) or
  • by VM (for VM snapshots)(is not currently available).

The searching tool allows to find a snapshot by:

  • its name or a part of the name;
  • snapshot description.

Snapshot Details Sidebar

A details sidebar presents the information on a snapshot. It appears to the right by clicking a snapshot in the list.

For a Volume snapshot the following information is presented in the details sidebar:

  • Snapshot name, a state bullet and actions under the actions icon button;
  • Date and time of creation;
  • Type - Presents the snapshot type - Hourly, Daily, Weekly, Monthly, Manual;
  • Volume information and a virtual machine it is assigned to.
_images/Snapshots_Details1.png

For a VM snapshot the following information is presented in the details sidebar:

  • Snapshot name, a state bullet and actions under the actions icon button;
  • Date and time of creation;
  • Type - Presents the snapshot type, e.g. DiskAndMemory;
  • Current - Defines if the snapshot refers to the most recent snapshot compared to the current state of the VM;
  • Parent - Shows a parent snapshot (if any exists) of this snapshot;
  • Description for the snapshot provided at creation;
  • The name of a virtual machine the snapshot belongs to. It is a link that opens details of the VM for more information.
_images/Snapshots_VM_Details.png

Snapshot Actions Box

The following actions are available for Volume snapshots:

  • Create template;
  • Create volume;
  • Revert volume to snapshot;
  • Delete.
_images/Snapshots_Actions.png

The following actions are available for Virtual Machine snapshots:

  • Revert VM to snapshot;
  • Delete.
_images/Snapshots_VM_Actions.png

Note

For a newly created snapshot the “Delete” action is available only till the snapshot is backed up to the Secondary Storage that may take some time. Once it is backed up (marked with a green state icon), a full range of actions is available to a user.

Below you will find details for each action.

Create Template

Open a creation form to register a new template from a Volume snapshot.

Fill in the fields:

Note

Required fields are marked with an asterisk (*).

  • Name * - Enter a name of the new template.
  • Description * - Provide a short description of the template.
  • OS type * - Select an OS type from the drop-down list.
  • Group - Select a group from the drop-down list.
  • Password enabled - Tick this option if your template has the CloudStack password change script installed. That means the VM created on the base of this template will be accessed by a password, and this password can be reset.
  • Dynamically scalable - Tick this option if the template contains XS/VM Ware tools to support dynamic scaling of VM CPU/memory.

Click “Show additional fields” to expand the list of optional settings. It allows creating a template that requires HVM. Tick this option in this case.

Once all fields are filled in click “Create” to create the new template.

_images/Snapshots_CreateTemplate2.png

Click “Cancel” to cancel the template creation.

Create Volume

This action allows creating a volume from a Volume snapshot.

Type a name for a new volume into the Name field in the modal window. Click “CREATE” to register a new volume.

_images/Snapshots_Actions_CreateVolume.png

Click “CANCEL” to cancel the volume creation.

Revert Volume to Snapshot

This action is available for Volume snapshots. It allows turning the volume back to the state of the snapshot. It is available to those snapshots that have a volume.

In the dialog window, confirm your action. Please, note, the virtual machine the volume is assigned to will be rebooted.

_images/Snapshots_Actions_Revert.png

Revert VM to Snapshot

This action is available for Virtual Machine snapshots. It allows turning the VM back to the state of the snapshot. It is useful if you implemented any changes to the VM and they went wrong so this action allows quick restoring of a VM to its previous state.

Select “Revert VM to Snapshot” from the actions list and confirm your action in the dialog window. The VM state will be reverted to the snapshot.

_images/Snapshots_Actions_RevertVM.png

Note

It is not allowed to revert a machine to snapshot if the current Service Offering of the VM differs from that used at the moment the snapshot was taken.

Delete

This action allows deleting a snapshot from the system.

Click “Delete” in the Action box and confirm your action in modal window. The snapshot will be deleted.

_images/Snapshots_Actions_Delete.png

Click “NO” to cancel the snapshot deleting.

Firewall

The Virtual Machines -> Firewall section allows managing security groups that are used for isolating traffic to virtual machines. A security group is a group of VMs that filter their incoming and outgoing traffic according to a set of rules.

_images/Firewall_Overview.png

Read more about security groups in the official documentation of CloudStack.

In this UI section, a user can see and manage firewall templates, shared and private security groups.

_images/Firewall_List816-1.png

Firewall templates are presets of rules that can be system or developed by a user (custom). Administrators can specify default presets during the interface deployment via the JSON configuration file (find more in configurations guide). These presets will be used when creating a new security group.

A custom security group template can be created via the UI. Find more information on how to create a custom security group template at Create a Security Group Template.

Upon VM creation, a user applies templates (if they exist) to create a new security group for a VM. These rules make a private security group used for that virtual machine only. Thus, when a user changes the rules for a certain virtual machine, it does not affect other machines.

The second way is to use a shared security group for your virtual machine. Shared groups are used by several VMs. Changes of rules in them may affect other VMs.

A default security group can be defined for the account. It will be preselected for each new virtual machine. Please, read the configuration guide to find more information on how to set up a default security group.

Users can manage security group rules in two modes: a “view” mode with filtering by types and protocols and an “edit” mode. Security groups editing is available when switching from “view” mode to “editing” mode. If the group is shared, the user is warned that changes will affect other VMs using this group. This behavior allows avoiding undesirable changes for other VMs.

Templates, shared and private security groups are placed in different tabs of the Firewall section. You can switch from templates to shared or private security groups using the tool above the list.

_images/Firewall_Switch816-1.png

A user can see security groups of his/her user only. An Administrator can observe security groups of all accounts in the domain.

Firewall List

The security groups are presented in a list format. You can change the view from list to cards clicking the switch view icon view icon/box icon in the upper-right corner.

To quickly find the security group you need, please, use the search tool above the list. Enter a name or a part of the name of the template/security group and see the immediate result.

Administrators can filter the list of templates/shared groups by accounts.

_images/Firewall_Filter_Admin.png

Create a Security Group Template

You can create your own template. It will be available as a base at a new private security group creation for VM.

A new security group template is created on the base of existing templates. This security group will be created as a custom template (with a custom-template type).

If you would like to create a new security group template, click “Create” create icon in the bottom-right corner and fill in the form:

_images/Firewall_CreateTemplate.png

Note

Required fields are marked with an asterisk (*).

  • Name * - Enter a name for the template.
  • Description - Provide a short description for the firewall template.
  • Basic rules - Click “ADD” to open the list of rules to assign them to the template. In the appeared window select a template in the “All templates” list at the left and move it to the “Selected templates” list at the right by clicking the arrow icon:
_images/Firewall_SelectRules.png

Click “SELECT ALL” to move all templates from left to right at once.

Click “RESET” to drop all selected templates.

In the list below you will see the rules corresponding to the selected templates. All of them are checked as selected. Uncheck those you do not wish to add to your firewall template.

_images/Firewall_SelectRules2.png

Click “SAVE” to apply the selected rules to your security group template.

Click “CANCEL” to drop the selected options. No rules will be assigned to the template. You will return to the “Create a new security group” window.

When all fields are completed, click “CREATE” to create the new firewall template. The template will appear in the list of firewall templates as Custom:

_images/Firewall_CreatedTemplate.png

Click “CANCEL” to cancel the template creation process. No firewall templates will be created then. All fields will be cleared in the form.

Create a Shared Security Group

You can create a shared security group and it will be available for creating virtual machines of other users.

A new shared security group is created on the base of existing templates. This security group will be created with a shared type.

If you would like to create a new shared security group, navigate to the Shared Security Group section and click “Create” in the bottom-right corner. Then, fill in the form:

Note

Required fields are marked with an asterisk (*).

  • Name * - Enter a name for the group.
  • Description - Provide a short description for the group.
  • Basic rules - Click “ADD” to open the list of rules to assign them to the group. In the appeared window select a template in the “All templates” list at the left and move it to the “Selected templates” list at the right by clicking the arrow icon:
_images/Firewall_SelectRules.png

Click “SELECT ALL” to move all templates from left to right at once.

Click “RESET” to drop all selected templates.

In the list below you will see the rules corresponding to the selected templates. Check those you wish to add to your shared security group.

_images/Firewall_SelectRules2.png

Click “SAVE” to apply the selected rules to your security group template.

Click “CANCEL” to drop the selected options. No rules will be assigned to the security group. You will return to the “Create a new security group” window.

_images/Firewall_CreateSharedSG.png

Click “CREATE” to create the new shared security group. The group will appear in the list of shared security groups.

_images/Firewall_CreatedSG.png

Click “CANCEL” to cancel the group creation process. No group will be created then. All fields will be cleared in the form.

Private Security Groups

Private security groups are listed in the Private Security Groups section.

Security groups appear in this section once they are created for a virtual machine (see Create a Virtual Machine). A private security group name has the following format - sg-{{ virtual machine name }} - containing the name of the virtual machine it is created for.

You can quickly find a group by its name or a part of the name using the searching tool above the list.

_images/Firewall_Search816.png

Besides, Administrators can filter the list by accounts.

_images/Firewall_Filter_Admin816-1.png

You can filter the list by ticking the “Orphan” checkbox above. It allows displaying only the security groups that are not used by any machine.

_images/Firewall_Orphan816-2.png

The “Orphan” option appears above the list in case the security groups that are not used by any VM exist in the list. This might happen in case a VM has been deleted but a group has been not (because of an error or incorrect behavior).

Security Group Details Sidebar

You can see the firewall rules details in the sidebar to the right.

Click the template/shared/private security group in the list and open the sidebar. You will see two tabs there - Details and Tags.

The Details tab contains the following information:

  • Name of the security group;
  • Security Group Action Box under actions icon;
  • ID of the security group;
  • Description giving an idea what the security group contains (not available for private security groups);
  • Type - Defines the security group types. For firewall templates it can be custom-template for custom templates, or predefined-template for system templates. For shared security groups it is shared. For private security groups you will see private.
_images/Firewall_TemplateDetails1.png

For shared security groups you also can see what virtual machines are assigned to this group. The machine name in the list is active. You can move to the virtual machine details bar by clicking it.

_images/Firewall_SharedSGDetails1.png

For private security groups a VM name is also displayed in the details sidebar, but it is not active.

The Tags tab presents the list of tags assigned to the security group. Using the search tool above you can quickly find a tag by its name.

System tags are listed in a separate card.

_images/Firewall_Tags.png

Сlick create icon to add a tag. Enter a key and a value.

Note

Both fields are required. The input values for both fields cannot start with a space.

_images/Firewall_Details_Tags.png

Click “CREATE” to create the new tag. It will be saved in a separate card.

An existing tag can be edited or deleted by clicking a correspondent icon next to the tag’s name.

Security Group Action Box

Firewall templates, shared and private security groups have an Action box with the following actions in it:

  • View - Allows viewing the rules in the group/template. Click “Rules” view to open the rules implemented to the template.
  • Delete - Allows deleting the group or the template from the system.

Note

A template/security group cannot be deleted if it is used for a virtual machine, or it belongs to another user. Deleting action is not available for system firewall templates.

Edit a Firewall Template/Security Group

When clicking “Rules” view in the Action box you open a modal window where the rules of the template/security group are listed. The list of rules can be filtered by:

  • IP versions - IPv4 and/or IPv6;
  • Types - Ingress and/or Egress;
  • Protocols - TCP and/or UDP and/or ICMP.

Besides, you can group the rules by types and/or protocols.

_images/Firewall_FilterRules1.png

You can edit the implemented rules right in this modal window by clicking “EDIT” below the list. When switching to the edit mode you are enabled to add rules or delete the selected ones from the list.

To add rules, please, fill in the fields in the panel above the list and click “+”:

_images/Firewall_AddRules.png

Validation

Please, make sure you enter valid values for Start and End ports:

  • Start port can be less or equal to End port. For more convenience, we added the autocomplete, that is, when entering a Start port value, the End port field is prepopulated with an equal value.
  • The values in these fields cannot be greater/less than maximum/minimum allowed values (for TCP/UDP max port is 65535, for ICMP - 255).
  • The fields cannot be empty.

For ICMP type make sure you input a valid CIDR, ICMP type and code.

  • You will not be able to enter an ICMP type and a code until a valid CIDR is specified. Likewise, you will not be able to enter an ICMP code until a valid ICMP type is specified.
  • CIDR allows entering IP addresses in both IPv4 and IPv6 formats.
  • ICMP IPv6 the “[-1] Any” value is supported for type and code.
  • ICMP type and code fields cannot be empty.

For invalid values the add button “+” is disabled.

To delete rules, please, click the Delete icon in the list. The rule will be deleted from the security group.

_images/Firewall_DeleteRules.png

Then you can move back to the view mode, or close the window. You will see the rules are edited.

Please, note, when editing shared security groups, a warning message appears:

_images/Firewall_EditShared_Warning1.png

Click “Yes” if you still want to edit a shared security group. You will be switched to the “Edit” mode. Change the security group as you need following the instructions above.

Note

Editing is not available for system firewall templates and security groups of other users. You can view the rules only.

“Convert to Shared” Action for Private Security Groups

For private security groups you can find a “Convert to shared” action in the Action box. It allows making a shared SG from a private SG so that it can be used for VMs by other users.

To convert a private security group into a shared one, please, follow the steps:

  1. Move to the list of Private Security groups,
  2. Select “Convert to shared” option in action box for a security group,
_images/Firewall_ConvertToSharedAction.png
  1. A warning dialog appears. Click “YES” to confirm your action.
_images/Firewall_ConvertToSharedDialogue.png

The security group will be moved to the list of “Shared Security Groups”. The tag “is private” will be removed for this security group.

Click “NO” to cancel the convertion, the security group will stay private.

SSH Keys

In the Virtual Machines -> SSH keys section you can create and manage SSH keys.

In addition to the username and password authentication, CloudStack supports using SSH keys to log in to the cloud infrastructure for additional security. Find more information in the official documentation.

CloudStack-UI allows managing SSH key in a separate section which is more convenient for a user.

SSH Key List

SSH keys existing in the account are presented in this section. A user can see and manage SSH keys for his/her user only.

_images/SSH_List1.png

Administrators can see and manage keys for all accounts in the domain.

You can switch the view from a list mode to a card mode using the switch tool view icon/box icon in the upper-right corner.

For every key the following information is displayed:

  • Key name;
  • SSH public key;
  • Action box - Allows deleting a key from the system.
Filtering of SSH Keys

The filtering tool is available to Administrators. It is placed above the list of keys and allows filtering keys by accounts.

Besides, the keys can be grouped by accounts that may be convenient for list viewing.

_images/SSH_AdminFiltering.png

Create an SSH Key

You can generate a new SSH key to use for authentication.

By clicking “Create” create icon in the bottom-right corner you will open a form where you should specify a key name:

_images/SSH_Create.png

Then click “CREATE”. The SSH key will be auto-generated. The public key will appear in the list of SSH keys with a fingerprint. In the modal window, you will see the private key. This private key is not saved in the system. You should save it for yourself. Click “COPY” to correctly copy it and save it locally.

_images/SSH_Copy.png

Then click “OK” to close the window.

You can specify an SSH public key entering its value in the field. It should start from ssh-rsa followed by one space and at least one symbol. Then click “CREATE”. The key will be saved. No private key is required in this case.

_images/SSH_EnterKey.png

The created SSH key is available to assign to VMs now.

SSH Key Details Sidebar

By clicking an SSH key in the list you will open a details sidebar to the right.

_images/SSH_Details1.png

It contains the following information:

  • SSH key name;
  • Key action box allowing key deleting;
  • SSH public key fingerprint;
  • SSH key description - In this block a description can be added to understand better what this key is for. Click the block and enter a short description in the text field. Then click “SAVE” to save it.
_images/SSH_Details_EditDescr.png

Click “CANCEL” to drop adding a description.

You can edit the description of an SSH key by clicking edit icon. Change the existing description in the text field and save the edits. The description is saved to account tags.

SSH Key Action Box

By clicking “Actions” actions icon you can expand the list of actions for those SSH keys that belong to your user only. The deleting action is available here.

_images/SSH_ActionBox.png

Click “Delete” to delete a key and then confirm your action in the dialog box. The key will be deleted. Click “Cancel” to close the window without deleting a key.

Accounts

In the Accounts section Administrators can manage accounts and users in them, as well as user settings and activity logs. For an account, details and resource limits can be viewed. Please, note that the account limits are shared by all users in the account. If you are facing the problem of the lack of resources, contact your Administrator. Administrators are able to edit the limits of an account. Besides, they can monitor resource usage having access to the resource statistics for each account.

Administrators can see the list of accounts for the whole domain. They can create new users for an account, edit or delete a user.

If you are a User, you can view but not manage your account and users in it. For each user in the account, you can see the settings.

Account List

Clicking Accounts in the left-side navigation bar you open the Accounts section. It presents the list of accounts. Administrators can see accounts for the whole domain. A user can see his/her account only, that is the account his/her user belongs to.

You can switch the view from list to box using the switch tool view icon/box icon in the upper-right corner.

_images/Accounts_ListSwitch1.png

For each account in the list you can see the following information:

  • Account name;
  • State - Shows the account state by color spot: green for Enabled, red for Disabled statuses;
  • Role - A role assigned to the account - Root Administrator, Resource Administrator, Domain Administrator, User. Find more information on roles in CloudStack in the official documentation.
  • Role type - A role type connected to the role.
  • Domain - The domain which the account belongs to.
  • Action list - Allows an Administrator to manage the account - to disable or delete it. Find more details at Account Action Box.
Filtering of Accounts

If you are an Administrator, filtering and search tools will help you to find an account in the list.

You can filter the list by:

  • Domains - Select a domain/domains available to you from the drop-down list.
  • Roles - Select a role - Root Administrator, Resource Administrator, Domain Administrator and/or User -from the drop-down list.
  • Role types - Select a role type/types from the drop-down list.
  • States - Select a state/states - Enabled and/or Disabled - from the drop-down list.

Besides, accounts can be grouped by the parameters mentioned above.

_images/Accounts_Filtering.png

Create an Account

An Administrator can create a new account in the domain.

_images/Accounts_OpenCreateForm.png

By clicking “Create” create icon in the bottom-right corner you will open a form where the following fields should be completed:

Note

Required fields are marked with an asterisk (*).

  • Name * - Enter any desired login ID for the account name. It should be unique within the domain.
  • Email * - Enter the accounts email address.
  • Password * - Enter any password you like. You can view the password that you are entering by clicking view to the right. Hide the password under dots by clicking hide.
  • First name * - Enter the first name of a person or the first part of the entity represented by the account. It can be a department or a customer.
  • Last name * - Enter the last name of a person or the second part of the entity represented by the account (a customer or a department).
  • Domain * - Select a domain in which the account is to be created.
  • Role * - Select the role for the account.
  • Time zone - Set the time zone that corresponds to the account locale.
  • Network domain - If you want to assign a special domain name to the account’s guest VM network, specify the DNS suffix.
_images/Accounts_Create.png

Click “CREATE” to create the new account. Make sure it has appeared in the list of accounts.

A user is created automatically for the new account. User’s name corresponds to the first and the last name specified in the account creation form. This user inherits account’s email and time zone.

Click “CANCEL” to leave the account creation form. No account will be created then.

Account Details Sidebar

For each account, the information is available in the details sidebar to the right. Click the account in the list to open the sidebar:

_images/Accounts_Details1.png

There are two tabs in the sidebar: General and Users.

The General tab contains the general information on the account: details, limits for resources.

Administrators can edit the limits. Click “Edit” edit icon in the Limits block and change the values right in the block.

_images/Accounts_EditLimits.png

Administrators can see the statistics on resource usage at the bottom. Refresh the data by clicking refresh icon.

_images/Accounts_Stats.png

The Users tab contains the list of users in the account. For each user you can expand the information card where the following information is listed:

  • Username;
  • First and Last name;
  • Timezone;
  • Email;
  • Secret key - The key generated for a user by clicking “Regenerate key” in the Action box. You can copy it to the buffer by clicking copy icon.
  • API key - The key generated for a user by clicking “Regenerate key” in the Action box. You can copy it to the buffer by clicking copy icon.
_images/Accounts_Users1.png

An Administrator has a list of actions available for each user. A user can manage his/her user only. A list of actions is available under the actions icon button. It contains the following actions:

  • Edit user;
  • Change password;
  • Regenerate key;
  • Delete user (available for Administrators).

Find more about actions for users in the User Action Box section.

Create a User

Administrators can create a new user from the Users tab of the Account Details sidebar by clicking “Create” create icon.

In the appeared form fill in the following fields:

Note

Required fields are marked with asterisks (*).

  • Username * - Enter any desired user ID. It should be unique within the domain.
  • Password * - Enter any password you like. You can view the password that you are entering by clicking view to the right. Hide the password under dots by clicking hide.
  • First name * - User’s first name.
  • Last name * - User’s last name.
  • Email * - Enter the user’s email address.
  • Time zone * - Set the timezone that corresponds to the user’s locale. Select an option from the drop-down list.
_images/Accounts_CreateUser2.png

Click “CREATE” to create the new user. It will appear in the list of users for this account.

Click “CANCEL” to cancel the user creation.

User Action Box

Administrators can manage a user via the Action box.

_images/Accounts_UserActions1.png

The list of actions allows an Administrator to:

  • Edit user - Opens a form to edit user’s settings (name, email, timezone). Edit the information and click “SAVE” to save the edits.
_images/Accounts_UserActions_Edit.png
  • Change password - Opens a modal window with two fields for you to enter a new password and confirm it. Use the view tool view to view or hide a password while entering. Click “SAVE” to save the new password.
_images/Accounts_UserActions_ChangePass.png
  • Regenerate key - Allows changing the keys - secret and API - for the user. Confirm your action in the dialog window, and the keys will be changed.
  • Delete a user - Allows deleting a user from the system. Confirm your action in the dialog window, and the user will be deleted.

Account Action Box

Administrators can manage an account via the Action box under actions icon.

_images/Accounts_Actions887.png

The list of actions allows an Administrator to:

  • Disable account - Allows disabling an account. By disabling the account all users for this account will no longer have access to their cloud resources. All running VMs will be immediately shut down. Click “Disable account” and confirm your action in the dialog window. The account will be inactive.
  • Enable account - Allows activating a disabled account. Click “Enable account” and confirm your action in the dialog window. The account will be activated.
  • Delete account - Allows an Administrator to delete an account from the system. Confirm your action in the dialog window, and the account will be deleted.

Activity Log

In the Accounts -> Activity log section you can see user activity in the account. Event search by main parameters - date and keywords - is supported to make it easier to find a necessary event for a specific date or type.

Events List

Events in the Activity log are listed in a chronological order from the latest till the earliest. It represents the full list of events for a selected day.

A user can view activities for his/her user only. An Administrator can see events for all accounts in the domain.

_images/Events_List1.png

The following information for each event is presented in the list:

  • Event description.

  • Level - A kind of a category the event belongs to. It can show:

    • INFO - For regular activities, for example, logging in, creating a VM, attaching a disk.
    • WARN - For any warnings occurred.
    • ERROR - For any errors occurred, for example, an error while registering an SSH key pair.
  • Type - Displays in what aspect of the system the event has taken place, for example: USER.LOGIN - for events happened at user authentication to the system; VOLUME.RESIZE - for events at disk size change.

  • Time of the event.

Filtering of Events

To easily find an event in the list use the filtering tool above.

Any user can filter events by:

  • Date - Allows selecting events for a specific date. By default, the today’s date is selected. Click date icon and in the appeared calendar change the date for the day you wish to see activities for.
_images/Events_Datepicker.png

Click “OK” to filter the list. The events will be selected in accordance with the chosen date.

Click “CANCEL” to drop the selection.

  • Levels - Allows selecting events by levels. Choose the level/levels you with from the drop-down list.
  • Types - Allows selecting events by types. Choose the type/types from the drop-down list.

An Administrator has an additional filtering parameter - accounts.

_images/Events_AdminFiltering.png

Use the search tool to find an event by keywords or a part of a word.

_images/Events_Search.png

Settings

In the Accounts -> Settings section a user can modify the interface by changing settings. The interface settings are presented in separate sections: Security, API configurations, VM preferences, Look and Feel, Account tags, User tags. Moving between sections is possible using the switcher above.

_images/Settings_List1.png

Security

In this section a user can manage the following security settings:

  • Change password;
  • Set the session timeout interval;
  • the “Save VM passwords by default” option.
Change Password

Here you can change the password provided by your Administrator to the one you like. This will improve the account security.

Enter a new password and re-enter it in the next field to confirm it:

_images/Settings_EditPass.png

Click “UPDATE” to save the new password.

In case you have lost or forgotten your password, contact your Administrator.

Session Timeout

Here you can specify the maximum amount of time that an active session can be idle (without user activity) before it automatically closes. The default interval is 30 minutes.

Set the desired time limit in minutes using the switch button switch icon to the right or typing it just into the field. Then click “UPDATE” to save the changes.

_images/Settings_EditTimeout.png

The value is stored in user’s tags.

The maximum allowed value is 300 minutes. Please, note that a long time period of an idle session decreases the account security.

The session timeout can be set in the configuration file. You will find more information in the configuration guide.

Save VM passwords by default

This checkbox allows saving passwords to VM tags automatically for all created virtual machines requiring passwords.

_images/Settings_SavePass2.png

Tick this option here. The passwords will be saved to VM tags right at the moment VMs are created. You will see a password (if it is required for the VM) is marked as saved in a dialog window after the new VM is deployed:

_images/VMs_Create_Dialogue_SavedPass.png

If this option is not activated, every time when creating a machine the system will ask you to save the password by clicking “SAVE” next to it:

_images/VMs_Create_Dialogue_SavePass.png

Then the system will ask you if you wish to save passwords to VM tags automatically. If you click “Yes”, the “Save VM passwords by default” option will be activated in Settings. You will find more information about VM creation in the Create a Virtual Machine section.

API Configuration

In this block of settings you can see and manage the API configurations: regenerate API keys, see the connection URL, get the link to the Apache CloudStack API documentation.

For users with no API keys, the system autogenerates the keys when a user logs in if this option is enabled in the configuration file. Find more information in the configuration guide.

You can see an API key and a Secret key in corresponding fields. You can copy any of them clicking copy icon to the right.

_images/Settings_APIKeys.png

Regenerate the keys by clicking refresh icon above the fields. New keys will be generated.

_images/Settings_APIKeysRefresh.png

Below you can view a connection URL which is used to send requests to CloudStack API. All requests are listed in the Apache CloudStack documentation available by the link.

_images/Settings_Links.png

VM preferences

In this block you may set up the keyboard layout.

Keyboard layout

Select a keyboard layout in the drop-down list.

The following options are available:

  • Standard US keyboard (default value)
  • UK keyboard
  • Japanese keyboard
  • Simplified Chinese keyboard.
_images/Settings_KeyboardLayout1.png

The selected option will appear in the VNC console kayboard layout parameter when accessing a VM via concole. The selected option is also saved to user tags.

Account tags

In this section, you can view and manage account tags.

_images/Settings_AccTags.png

Tags can be system or non-system. System tags are used to provide the functionality from the user interface perspective. Changing these tags affects the functionality of the application. The “Show system tags” checkbox allows to view or hide system tags of an account. Hiding system tags helps to avoid accidental unwanted changes. If a user has disabled displaying of such tags, the system will remember it and next time tags will also be hidden. Uncheck the “Show system tags” checkbox to hide system tags from the list.

The following system tags can be used for accounts:

  • csui.account.ssh-description - Used to provide an SSH description.

To find the tag you are interested in, please, use the search tool above the tag list. You can enter a name or a part of the tag name to distinguish it in the list.

To add an account tag click “Create” create icon. In the appeared form enter:

  • Key *
  • Value *

Note

Required fields are marked with an asterisk (*). The values in the fields cannot start with a space.

Click “Create” to assign a new tag to the account.

_images/Settings_CreateAccTag.png

User tags

In this section, you can view and manage user tags.

_images/Settings_UserTags.png

Tags can be system or non-system. System tags are used to provide the functionality from the user interface perspective. Changing these tags affects the functionality of the application. The “Show system tags” checkbox allows to view or hide system tags of a user. Hiding system tags helps to avoid accidental unwanted changes. If a user has disabled displaying of such tags, the system will remember it and next time tags will also be hidden. Uncheck the “Show system tags” checkbox to hide system tags from the list.

User system tags has the format of csui.user.<tag_name>. You can view a full list of user tags at the wiki-page.

To find the tag you are interested in, please, use the search tool above the tag list. You can enter a name or a part of the tag name to distinguish it in the list.

To add a user tag click “Create” create icon. In the appeared form enter:

  • Key *
  • Value *

Note

Required fields are marked with an asterisk (*). The values in the fields cannot start with a space.

Click “Create” to assign a new tag to the user.

_images/Settings_CreateUserTag.png

Look and Feel

In this section, you can adjust the interface look.

Interface Language

Select the language of your interface. Currently two options are available in the drop-down list: Russian and English.

_images/Settings_Lang.png
First Day of Week

In this block, you have the opportunity to choose between two types of weeks: Sunday - Saturday or Monday - Sunday.

From the drop-down list select the day when a week starts: Monday or Sanday.

_images/Settings_DayOfWeek.png
Time Format

Here you have the opportunity to switch the time format from AM/PM to 24H. You can set it to “Auto” and the time format will be set in correspondence to the interface language: AM/PM if you select English and 24H if you select Russian.

_images/Settings_TimeFormat.png
Theme Color

Select a preferred theme color. Currently two options are available: “blue-red” and “indigo-pink”. The blue-red one is used by default.

Click the field and select another color if you wish.

_images/Settings_Theme.png

A theme color can be set in the configuration JSON file. You will find more information in the configuration guide.

Log View (real-time mode)

This section is available if the LogView UI-plugin is activated. See the plugin page for installation instructions.

In this settings block you can configure viewing VM logs in a real-time mode. The following parameters can be set:

  • Show last (minutes) - allows viewing logs for the last set period. You can set the number of minutes from 1 (default) to 10.
  • Show last (messages) - allows setting a maximum amount of logs to display. You can set from 1 to any number of log records. By default, 1000 messages are shown.

Click “Update” to apply the set parameters.

_images/Settings_LogView.png

Logout

Clicking Logout in the bottom of the navigation bar a user can logout from CloudStack.

_images/LogoutCS1.png

It will move a user back to the Login form.

Pulse Plugin

Overview

The Pulse plugin is designed for visualization of virtual machines performance statistics. Currently, this CloudStack-UI extension is only compatible with ACS clusters that use the KVM hypervisor. With help of sensors that collect virtual machines performance statistics via the Libvirt API and store them in an InfluxDB datastore and RESTful statistics server, CloudStack-UI is able to display CPU, RAM, disk IO and network traffic utilization in the form of convenient visual charts.

In general, the plugin works as it is presented in the figure below:

_images/Pulse_Overview.png

A sensor connects to a virtual machine, collects its performance statistics via the Libvirt API, and stores it in InfluxDB datastore. Users interact with the plugin via CloudStack-UI. They specify parameters to build reports. These parameters are sent to RESTful server that gets corresponding data from the InfluxDB datastore and returns it to UI where it is presented as convenient visual charts.

Pulse allows users of Apache CloudStack to monitor current and previous operational states of virtual machines. The plugin supports various view scales like minutes, hours, days and enables data overlays to monitor peak and average values.

We consider this plugin very important for the CloudStack ecosystem as currently there is no built-in functionality to track VM operational states, although it is vital for system administrators to successfully operate virtual servers.

Plugin deployment and configuration Instructions can be found below.

Deployment Instructions

Note

The Pulse plugin works only for KVM hypervisor right now.

Please, make sure that you have cs-pulse-server and cs-pulse-sensor to be able to work with the Pulse plugin.

To enable the Pulse plugin you need:

  1. Configure plugin in config.json.
  2. Run docker container with a correctly specified cs-pulse-server endpoint.

Pulse configuration

Please, enable pulse in the extensions section of the config.json:

"extensions": {
  ...,
  "pulse": true
}

Running cloudstack-ui docker container

docker run -d -p 80:80 --name cloudstack-ui \
           ...
           -e PULSE_PLUGIN_ENDPOINT=http://url/to/cs-pulse-server \
           ...
           -v /path/to/config.json:/static/config/config.json \
           bwsw/cloudstack-ui

WebShell Plugin

In clouds the most commonly used operating systems nowadays are Unix or Linux based operating systems. To control Linux system administrators use standard SSH interface. Most system administrators or cloud users have SSH client installed on their machines.

First of all, it is more interactive, because it allows performing copy&paste operations. It is more performant if you need to work with text.

In addition to the UI inactivity interval, SSH plugin supports its own inactivity timeout so you should not worry leaving SSH opened when you go out for a cup of coffee. In comparison to a VNC console, if you open it in your browser, it will be opened forever.

This plugin is not required, but it is very helpful and easy to install and configure it. There is a docker webshell container that should be deployed. This container is a standalone shell proxy and can be used outside of the CloudStack UI, but there is an option to integrate them, Just specify the WebShell endpoint when you run the UI container. You can also disable the plugin in the UI configuration anytime you want.

Read more about it below.

Overview

WebShell is a CloudStack-UI extension designed to perform a clientless SSH connection to a virtual machine. The extension is activated in the CloudStack-UI configuration file and is supported by an additional Docker container. As for the way of WebShell usage, the plugin is similar to NoVNC interface provided by CloudStack. However, WebShell uses the SSH protocol and does not allow VM emergency management.

The need for this extension is determined by the shortcomings of the NoVNC interface, that obstructs its usage for everyday administrative purposes:

  • Low interactivity and slow throughput of the terminal interface;
  • Lack of possibility to copy/paste text from the user’s local machine;
  • Missing feature to complete the session by timeout;
  • Access to the virtual machine in out-of-band mode, which allows performing a number of insecure operations.

WebShell plugin solves these problems:

  • Provides high interactivity, which is especially useful when working with information that contains large amounts of text;
  • Allows copying and pasting text from the workstation;
  • Enables configuration of the session completion timeout, thereby improving the security of the system;
  • Does not provide an access to the VM in out-of-band mode.

In future releases, this plugin will be extended with additional features such as integration with the VM access key store and dashboard for efficient work with many open SSH sessions.

This feature is not available in basic CloudStack UI and API.

Plugin deployment and configuration instructions can be found below.

Deployment Instructions

To enable WebShell CloudStack-UI Plugin it is required to:

  1. Run WebShell container in the backend.
  2. Enable and configure WebShell plugin in config.json.

Starting WebShell Backend

Please check Usage section in the WebShell repository.

WebShell configuration

Please configure webShell in the extensions section of the config.json:

"extensions": {
  ...,
  "webShell": true
}

webShell.address is the address of a WebShell backend. WebShell will not be available unless an address is specified.

Running cloudstack-ui docker container with WebShell

docker run -d -p 80:80 --name cloudstack-ui \
           ...
           -e WEBSHELL_PLUGIN_ENDPOINT=http://url/to/webshell-server \
           ...
           -v /path/to/config.json:/static/config/config.json \
           bwsw/cloudstack-ui

Log View Plugin

Overview

In the Virtual Machines-View Logs section, a user can see VM logs. This section appears if the UI-plugin - Log View - is activated. This UI-plugin works together with the backend API plugin developed to process and view virtual machine logs. The version of the backend API plugin matches Apache CloudStack version that it is built for. The plugin is tested with Apache CloudStack 4.11.2.0.

In general, the plugins work as it is presented in the figure below.

_images/OverviewDiagrams-LogView.png

Machine logs are handled and delivered by ELK stack that includes Filebeat and Logstash for log exporting and Elastisearch as storage. Via the CloudStack-UI, a user defines parameters for filtering logs. The Log View UI-plugin use these parameters to request the backend API plugin to get corresponding logs or log files from the storage. The UI plugin displays the returned logs to the user.

To make the View logs section available in the UI, first deploy the backend API plugin and then activate the Log View UI-plugin via the config.json file. See deployment instructions below.

Deployment Instructions

Full instructions on the Log View plugin deployment is presented at the plugin page.

To enable the Log View plugin you need to:

  1. Install the backend API plugin into CloudStack.
  2. Deploy the necessary components: ElasticSearch, Filebeat, Logstash, Curator.
  3. Enable the UI extension via the config.json file.

View Logs

After successful deployment, you can see the View logs section under the Virtual Machines menu in UI. In this section, you can view the log files for a defined period of time or in a real-time mode. To view logs, you should specify an account (for Administrators), a VM for which you wish to see the logs, and a log file to view the logs from. More details are provided below.

Filtering Logs

To view logs in the list, please, set up the filtering parameters.

Select the following parameters in the provided order from drop-down lists:

Note

Required fields are marked with an asterisk (*).

  • Accounts * - Allows Administrators to further select a VM in a specific account/accounts. Select an account or a number of accounts in the drop-down list.
  • VM * - Allows selecting logs for a specific VM. Choose a machine you wish in the drop-down list. The list of available VMs is determined by the account(s) selected at the previous step, if you are an Administrator. If you are a user, you can see the machines belonging to your user only.
  • Log file - Allows viewing logs by a log file available for the selected VM. Choose a log file in the drop-down list. If no log file selected, all machine logs will display in the list.
  • Date * - Allows selecting logs for a specific period. Click date icon and in the appeared calendar choose the start and end dates to see the logs for. By default, the system shows logs for the last day.
_images/Logs_Datepicker.png
  • Time - Allows filtering logs for a specific time period within the selected dates. The time format is determined by the time format setting specified under the “Settings” section. Enter start and end time you wish into the fields to set a custom time period.
_images/Logs_Timepicker1.png

Click “Show logs” to implement the filtering settings.

_images/Logs_Filtering1.png

The logs will be displayed in accordance with the chosen period.

You can change filtering parameters and refresh the list of logs by clicking “SHOW LOGS”.

The set filtering parameters are saved to user tags. That means, if you log out of the system and then login again, you will continue to view logs with the previously set filtering parameters.

View Logs List

By clicking “SHOW LOGS”, a user can view log files corresponding to the filtering parameters. Logs are listed in a chronological order from the earliest till the latest.

By default, the system shows logs for the last day.

A user can view logs for his/her VMs only. An Administrator can see logs for all accounts in the domain.

_images/Logs_List1.png

The following information for each log file is presented in the list:

  • Date
  • File
  • Text

You can change filtering parameters and refresh the list of logs by clicking “SHOW LOGS”.

Sorting Logs

The sorting tool allows viewing the newest logs first in the list. Enable the checkbox to the right and click on “Show logs” to refresh the list.

_images/Logs_Newest1.png
Searching Logs

Use the search tool to find logs by a word or a text. Enter the text in the search field above the list and click on “Show logs” to refresh the list.

_images/Logs_Search2.png

Following Logs

After setting filtering parameters and clicking “Show logs”, a user can start following logs, in other words, start monitoring logs online.

When the “Follow logs” option is activated, the Log View UI-plugin sends requests to get the latest logs with the defined frequency and for a period, defined in the configuration file. By default, once per 1 second the system requests logs for the last 30 seconds. A user can customize these parameters via the configuration file (see details).

To view logs in a real time-mode, click “Follow logs” follow icon. This button is available right after selecting a virtual machine in the filtering parameters or after setting all necessary filtering parameters and clicking “Show logs”. You will see the filtering options are got disabled and the log list is automatically getting refreshed per every second.

_images/Logs_Follow.png

The “Follow logs” button changes its position depending on the applied sorting mode. If the “Newest first” option is disabled the button stands in the bottom-right corner, like at the screenshot above. If “Newest first” is enabled, the button goes to the upper-right corner and the latest logs will be displayed at the top of the list.

_images/Logs_FollowUp.png

By default, the list contains up to 1000 log records showing logs for the last minute.

If too many entries are to be displayed in the list, the system loads them by parts when a user scrolls the list down.

You can set up parameters of log following in the “Log View Plugin Settings” section:

  • Show last (minutes) - allows viewing logs for the last set period. You can set the number of minutes from 1 (default) to 10.
  • Show last (messages) - allows setting a maximum amount of logs to display. You can set from 1 to any number of log records. By default, 1000 messages are shown.

Click “Update” to apply the settings.

_images/RN_Logs_ViewOnlineSettings.png

To stop following logs click on unfollow icon.

Resource Limits Management Plugin

Overview

We introduced a new plugin - Resource Limits Management - that allows Domain Administrators to manage resource quotas, and users to change resource limits. The extension helps to avoid such situations when a user has extra resources that are not used but accounted in billing. Or when a user has utilized all the available resources and now needs more. In either of these cases, a user would have to request Administrator to change the resource limits. With the new plugin a user gets access to resource limits, and Administrator can manage resoure quotas via UI.

The extension uses two backend plugins:

  • the µAPI Gateway plugin developed by us to help developers to create extensions for CloudStack using any programming language.
  • the Resource Limits Management backend plugin that extends CloudStack API with additional endpoints.

In general, the plugin works as it is presented in the figure below:

_images/OverviewDiagrams-RLM.png

Users interact with the plugin via CloudStack-UI. They update limits and request resources for the account. The µAPI Gateway plugin gets installed to CloudStack. The Resource Limits Management backend extension is plugged in to CloudStack via µAPI Gateway and creates new endpoints. The Resource Limits Management UI-plugin uses them to send user’s requests for resource limit changes to CloudStack. The Resource Limits Management backend plugin checks user’s available resources with CloudStack. Besides, it requests the billing system to confirm that there are enough financial resources for the updates. On receiving the confirmation from the billing system, the Resource Limits Management backend plugin updates resource limits. The UI-plugin displays the updated limits to the user via CloudStack-UI.

Below, you can find an overview on deploying the Resource Limits Management plugin.

Plugin Deployment

The instructions on plugin deployment are presented at the project wiki-page.

To enable the Resource Limits Management UI-plugin you will need to:

  1. Install and configure the µAPI Gateway backend plugin in CloudStack.
  2. Deploy the Resource Limits Management backend plugin.
  3. Enable and configure the Resource Limits Management UI extension via the config.json file (see the configuration guide).

Managing Resource Limits via UI

Resource limits management by Domain Administrators

After the plugin is enabled, Domain Administrator can open “Resource quotas” under the “Accounts” menu. In this section, Administrator can view and set resource quotas. To edit resource quotas Administrator enters desired minimum and maximum values for a resource parameter.

_images/RLM_Admin.png

[-1] stands for any value, that means a resource parameter with [-1] is unlimited. Such parameters are not available for users to change resource limits.

Administrator sets resource quotas for all accounts in the domain.

Changing resources by users

After the plugin is enabled, a user can change resource limits in case of the lack of resources or, alternatively, nonuse of extra resources. To send a request a user goes to the Resource usage panel under the Virtual Machine section and clicks «Update resources».

In the appeared modal window, a user can see resource parameters and a slider for each parameter. The scales are limited in accordance with the quotas set by Administrator. A user can move a slider within the quotas to change a resource parameter value. Then click «Update» to change the resource limits.

_images/RLM_User.png

Unlimited resources (set by Administrator as [-1]) are not listed among the resource parameters. That means they are not available for changing.

Indices and tables