Ravello User Guide Use any public cloud to develop d evelop and test your on-premises applications Powered by the industry’s first Cloud Cl oud Application Hypervisor
www.ravellosystems.com
COPYRIGHT Copyright © 2014 Ravello Systems. Do not copy without permission.
Contact Information Ravello Systems Inc. 1121 San Antonio Road,B100 Palo Alto, CA 94303 T:+1 650 265 6875 Ravello Systems Ltd. POB 4127 13 Zarchin St. Ra’anana ISRAEL T:+972 (9) 776 6222 F:+972 (9) 776 6225 www.ravellosystems.com
Notice This guide has been carefully compiled. The information in this guide does not constitute a warranty of performance. performance. Furthermore, Ravello Systems reserves the right to revise this t his publication and make changes from time to time in the content thereof, without obligation to notify any person of such revisions or changes. Ravello Systems assumes no liability for losses incurred as a result of out- ofdate or incorrect information in this guide. The software described in this guide is furnished under a license agreement and may be used only according to the terms of that agreement.
www.ravellosystems.com
2
COPYRIGHT Copyright © 2014 Ravello Systems. Do not copy without permission.
Contact Information Ravello Systems Inc. 1121 San Antonio Road,B100 Palo Alto, CA 94303 T:+1 650 265 6875 Ravello Systems Ltd. POB 4127 13 Zarchin St. Ra’anana ISRAEL T:+972 (9) 776 6222 F:+972 (9) 776 6225 www.ravellosystems.com
Notice This guide has been carefully compiled. The information in this guide does not constitute a warranty of performance. performance. Furthermore, Ravello Systems reserves the right to revise this t his publication and make changes from time to time in the content thereof, without obligation to notify any person of such revisions or changes. Ravello Systems assumes no liability for losses incurred as a result of out- ofdate or incorrect information in this guide. The software described in this guide is furnished under a license agreement and may be used only according to the terms of that agreement.
www.ravellosystems.com
2
ContentsIntroductio ContentsIntroduction n ............................................................... 7 Technology ................................................................................................ 7 System Requirements................................................................................ 8 Concepts and Terms.................................................................................. 8 Typical Workflow ...................................................................................... 10
Ravello User Interface ............................................................ 11 Navigation Pane ...................................................................................... 11 Title Bar ................................................................................................... 12 Details Pane ............................................................................................ 12 Applications Module.......................... ............. .......................... .......................... .......................... .......................... ................ ... 13 Library Module ......................................................................................... 13
Virtual Machines ..................................................................... 14 Install the VM Import Tool .......................... ............ ........................... .......................... .......................... .................... ....... 14 Install the GUI VM Import Tool ........................................................... 15 Install the Ravello CLI on Windows Wi ndows Platforms ........................... ............. ....................... ......... 15 Install the Ravello CLI on Linux/Mac Platforms ...................... ............ 16 Import VM Images.................................................................................... 16 Extract and Upload VMs from fr om vCenter or o r vSphere .......................... ............. ................ ... 17 Upload a VM from a File ........................... .............. .......................... ........................... .......................... ............... ... 20 Create a VM by Uploading Existing Disk Files ....................... .......... ......................... ............ 22 Upload a Single Disk Image .......................... ............ .......................... ......................... ......................... ............ 24 Import VMs using the CLI ................................................................... 27 Verify Imported VMs ........................................................................... 27 View VM Image Properties ...................................................................... 28 Edit VM Images ....................................................................................... 28 Configure Elastic IP Addressing .......................... ............. .......................... .......................... .................. ..... 28 Upload ISO Files ........................... ............. .......................... .......................... ........................... .......................... .................... ....... 30 Upload an ISO file with GUI import tool .......................... ............. .......................... .................... ....... 30 Upload an ISO file with the CLI i mport tool .......................... ............ .......................... ............... ... 31 Use an ISO file as a CD ROM in i n your Ravello application ................. ............ ..... 32 Delete Virtual Machine Images ........................... ............. .......................... ......................... ......................... ............ 33 Save VM to Library .................................................................................. 33 Configuration Management.......................... ............. .......................... .......................... .......................... .................. ..... 35 Share a VM .............................................................................................. 36 Share a VM with a User in Another Organization .......................... ............. .................. ..... 36 Share a VM on Ravello Repo .......................... ............. ......................... .......................... ....................... ......... 37 View/Edit a Shared VM .......................... ............ .......................... .......................... .......................... ........................ ............ 40 Share a Disk Image ................................................................................. 40
www.ravellosystems.com
3
Share a Disk Image with a User in Another Organization................... ............ ....... 41 Share a Disk Image on Ravello Repo.............. ......................... ............. ...................... .......... 42 View/Edit a Shared Disk Image ............................................................... 44
Applications ......................................................... ................... 46 Create an Application............................................................................... 47 Publish an Application.............................................................................. 48 Auto-Stop Applications...................... .......................... ............. ........................... .......................... ............... ... 50 Stop All Instance VMs ......................... ............ .......................... .......................... .......................... .......................... ............... 50 Start All Instance VMs.............................................................................. 50 Restart All Instance I nstance VMs.......................... ............ ........................... .......................... ......................... ...................... .......... 51 Edit Application Design .......................... ............ .......................... .......................... .......................... ........................ ............ 51 View Application VM Details .................................................................... 51 Summary Tab ..................................................................................... 52 General Tab ....................................................................................... 52 System Tab ........................................................................................ 52 Disks Tab ........................................................................................... 53 Network Tab ....................................................................................... 53 Services Tab ...................................................................................... 54 Manage Application VMs ......................................................................... 55 Start a VM .......................................................................................... 55 Stop a VM ........................................................................................... 55 Restart a VM ...................................................................................... 55 Recover a VM ..................................................................................... 56 Start and Stop Application VMs in Stages ........................... ............. .......................... ............... ... 56 Open the VM Console.............................................................................. 57 Delete an Application ............................................................................... 58
Design Canvas ........................................................................ 58 Design Options and Indicators ......................... ............ .......................... .......................... .......................... ............... 58 VM Library ............................................................................................... 59 Design Objects ........................................................................................ 59 Add a Group ......................... ............ ........................... ........................... ......................... .......................... ....................... ......... 60 Add a Virtual Machine Image Image .......................... ............. ......................... .......................... ....................... ......... 61 Add and Connect Service Service Interfaces .......................... ............ .......................... ........................ ............ 61 Edit Service Properties ....................................................................... 62 Available Actions for Selected Selected VMs .......................... ............. .......................... .......................... .................. ..... 63 Viewing the Network Architecture ........................... .............. .......................... .......................... .................... ....... 63
www.ravellosystems.com
4
Manage IP Filters ............................................................................... 64 View DHCP Server Properties ........................... .............. .......................... .......................... .................... ....... 65 View DNS Properties .......................... ............ ........................... .......................... ......................... ...................... .......... 65 View Router Properties ........................... .............. .......................... .......................... .......................... .................. ..... 66 Configure SNAT ................................................................................. 66
Blueprints ................................................................................ ................................ ................................................ 67 67 Create a Blueprint .................................................................................... 68 View a Blueprint ....................................................................................... 69 Delete a Blueprint .................................................................................... 70 Share a Blueprint ..................................................................................... 70 Share a Blueprint with a User in Another Organization ...................... .......... ............ 70 Share a Blueprint on Ravello Repo ....................... .......................... ............. ................ ... 71 View/Edit a Shared Blueprint ................................................................... 74
Additional Functionality......................................................... Functionalit y......................................................... 75 Key Pair Assignment................................................................................ 75 Generate a Key Pair ........................... ............. ........................... .......................... ......................... ...................... .......... 75 Import a Key Pair ................................................................................ 77 Using SSH key pairs to connect to VMs ..................... .......................... ............. ................ ... 78 Use SSH key pai rs to connect to t o VMs with Linux/Mac ....................... .............. ......... 78 Use SSH key pai rs to connect to t o VMs with Windows W indows ......................... ............. ............ 78 Add Proxy Settings for Image Image Upload (Windows environments) environments) .............. ............. . 80 Sharing Library Items .......................... ............. .......................... .......................... .......................... .......................... ............... 81 Ephemeral Access ................................................................................... 81 Creating Ephemeral Access Tokens ....................... ........................... ............. .............. 82 Managing Tokens .......................... ............. .......................... .......................... .......................... .......................... ............... 83 Adding Resources to an Existing Token ......................... ............ .......................... .................... ....... 84 Changing the Token T oken Validity .......................... ............ .......................... ......................... ......................... ............ 84
Admin Module ......................................................................... 85 User Administration and Permissions Groups .............. .......................... .............. .............. 85 Permissions Group Management ............................................................ 86 Define Permissions Groups ........................... ............. .......................... ......................... ......................... ............ 86 Edit Permissions Groups .......................... ............. .......................... .......................... .......................... ................ ... 88 Delete Permissions Groups ........................... ............. .......................... ......................... ......................... ............ 88 User Management ................................................................................... 89 Invite Users ........................................................................................ 89 Add User to a Permissions Group Group ......................... ............ .......................... .......................... ................ ... 89 Change Password .............................................................................. 90 Disable a User .................................................................................... 90 Monitor Resource Usage ......................................................................... 90 www.ravellosystems.com
5
Upgrade Your Account............................................................................. 91 Set Up Your Public Profile ....................................................................... 92 View the System Log ............................................................................... 93
Frequently Asked Questions ................................................. 94 General questions about Ravello, how it i t works, and terminology ............ 94 What is Ravello?................................................................................. 94 What is i s the Cloud Application Hypervisor?.......................... ............ .......................... ............... ... 94 What is the added value of using Ravello API? ........................... .............. .................... ....... 95 What operating systems are supported? .......................... ............. .......................... .................. ..... 95 What VM formats does Ravello support? ................... ........................ ............. ........... 95 Which clouds are supported? .......................... ............. ......................... .......................... ....................... ......... 95 Terminology ............................................................................................. 96 What is an application? ...................................................................... 96 What is an application design? .......................... ............. .......................... .......................... .................... ....... 96 What is a service? .............................................................................. 96 What is a blueprint? ............................................................................ 96 What is publishing? ............................................................................ 96 Questions about working with Ravello .......................... ............. .......................... ........................... .............. 97 Why can't I connect to the UI VM Import Tool? .................................. 97 Can I use CLI to upload VMs? ........................... .............. .......................... .......................... .................... ....... 97 What is the user for public images?.................................................... 98 How do I change the IP address of my VM? ........... .......................... .............. .............. 98 Can I restrict access to my VM? .......................... ............. .......................... .......................... .................. ..... 98 Why can’t I open the VM console? .......................... ............. .......................... ........................... .............. 98 Why can't I connect to the VM with SSH? .......................................... 99 Can I save a blueprint based on an application? ........................... .............. .................. ..... 99 Where did all the VMs in the Library page come from? ...................... ............. ......... 99 Where can I find an application’s DNS properties? ............ properties? ......................... ................ ... 99 How do I create a key pair? ........................... ............. .......................... ......................... ......................... ............ 99 Can I import i mport and use an existing key pair? .......................... ............ .......................... .............. 100 How do I know how many VMs I have running? .......................... ............. .................. ..... 100 Where can I find information on resource usage status and levels? 100 How do I know how many VMs I have running? .......................... ............. .................. ..... 100 Why can’t I open the Ravello Management Console? ..................... Console? ..................... . 100 What is auto-stop?............................................................................ 101 Can I export OVF files from a vSphere environment? environment? ................... ... 101 How do I enable RFP access to a virtual machine? ............. ............ 101
www.ravellosystems.com
6
Introduction Ravello’s software-as-a-service offering enables you to seamlessly use any leading public cloud to develop and test your existing on-premises applications. With Ravello, enterprises can easily, without making any changes, create replicas of their on-premises, multi-tier VMware or KVM based applications in any public cloud – AWS, Rackspace or HP – for development and testing. You can create blueprints of multi-tier applications and spin up as many instances as you need for testing, without having to build out massive on-premises test capacity that sits idle most of the time.
Technology Ravello’s unique Cloud Application Hypervisor technology enables an enterpr ise to completely encapsulate and abstract an entire multi-VM appli cation and its environment so that it can run on any cloud (public or private) without modifications. Ravello requires no changes to the VMs, the networking or the application itself. Ravello consists of three key technology components: HVX – high performance nested hypervisor
IO Overlay/ software defined network
Application framework
Once a copy of the application is running in the cloud, the enterprise can create a blueprint of the application. That done, each developer and test engineer can:
Log in to Ravello and deploy a replica of the production application in any cloud for development and testing
Connect the enterprise Continuous Integration server (e.g., Jenkins) to Ravello, so that every time a developer checks in code the system automatically spins up a replica of the production application in the cloud (public or private), runs tests, returns the results, and shuts down the application.
Snapshot entire applications and share with developer and test engineer team members
www.ravellosystems.com
7
Rapidly prototype new applications based on the enterprise’s specific VMs and application building blocks.
Manage the entire application infrastructure as code and version it in the enterprise standard source control.
System Requirements
Browsers: Google Chrome, Firefox, Internet Explorer 10 (or above), or Safari
Operating Systems:
Import Tool: Windows XP, Windows 7, Windows 8, Ubuntu 12.04, OS X 10.7 (Lion), OS X 10.8 (Mountain Lion) Guest VMs: Ubunto 10.2, 12.4, 12.10; CentOS 6.0, 6.1, 6.2; RHEL 5.8, 5.9, 6.0, 6.1, 6.2; openSUSE 12.3; WIN 2003 Server R2; WIN 2008 Server R2; WIN 2012 Server R2
Supported virtualization versions:
ESX 4.1, ESX 5.0, ESX 5.1
KVM
Xen (contact us for details)
Supported devices:
Network: e1000, vmxnet3, vmxnet, virtio
Disk: ide, LSI Logic SAS, LSI Logic Parallel, pvscsi, virtio
Supported clouds: Amazon
HP
Note: Additional clouds will be supported in future releases.
Concepts and Terms Familiarity with the use of these terms in the Ravello Service will assist you in working with our product:
Application design: A set of definitions that describe an application, including virtual machine images, supplied and required service interfaces, and connectivity, as applicable.
www.ravellosystems.com
8
Application: Any set of virtual machines, network and storage devices and their configuration that you want to make available to users. In Ravello, an application also refers to an instance of an application that can be publi shed or that is already running on the cloud. Multiple instances (or copies) of the same application can run at the same time.
Blueprint: A blueprint is a self-contained set of definitions that describe your application, and which can be used to create instances and deploy them on the cloud. A blueprint comprises a snapshot of an application instance and is created from an application design. The same blueprint can be used multiple times, however it cannot be edited.
Key Pairs: When working with generic or public VM templates, you can connect to VMs using predefined SSH key pairs. Key pairs are managed on the Library > Key Pairs page, however you can also add or import key pairs on-the-fly while creating a new application that is based on a public VM. Similarly, you can access key pair functionality from the General tab of the Details pane when a public VM is selected (for applications or blueprints).
Publishing: Publishing is the process of deploying the application in a cloud environment. Publishing the application instance creates multiple virtual machines in the cloud and defines the network overlay, or if changes are made to the instance design, implements those changes on a running instance.
Ravello Repo: A portal where Ravello users can share their blueprints, VMs, and disk images with others.
Service: The interface on the virtual machine that exposes a service on a specific port and provides an entry point for accessing the applications/software that are installed on the virtual machine.
Sharing: A process whereby Ravello users can share library items (blueprints, VM images, or disk images) with users in other organizations or on the Ravello Repo portal. Sharing enables others to view and create copies of an item. Those copies can then be edited to suit the needs of other organizations. If you make changes to the shared item in your library, they are automatically reflected in the version that is visible to other users. (If users make changes to their own copies of the item, these changes do not affect the item in your library in any way.)
www.ravellosystems.com
9
Virtual machine image: A virtual machine image represents the definition of a virtual machine and hard disks, designed to run on a virtualization platform.
Typical Workflow In this version, you can create and publish an application instance according to t he following suggested workflow:
Install the Upload Image Tool
Upload virtual machines images (optional)
Create an application instance
1
(Optional) Install the Ravello Upload Image Tool
2
(Optional) Upload your virtual machine (VM) images from VMware vCenter
3
Create an application using an image provided by Ravello or using an uploaded image
4
Design the application
5
Publish the application instance in a public cloud
In addition, Ravello enables you to start, stop, and restart your applications, as well as update your them, and save the application design as a blueprint.
Design the application instance
You can also create and publish an application based on a blueprint, and view, start and restart specific VMs in a published application.
Publish application instances
www.ravellosystems.com
10
Ravello User Interface The Ravello user interface can be accessed using a standard web browser. To access Ravello, browse to the Ravello web page and enter your login credentials.
Navigation Pane The navigation pane enables access to each of the system modules:
Applications: Lists the existing applications, and enables you to create and manage your application instances.
Library: Lists the available VMs, blueprints, disk images, key pairs, and elastic IP addresses.
Admin: Lists the users authorized to use the system and enables Admin users to add users, define permissions groups and ephemeral access, view private clouds, usage information, and logs.
The Learn link enables you to view a Quick Tour of the application and guided flows for the most common operations. The navigation pane also includes shortcuts to recently opened applications and blueprints, when applicable. www.ravellosystems.com
11
Title Bar The following links appear at the top of the application at all times:
Upgrade: Enables you to upgrade and register your account at Ravello. For details, see Upgrade Your Account.
Ravello Repo: Displays the Ravello Repo portal, where you can share VMs and disk images with other Ravello users.
Help & Support: Opens the Ravello Systems Support page.
Logged on account: Displays the name of the logged on user. Click to access the following options:
Change Password: Enables you to change your password.
Log out: Enables you to securely exit the application.
Details Pane The properties of a selected component are displayed in the Details pane on the right side of the user interface. Depending on the component type, the properties may be displayed in a series of tabs.
www.ravellosystems.com
12
Applications Module You can design, deploy and manage your applications from the Applications page.
The Applications page lists the applications instances created, and indicates the aggregated status of their VMs. From this page you can create application instances and manage existing ones. For details, see Applications. Tip: You can filter the list in any tab by entering a partial or full string in the Filter field. Click an application name to display its properties. The name of the application appears at the top of the page as shown in this example:
.
Library Module The Library module includes these libraries:
Blueprints: This page lists all of your Blueprints. A blueprint is a kind of application template. You can use blueprints to create multiple application instances.
VMs: The first time you open the VMs library page, it lists only the predefined (vanilla) set of virtual machine images provided by Ravello. If you have already installed and used the VM Uploader Tool, this list includes any images you have uploaded into Ravello.
Disk Images: This is the central repository of reusable disk images. You can import an ISO file or save a disk image from an existing VM.
www.ravellosystems.com
13
Elastic IP Addresses: This is the central repository of reusable Elastic IP addresses. An Elastic IP is a static IP address assigned to a VM. For details, see Configure Elastic IP Addressing.
Key Pairs: This is the central repository of reusable Key Pairs. Key Pairs are the secured and recommended way to access a VM without the use of a password. For details, see Key Pair Assignment.
To open a library, select Library from the navigation pane and then select the specific library.
Virtual Machines Ravello service is provided with a set of predefined Virtual Machine (VM) images. In addition, you can import VMs into the service using the VM Import Tool. T he imported VMs are managed on the Library > VMs page and are used to create application instances. You can import VM images as a separate action or you can import them in the course of creating an application instance.
Install the VM Import Tool Before you can import your own machine images, you need to download and install the VM Import Tool. You can use the VM Import Tool to:
Extract and upload VMs from vCenter or directly from your ESX server.
Upload VMs from an OVF file or pre-exported Ravello Export file from your laptop or desktop.
Upload a single disk image (ISO, VMDK, QCOW) or create a new VM by uploading existing disk files
The VM Import Tool tool can be used in two ways:
From within the Ravello user interface (UI VM Import Tool)
From the CLI, which allows you to import your VMs offline and automate the import process.
www.ravellosystems.com
14
Install the GUI VM Import Tool To install the VM Import Tool in the UI: 1 On the Library > Disk Images page, click Import Disk Image. If the Import Tool has not yet been installed, the following webpage is displayed.
2 Specify the operating system type. 3 Select Download GUI VM Import Tool. This allows you to import VMs from within the Ravello user interface. 4 Complete the installation as follows:
For a Windows operating system, follow the on-screen instructions to download and install the utility. For a Mac operating system, double-click the downloaded file, ravello_mac.dmg , and drag it into the installation folder. For a Linux operating system, download and extract the installation file, ravello_linux.tar.gz . This creates the Ravello folder. Run the Ravello\installer.sh file to install the utility. If a dependency is missing, follow the on-screen instructions to install the missing dependency.
Install the Ravello CLI on Windows Platforms To install the CLI on a Windows platform: 1 On the Library > Disk Images page, click Import Disk Image. If the Import Tool has not yet been installed, the Download VM Import Tool window is displayed. 2 In the Download VM Import Tool window, select Windows from the OS list.
www.ravellosystems.com
15
3
Select Download CLI VM Import Tool.
4 In the popup dialog box, select Save File and click OK. The install file is downloaded. 5 Open the Downloads folder, and extract the zip file into a folder with the same name. 6 Open the Windows command prompt, then navigate to the unzipped folder. 7 Run the .exe file to perform the installation. Note: If a problem occurs, follow the instructions contained in the README file to install the CLI using a python script. Install the Ravello CLI on Linux/Mac Platforms To install the CLI on a Linux or Mac platform: 1 On the Library > Disk Images page, click Import Disk Image. If the Import Tool has not yet been installed, the Download VM Import Tool window is displayed. 2 In the Download VM Import Tool window, select Linux or Mac from the OS list. 3
Select Download CLI VM Import Tool.
4 In the popup dialog box, select Save File and click OK. The installation file is downloaded. 5 Open the terminal. 6 Open the Downloads folder, and extract the zip file into a folder with the same name. 7 Run the command: ./install.sh
Import VM Images The first stage in preparing an application for deployment is to import your VMs. Note: You can also import a VM on-the-fly when creating an application. You can import VMs as described in the following sections:
Extract and Upload VMs from vCenter or vSphere directly from ESX server
Upload a VM from a File
Create a VM by Uploading Existing Disk Files
Upload a Single Disk Image
www.ravellosystems.com
16
Import VMs using the CLI
Imported VMs are automatically added to the Ravello VM Library with an initial status of Pending verification. An imported VM or disk image can’t be used in an application before its configuration is verified. See Verify Imported VMs. Note: Before you can import VMs using the Ravello VM Import Tool, you need to install it. Extract and Upload VMs from vCenter or vSphere If your VM is running on a vCenter or vSphere, you can extract it directly from its location and upload it to your Ravello account. This process has no impact on the source VM. Note: You must stop the VMs before extracting them. To extract and upload VMs from vCenter or an ESX server: 1 On the Library > Disk Images page, click Import Disk Image. 2 When prompted, enter the password you use to log on to Ravello. The Ravello VM Import Tool main page opens, listing the VMs already imported and their status.
www.ravellosystems.com
17
3
Click Upload to import additional VMs.
4 Select Extract and upload directly from vCenter or vSphere, and click Next.
www.ravellosystems.com
18
5 Enter the vCenter or an ESX IP address or host name, together with the necessary login credentials, and then click Next. Note: If you do not know the credentials, contact your System Administrator for assistance.
Note: The top level of the hierarchy displayed varies according to whether you connect to a vCenter or a an ESX server. 6 On the Select a VM page, drill down to locate and select the VM to extract.
www.ravellosystems.com
19
7 (Optional) If you prefer to extract the VM now but upload it later, select Export only and click Choose folder to specify the location where you want to save the extracted VM. Note: You can upload the VM later by selecting Upload a VM from OVF file or Ravello Export file in the Ravello VM Import Tool. 8 Click Upload. The VM is added on the VM Import Tool main page. The progress of the upload process is indicated for each VM. Upload a VM from a File You can upload a VM from an OVF file or Ravello export file. To upload a VM from a file: 1 On the Library > VMs page, click Import VM. 2 When prompted, enter the password you use to log on to Ravello. The Ravello VM Import Tool main page opens, listing the VMs already imported and their status.
www.ravellosystems.com
20
3
Click Upload to import additional VMs.
4 Select Upload a VM from OVF file or Ravello Export file, and click Next.
www.ravellosystems.com
21
5 Select the file to upload and click Upload. The VM is added on the VM Import Tool main page. The progress of the upload process is indicated for each VM. Create a VM by Uploading Existing Disk Files You can create a VM by uploading existing disk files in these formats: VMDK and QCOW. To create a VM by uploading disk files: 1 On the Library > Disk Images page, click Import Disk Image. 2 When prompted, enter the password you use to log on to Ravello. The Ravello VM Import Tool main page opens, listing the VMs already imported and their status. 3
Click Upload to import additional VMs.
www.ravellosystems.com
22
4 Select Create a new VM by uploading existing data files, and click Next.
5 Locate the file to upload as follows:
In the Folder field, enter the path to the file to upload.
From the Type dropdown list, select the type of file,
(Optional) Filter the list of available files by entering search criteria in the Filter field.
6 Select the file to upload and click for additional files as required.
to move it to the Selected Files list. Repeat
7 In the VM name field, assign a name to the new VM. 8 Click Upload. The VM is added on the VM Import Tool main page. The progress of the upload process is indicated for each VM.
www.ravellosystems.com
23
Upload a Single Disk Image You can upload a single disk image in ISO, VMDK, or QCOW format. To upload a disk image: 1 On the Library > Disk Images page, click Import Disk Image. 2 When prompted, enter the password you use to log on to Ravello. The Ravello VM Import Tool main page opens, listing the VMs already imported and their status. 3
Click Upload to import additional VMs.
4 Select Upload a single disk image, and click Next. 5 Locate the file to upload as follows:
In the Folder field, enter the path to the file to upload.
From the Type dropdown list, select the type of file (OVF or Ravello Export File).
(Optional) Filter the list of available files by entering search criteria in the Filter field.
www.ravellosystems.com
24
6 Select the file to upload and click Upload. The VM is added on the VM Import Tool main page. The progress of the upload process is indicated for each VM. 7 When prompted, enter the password you use to log on to Ravello. 8 In the Browse for VM template file dialog box, select the virtual image machine data file (.vmx), and then click OK. 9 In the General tab, enter or edit the following image properties: Parameter
Description
Name
The name of the virtual machine
Description
A brief description of the virtual machine
10 In the System tab, enter or edit the following image properties: Parameter
Description
# CPUs
The number of CPUs on the virtual machine
Mem Size
The size of the virtual machine memory
Platform
The virtual machine platform
www.ravellosystems.com
25
11 If MAC address information is not included in the VMX file, enter it manually in the Networks tab (it should match the MAC address of your NIC).
12 (Optional) Click Add to define a new NIC. A blank entry is added.
Define the NIC name, its MAC address, and device type. (Optional) If it is the first NIC defined for the VM and you want to enable inbound access, click Add external service. For details on configuring an elastic IP address, see Configure Elastic IP Addressing. (Optional) Click the Advanced link to configure additional IP addresses and the network connection mode (Access or Trunk).
13 (Optional) Define the supported and required service interfaces in the Services tab. The service interfaces indicate how the VM is used, and which IP addresses and ports it exposes. You can also define external services, meaning that they can be accessed from outside your network.
To add a supplied interface, click + Add New in the Supplied Services area. A blank entry is added to the Supplied Services list. Configure the service properties as required. Repeat for additional service interfaces as required.
Note: Although it is recommended that you define the service interfaces prior to completing the upload process, you can add or edit the service interfaces in the instance design as well.
www.ravellosystems.com
26
14 (Optional) If the VM configuration management properties were not preconfigured, and Chef configuration management is enabled for the VM, you can configure the Chef settings in the General tab. For details, see Configuration Management. 15 Click Upload. The import process starts and a progress bar indicates its status. The image is added to the list of images in the Library page. When the upload process is complete, the image status changes to Done. While the import process is in progress, you can only delete the VM being imported. Import VMs using the CLI If you have installed the CLI VM Uploader, you can use the CLI to upload VMs into Ravello. To upload VMs using the CLI: 1 In the CLI, type ravello upload -- disk_file = < path to the VM image> -u
[email protected] --name
2 When prompted, type your password. 3 When the summary appears, verify the information that it contains, and type Yes. The upload is initialized. Verify Imported VMs Imported VMs are automatically added to the Ravello VM Library with an initial status of Pending verification. An imported VM cannot be used in an application before its configuration is verified. To verify VM image properties: 1 On the Library >VMs page, select the VM image. The VM properties are displayed in a series of tabs in the Details pane. 2 Review the VM properties in each of the tabs and click Save. The status of the VM in the Library changes from Pending verification to Ready.
www.ravellosystems.com
27
View VM Image Properties You can view additional details on a specific VM image on the Library > VMs page. When you select a VM image in the list, its expanded properties are displayed in read-only format. To view the image properties:
Select the VM image in the Library page. The VM properties are displayed in a series of tabs in the Details pane.
Edit VM Images You can edit the general properties of an image, for example, when l ess memory or computing power is required for testing purposes. To edit a virtual machine image: 1 On the Library > VMs page, select the image you want to edit. The VM properties are displayed in a series of tabs in the details pane. 2 Enter or edit the VM properties and click Save. Configure Elastic IP Addressing Elastic IP addressing allows a user to assign a permanent IP address to a specific network interface of a VM. Whereas a Public IP address might change when a VM is stopped and then restarted, an Elastic IP address remains the same as long as it i s assigned to a network interface. Each organization has a "repository" of elastic IP addresses, to which IP addresses can be added and removed. When an elastic IP address is in use, it appears as locked in this repository. If a VM or an application is deleted, the previously used elastic IP addresses are freed and become available for use.
www.ravellosystems.com
28
To configure elastic IP addressing: 1 In the Details pane, select the Networks tab.
2 In the External Access area, select Elastic IP. 3 Click Select to open the Elastic IP Addresses page.
4 Select an existing IP address or click Create Elastic IP Address to add an IP address to the repository. 5 In the Network tab, click Save.
www.ravellosystems.com
29
Upload ISO Files You can upload an ISO file with the GUI or CLI i mport tool. The ISO file can then be used to set up a CD-ROM image. Upload an ISO file with GUI import tool To upload an ISO file from the GUI: 1 Make sure that the most updated GUI import tool is installed on your machine. Note: To download the tool, click Download VM Import Tool on the Library page. 2
Select Library > Disk Images.
By default, this page lists all of your disk images (i.e., My Images list). 3 Click Import Disk Image. If needed, allow the loading of insecure content by your browser. 4 When prompted, enter your Ravello password. 5 In the Browse for VM Template File dialog box, browse to and select the ISO file. 6 Click the Import/Read button.
www.ravellosystems.com
30
Upload an ISO file with the CLI import tool To upload an ISO file from the CLI: 1 Make sure that the most updated CLI import tool is installed on your machine. Note: To download the tool, click Download VM Import Tool on the Library page. 2 Run the following command: ravello import-disk -u [email protected] ~/disk.iso
3 For detailed help, run ravello import-disk -h
www.ravellosystems.com
31
Use an ISO file as a CD ROM in your Ravello application To use an ISO file as a CD-ROM: 1 On the application canvas, drag the VM onto the workspace (or use any unpublished VM). 2 In the Details pane, select Disks.
3 Click Add, then select Add CD-ROM. A blank entry is added to the Disks list.
www.ravellosystems.com
32
4 Click Browse. The Disk Images page is displayed.
5 Select the previously uploaded ISO image, then click Select. 6 Click Save in the Details pane.
Delete Virtual Machine Images You can delete images that are no longer required. The deleted images will no longer be available to add to application instances. Note: Deleting an image from the Library does not affect any application instances or blueprints already created using that image. To delete a virtual machine image: 1 On the Library > VMs page, select the image you want to delete, then click Delete. 2 When prompted for confirmation, click Yes.
Save VM to Library You can save a VM that is included in your application design to the library for future use. The saved VM is based on a snapshot and will have the same properties as the currently selected VM.
www.ravellosystems.com
33
To add a VM to your VM library: 1 In the Application design workspace, select the VM and click More > Save to Library. If the VM is running, the following Save to Library dialog box is displayed.
(If the VM is not running, skip ahead to step 3). 2 To take a snapshot without shutting down the VM, select No Shutdown, OR To shut down the VM before taking the snapshot, select Shutdown first. The VM will be restarted after the snapshot.
3 Enter a name for the VM and click OK. The VM is added to the library.
www.ravellosystems.com
34
Configuration Management The Chef Server configuration tool can help you to more efficiently configure your VMs. Note: Chef configuration management can only be applied to vanilla VMs that support cloudinit, Chef settings in the VM are automatically retained by any blueprint created from it , and by any applications created from those blueprints. To enable Chef configuration management: 1 On the Application page, on the Canvas tab or VMs tab, select the VM and click Application Configuration.
2 Select Enable Chef for this application. 3 From the Chef Server dropdown list, select the server or click server.
to add a Chef
4 Leave the default environment setting, or change as needed. 5 Click Save. 6 On the Application page, on the Canvas tab or VMs tab to display the VM properties in the details pane. 7 In the General tab, under Configuration Management, set these settings: Select Cloud Init is installed on this VM to configure the management
feature. Select Using Chef to enable Chef configuration management.
www.ravellosystems.com
35
In the Run List field, enter the roles and recipes to run when the VM starts the
In the User Data Script field, enter the script to run during the Cloud Init process when the VM starts. The Node Name is automatically assigned when the VM i s published. The name is in the format ., where any special characters in the source names are replaced by hyphens (-).
Share a VM Sharing a VM enables others to view and create copies of the VM, which can then be edited to suit the needs of other organizations. If you make changes to the shared VM in your library, they are automatically reflected in the version that is visible to other users. (If users make changes to their own copies of the item, these changes do not affect the VM in your library in any way.) You can share VMs with users in other organizations or on the Ravello Repo portal. Note: Sharing permissions must be defined in the user’s permissions group. If you are not authorized to share VMs, contact your system administrator. Important: Make sure that the VM does not contain any confidential or proprietary information before sharing it. Share a VM with a User in Another Organization You can share a VM with a user from another organization only. Note: To allow a user from your own organization to view and use a library item, they must be assigned to permissions groups where the viewing of shared items is enabled. Contact your Ravello administrator for additional details. Important: Make sure that the VM does not contain any confidential or proprietary information before sharing it. To share a VM with a specific user: 1 In the Library > VMs page, select the VM you want to share, then do one of the following: Click Share > Manage sharing, and click Another Organization in the
Manage VM Sharing dialog box. Click Share > Share with Other Users.
www.ravellosystems.com
36
The following dialog box is displayed.
2 (Optional) Click Review/edit library VM documentation to update the description of the VM that will be visible to others. 3 In the Share with Users field, enter the email address of the user with whom you want to share your VM. 4 If you have not already done so, read the Terms of Service and Additional Terms of Service, then select I accept. 5 Click Share. Share a VM on Ravello Repo You must have a public profile before you can share library items on Ravello Repo. For details on setting up your profile, refer to Set Up Your Public Profile. To share a VM on Ravello Repo: 1 In the Library > VMs page, select the VM you want to share, then do one of the following: Click Share > Manage sharing, and click Ravello Repo in the Manage
VM Sharing dialog box. www.ravellosystems.com
37
Click Share > Share Publicly on Ravello Repo.
The following dialog box is displayed.
2 In the Step 1: Short description field, enter a brief description of the VM (maximum 160 characters).This description will appear on the front page of Ravello Repo. Then click Next.
www.ravellosystems.com
38
3 Click Review/edit Library VM Documentation to update the documentation section of the VM and provide useful information to other Ravello users. The documentation provided is important to improving the usability of shared items. After updating the documentation, click Next. Note: The documentation section is written in a “markdown” editor. If there is no documentation attached to the VM when you click Next, you are prompted to add it now.
If you do not wish to do so, click Continue Anyway. The following dialog box is displayed.
4 If you have not already done so, read the Terms of Service and Additional Terms of Service, then select I accept. 5 Click Share. The VM is shared on the Ravello Repo portal.
www.ravellosystems.com
39
View/Edit a Shared VM You can view any VM that has been shared with you and make a copy for your own use. You can then modify the VM to meet the specific needs of your organization. To view/edit a shared VM: 1 In the Library > VMs page, click Shared with me to view a list of the VMs shared with you. (This list remains empty until a VM has been shared with you.)
2 To make an editable copy for your own use, click Actions > Copy to My VMs.
3 Enter a new name for the VM and click Copy. The VM is added to your My VMs list.
Share a Disk Image Sharing a disk image enables others to view and create copies of the Disk Image, which can then be edited to suit the needs of other organizations. If you make changes to the shared disk image in your library, they are automatically reflected in
www.ravellosystems.com
40
the version that is visible to other users. (If users make changes to their own copies of the item, these changes do not affect the disk image in your library in any way.) You can share disk images with users in other organizations or on the Ravello Repo portal. Note: Sharing permissions must be defined in the user’s permissions group. If you are not authorized to share disk i mages, contact your system administrator. Share a Disk Image with a User in Another Organization You can share a Disk Image with a user from another organization only. Note: To allow a user from your own organization to view and use a library item, they must be assigned to permissions groups where the viewing of shared items is enabled. Contact your Ravello administrator for additional details. Important: Make sure that the disk image does not contain any confidential or proprietary information before sharing it. To share a disk image with a specific user: 1 In the Library > Disk Images page, select the Disk Image you want to share, then do one of the following: Click Share > Manage sharing, and click Another Organization in the
Manage Disk Image Sharing dialog box. Click Share > Share with Other Users.
The following dialog box is displayed.
www.ravellosystems.com
41
2 (Optional) Click Review/edit disk image documentation to update the description of the disk image that will be visible to others. 3 In the Share with Users field, enter the email address of the user with whom you want to share your disk image. 4 If you have not already done so, read the Terms of Service and Additional Terms of Service, then select I accept. 5 Click Share. Share a Disk Image on Ravello Repo You must have a public profile before you can share library items on Ravello Repo. For details on setting up your profile, refer to Set Up Your Public Profile. To share a disk image on Ravello Repo: 1 In the Library > Disk Images page, select the disk image you want to share, then do one of the following: Click Share > Manage sharing, and click Ravello Repo in the Manage
Disk Image Sharing dialog box. Click Share > Share Publicly on Ravello Repo.
www.ravellosystems.com
42
The following dialog box is displayed.
2 In the Step 1: Short description field, enter a brief description of the disk image (maximum 160 characters).This description will appear on the front page of Ravello Repo. Then click Next.
www.ravellosystems.com
43
3 Click Review/edit Disk Image Documentation to update the documentation section of the disk image and provide useful information to the other Ravello users. The documentation provided is important to improving the usability of shared items. After updating the documentation, click Next. Note: The documentation section is written in a “markdown” editor. If there is no documentation attached to the disk image when you click Next, you are prompted to add it now. If you do not wish to do so, click Continue Anyway. The following dialog box is displayed.
4 Verify that the disk image does not contain any confidential or proprietary information before sharing it, then click Share. The disk image is shared on the Ravello Repo portal.
View/Edit a Shared Disk Image You can view any disk image that has been shared with you and make a copy for your own use. You can then modify the disk image to meet the specific needs of your organization. To view/edit a shared disk image: 1 In the Library > Disk Images page, click Shared with me to view a list of the disk images shared with you. (This list remains empty until a disk image has been shared with you.)
www.ravellosystems.com
44
2 To make an editable copy for your own use, click Actions > Copy to My Disk Images.
3 Enter a new name for the disk image and click Copy. The disk image is added to your My Disk Images list.
www.ravellosystems.com
45
Applications Applications are managed from Applications page. The Applications page lists the application instances created in Ravello and running on the cloud, together with the status of their vir tual machines.
The following details are displayed for each instance: Parameter
Description
Status
An icon indicating the status of the application: Draft Running Stopped Error
Name
The name of the instance.
Creation Date
The date and time when the instance was created.
Owner
The username of the Ravello user who created the instance.
Cloud
The cloud hosting service (for example, Amazon).
Auto-stop in
The amount of time remaining until the application is automatically stopped, if configured in the publish process (2 hours, 5 hours, 12 hours, 24 hours, or Never).
www.ravellosystems.com
46
You can view additional details on a specific instance, including the status of each VM, by selecting it in the list. For more information, see View Application VM Details. From the Applications page, you can:
Create an Application
Start All Instance VMs
Stop All Instance VMs
Restart All Instance VMs
Delete an Application Instance
Create an Application You can create a new application instance from scratch or based on an existing blueprint. To create an application from scratch: 1 On the Applications page, click Create Application.
2 In the Name field, enter a name for the i nstance. 3 (Optional) In the Description field, enter a brief description. 4 Click Create. A blank design canvas automatically opens. To create an application based on a blueprint: 1 On the Applications page, click Create Application or in the Blueprint design workspace, click Create Application. The Create Application dialog box is displayed.
www.ravellosystems.com
47
2 In the Name field, enter a name for the instance. 3 (Optional) In the Description field, enter a brief description. 4
Select From blueprint, then select the base blueprint from the dropdown list (If you selected Create Application from the blueprint design workspace, the blueprint is selected for you by default.)
5 If you are creating an application based on a public VM, select an existing key pair from the Key Pair dropdown list or click to add a new key pair. For details on generating and importing key pairs, see Key Pair Assignment. 6 In the Publish application section, select Publish later if you do not want to publish the instance now or select Auto-publish upon creation. 7 Click OK. The application instance canvas opens in a new tab automatically.
8 Create the application instance design, as described in Design Canvas.
Publish an Application When you are satisfied with the application design, you are ready to publish it. www.ravellosystems.com
48
Ravello enables you choose a publishing option based on cost optimization or performance optimization. You can view the specific pri cing based on your selections prior to publishing the application. Publishing the application instance moves the application to the cloud. To publish an application: 1 In the Application design tab, click Publish. The Publish Application dialog box is displayed.
2 In the Optimize for area, select Cost or Performance. (The option label appears in orange when selected.) 3 If you select Performance, select the relevant cloud provider and geographic region. 4 In the Set Application Auto-Stop area, configure how long the application runs before it is automatically stopped or select Never to let it r un indefinitely. (The default setting is 2 hours.) 5 (Optional) Click Advanced and select Start all VMs automatically. 6 (Optional) Click Detailed Pricing to view the publishing cost for the selected type of optimization, cloud provider, and region.
www.ravellosystems.com
49
7 Click Publish. When the publish process is complete, the application instance is started. Note: The publish process might take a few minutes.
Auto-Stop Applications The auto-stop feature enables you to configure long the application is run before it is automatically stopped. This eliminates the need to manually stop those applications that you know are required for a limited time. The auto-stop feature is configured as part of the publishing process. The balance of time remaining until the application is automatically stopped appears in the Auto Stop in column on the Applications page.
Stop All Instance VMs If an application instance is not required for the time being, you can temporarily stop the instance virtual machines. Stopping an instance does not remove its configuration; the instance retains all of its settings. Note: If the application instance is never to be used again, it i s recommended that you delete it. To stop all VMs: 1 On the Applications page, select the instance you want to stop , then click Stop. 2 When prompted for confirmation, click Stop. The instance is stopped.
Start All Instance VMs You can start all VMs on an application instance. To start all VMs:
www.ravellosystems.com
50
1 On the Applications page, select the instance you want to start, then click Start. 2 When prompted for confirmation, click Start. The instance is started.
Restart All Instance VMs You can restart all the VMs an application instance. You can restart only an instance that has all of i ts VMs in Started status. Restarting the instance restarts all of its VMs. To restart all instances: 1 On the Applications page, select the instance you want to start, then click Restart. 2 When prompted for confirmation, click Restart. The instance is started.
Edit Application Design You can view and edit an application design, for example, if you need to add another application server or open or reconfigure a service. To view or edit the design: 1 On the Applications page, click the application instance name. The Canvas tab is displayed. 2 Edit the application instance design as required. (For details, see Design Canvas). 3 Click Publish to publish the application for the first time or click Update to apply the changes to a published application, as applicable. Note: The update changes process does not republish the entir e instance, only the relevant changes. In some cases, a published machine will be rebooted as part of the process.
View Application VM Details When you click an application instance name on the Applications page, its Canvas tab is displayed by default.
www.ravellosystems.com
51
To view information on its virtual machines in a table, select the VMs tab. The VMs included in the application instance are listed. Select a VM to view its properties in the Details pane (on the right side of the screen). The VM properties are contained in these tabs in the Details pane. Summary Tab When a VM is selected on the Application page, the Summary tab indicates the name of the VM, its CPU, memory, total storage space, and network connections. To edit the values of a parameter, click the corresponding link. Gener al Tab When a VM is selected on the Application page, the following details are displayed on the General tab. Option
Description
General Properties Name
The name of the virtual machine.
Description
A brief description of the virtual machine.
Created
The date/time when the virtual machine was created.
Hostnames
The name of the host server.
Key Pair
The key pair assigned to the VM. Key pair assignment is applicable for VMs created based on generic of public VM templates.
Configuration Management Cloud Init is installed on this VM
Enables implementation of the Chef configuration management feature.
Application Configuration User Data Script
The roles and recipes to run when the VM starts.
System Tab When a VM is selected on the Application page, the following details are displayed on the System tab. Option
Description
System Properties
www.ravellosystems.com
52
Option
Description
# CPUs
The number of CPUs on the virtual machine.
Mem Size
The size of the virtual machine memory.
Platform
The virtual machine platform:
ESX: First generation ESXi virtual hardware, PCI based V2-ESX: Second generation ESXi virtual hardware, PCIexpress based Default: Common settings for KVM (QEMU/libvirt) virtual hardware Other: Custom platform definitions
Disks Tab When a VM is selected on the Application page, the following details are displayed on the Disks tab. Option
Description
Disk
The name of the disk.
Disk Size
The size of the disk.
Controller
The disk controller type (for example, IDI or PVSCSI).
Boot
The boot status. If you do not want to book from the disk, select Skip CD boot.
CD
The name of the CD-ROM image.
Image
The name of the image to be used to create the CD-ROM image.
Controller
The image controller type.
Network Tab When a VM is selected on the Application page, the following details are displayed on the Network tab. Option
Description
Name
The name of the network connection.
MAC
The MAC address of the network connection.
Auto MAC
The MAC address is automatically assigned by the Ravello service.
Device Type
The type of network connection.
www.ravellosystems.com
53
Option
Description
IP Configuration
The type of IP address for the network configuration (DHCP or Static).
Reserved IP
The IP address reserved for the network connection.
External Access Inbound
Enables inbound access to virtual machine through the NIC.
Outbound
Enables the virtual machine to access external resource through the NIC.
Advanced Mode
The network connection mode (Access or Trunk).
VLAN Tag
The VLAN tag of the network interface.
Additional IP Addresses Static IP address
The static IP address of the network interface.
Netmask
The netmask of the static IP address.
Gateway
The gateway address. (This should be a fake IP address in the same range as the main address.)
Services Tab The service interfaces indicate how the VM is used, and which IP addresses and ports it exposes. When a VM is selected on the Application page, the following details are displayed on the Services tab. Option
Description
Supplied Services Name
The name of the supplied service.
Connection type
The type of connection used.
Protocol
The protocol used by the service interface.
Port
The port used by the service interface.
Advanced > Enable SNAT
Enables source NAT, which replaces the source IP address with a local IP address.
Required Services Name
The name of the required service.
Connection type
The type of connection used.
www.ravellosystems.com
54
Manage Application VMs You can start, stop, restart, and recover one or more of the virt ual machines in the selected instance. Start a VM You can start a stopped VM. To start a VM: 1 In the VMs tab, select the VM you want to start and click Start. Alternatively, in the published instance design, select the virtual machine object and click Start VM. 2 When prompted for confirmation, click Start. The VM is started. Stop a VM You can temporarily stop a VM. To stop a VM: 1 In the VMs tab, select the VM you want to stop and click Stop. Alternatively, in the published instance design, select the virtual machine object and click Stop. 2 When prompted for confirmation, click Stop. The VM is stopped. Restart a VM You can restart only a VM that has Started as its status. To restart a VM: 1 In the VMs tab, select the VM you want to restart and click Restart. Alternatively, in the published instance design, select the virtual machine object and click Restart. 2 When prompted for confirmation, click Restart. The VM is restarted.
www.ravellosystems.com
55
Recover a VM Recovering a VM can be useful when unknown issues occur, for example, problems with cloud providers (such as a machine that is inexplicably terminated). To recover a VM: 1 In the VMs tab or in the published instance design, select the VM you want to recover and click More > Recover . The VM Recovery dialog box is displayed. 2 Select one of the following options:
Repair : Repairs and restarts the VM with its current settings.
Republish: The VM will revert to the most recent snapshot. All content on the VM will be replaced. You must select I understand the risk in order to enable this option.
Start and Stop Application VMs in Stages In an application with multiple VMs, you can configure the VMs to start and stop in stages rather than all at once. Each stage can include multiple VMs. To start/stop VMs in stages: 1 In the Settings tab, under Start/Stop Stages, click See Full List. The Settings > Startup and Shutdown Stages page is displayed.
An unstaged VM is a VM that has not been assigned to a stage. The number of unstaged VMs is listed together with the number of stages defined for the application. 2 To create a stage: Click + Create Stage.
In the New Stage dialog box, enter the name of the stage and specify the number of minutes to wait after starting this stage before starting VMs in the next stage.
Click Create.
www.ravellosystems.com
56
Repeat to create additional stages, as required.
The stages are listed in the table. The following example shows that two stages have been defined for this application, with a 10 minute delay configured between the first stage and the next stage. No VMs have been assigned to either stage. The application has three unstaged VMs.
3 To assign a VM to a stage: Click Unstaged VMs Pool to view the list of VMs not yet assigned to a
stage.
Select the VM, then select the stage you want to assign it to from the Move to > dropdown menu.
Repeat for additional VMs as required. (Each VM can be assigned to only one stage.)
4 In the Shutdown area (at the bottom of the page), select one of these options to define the shutdown order:
All at Once, regardless of stages.
Reverse Startup Order , the first stage started is the last stage shut down.
5 Click Save.
Open the VM Console If a virtual machine is running, you can access the machine console using VNC. To open the machine console:
In the VMs tab or in the published instance design, select the VM you want to connect to and click Console to open the console. The Ravello VNC page opens in the web browser.
www.ravellosystems.com
57
Delete an Application You can permanently delete an application that i s no longer required. To delete an application: 1 On the Applications page, select the application you want to delete, then click Delete. 2 When prompted for confirmation, click Yes. The application is deleted.
Design Canvas The Ravello Canvas enables you to create and edit your application instance designs. When you open an application or blueprint, a Canvas tab is added to the Application page. The name of the page reflects the name of the application instance or blueprint currently displayed, for example, Application: MyApp23.
Design Options and Indicators These options and indicators appear in the top row of the Canvas tab. Option Add VMs
Description Opens a menu of available VMs. You can select from the list or import a VM to include in your application.
Save as Blueprint
Saves a draft or published application instance design as a blueprint, which can then be used for additional instance creation in the future.
Publish/ Update
Publishes the application instance to the cloud. When a published instance is selected, the Update option publishes any unpublished changes made in the VM.
Auto stop in
The time remaining until the application will be stopped. If an application has been stopped by the Auto-Stop feature, Stopped appears.
Published in
The cloud provider and location where the application is published, if applicable.
Application status
The current status of the application (Not Published, Stopped, Running).
Cloud errors
Indicates the number of cloud errors for this application, if applicable. Click the link to view a list of affected VMs.
www.ravellosystems.com
58
The toolbar at the bottom of the Canvas tab includes the following options: Option
Description
Save status
Indicates whether the current design has been saved or is in the process of saving.
Zoom In
Zooms in on the view (increases magnification).
Zoom Out
Zooms out of view (decreases magnification).
Select
Enables selection of specific objects on the blueprint.
Pan
Enables you to drag the workspace to view a different portion of the blueprint
1:1
Cancels any zooming and returns the view to its default size.
Fit
Adjusts the diagram to fit on screen.
VM Library The VM Library (Library > VMs) lists all of the virtual machine images that have been loaded into the service and are available to include in your design. If the image you require does not appear in the list, you can click Import VM to add it to the library, making it available for use.
Design Objects The key design objects that can be included in your application instance design are virtual machine image objects, service interface objects, connections, and groups.
www.ravellosystems.com
59
The design objects are represented by the following icons: Icon
Description A virtual machine draft (not yet published).
A virtual machine that is running.
A published virtual machine that is in the process of being started, restarted or stopped. A published virtual machine that is stopped.
A published virtual machine that has an error.
A supplied service interface A required service interface
Note: Your design is automatically saved while you work. Add a Group Depending on the complexity of your application design, you might want to organize your design objects into groups. To add a group object: 1 On the Canvas tab, click
and drag the Group option onto the canvas.
2 (Optional) Change the name of the group object in the Group Properties in the details pane. Tip: You can drag and drop the object to any location on the workspace. www.ravellosystems.com
60
Add a Virtual Machine Image You can add a virtual machine to the design, as a separate object, or you can add it to a group object. To add a virtual machine image:
In the design tab, drag an image name from the VM Library onto the workspace. If you want it to be part of a group, drag i t directly onto the group object (the group object outline turns blue when selected).
Tip: When you select a virtual machine image on the workspace, its details appear in the details pane, where you can edit the image properties for this design only. The source image in the library is not modified. Add and Connect Service Interfaces You can manually add supplied and required service interfaces to the virtual machines images in your design to provide entry points for accessing the application functionality. If you know that all of the design objects are part of a network that communicates using DHCP or are on the same subnet with automatic IP address assignment, you do not need to manually create the connection; Ravello creates the network for you. To configure the service interfaces: 1 Select the VM instance on the canvas or on the VMs tab, then select the Services tab in the VM details pane.
www.ravellosystems.com
61
2 Add the necessary service interfaces as follows:
To add a supplied interface, click + Add in the Supplied Services area. A new entry open in the Supplied Services list. Configure the service properties as required.
To add a required interface, click + Add in the Required Services area. A new entry opens in the Required Services list. Configure the service properties as required.
To manually connect a supplied service interface to a required service interface, select one interface, then click and drag the cursor to the second interface. A connecting line is added to the bluAppeprint. Notes: The interfaces must be of different types (supplied and required) and must be located on separate virtual machine image objects. Multiple required interfaces can be connected to a single supplied service. To remove a service, click the corresponding
button.
Edit Service Properties You can edit the properties of both supplied and required services, including the service name, hostname, protocol, ports, and more. To edit the service properties: 1 Select the VM instance on the canvas or on the VMs tab, then select the Services tab in the VM details pane. 2 Edit the service properties as required and click Save.
www.ravellosystems.com
62
Available Actions for Selected VMs The following options are available on the Actions bar at the bottom of the details pane when a virtual machine object is selected:
Stop: Stops the selected VM. For details, see Stop a VM.
Start: Starts the selected VM. For details, see Start a VM.
Restart: Restarts the selected VM. For details, see Restart a VM.
Console: Accesses the machine console using Ravello VNC.
More:
Recover : Recovers the selected VM. For details, see Recover a VM.
Save to Library: Saves the selected VM in the library.
SSH: Uses SSH to connect to the VM. For details, see Using SSH key pairs to connect to VMs.
Power Off : Powers off the selected VM.
Delete: Deletes the selected VM from the application.
Viewing the Network Architecture You can view the network architecture for your application or blueprint on the Network tab of the Application page.
From this tab, you can also: www.ravellosystems.com
63
Manage IP Filters
View DHCP Server Properties
View DNS Properties
View Router Properties
Configure SNAT
Manage IP Filters You can define and enable an IP filter that allows traffic from author ized source IP addresses only. Alternatively, you can disable the IP filter and allow traffic from all IP addresses. To enable the IP filter: 1 In the Network tab of your application design or blueprint, click the IP Filtering
icon. The IP Filter Properties are displayed in the details pane.
2 To allow network traffic from specific IP addresses only, select Is Active. The pane expands to display the Incoming IP Rules. 3 To allow traffic from an IP address, click + Add icon.
www.ravellosystems.com
64
4 Enter the IP address and subnet mask in the designated fields. (These parameters are mandatory). 5 Repeat for additional IP addresses, as required. 6 To remove an authorized source, click the corresponding
button.
7 Click Save.
To disable the IP filter: 1 Click the IP Filtering
icon. The IP Filter Properties are displayed.
2 Clear the Is Active checkbox, and click Save. View DHCP Server Properties You can view the DHCP Server properties of an application or blueprint in the Network tab. To display the router properties, click the DHCP Servers
icon.
The DHCP server properties are displayed in read-only format. View DNS Properties You can view the DNS Server properties of an application or blueprint in the Network tab. To display the DNS Server properties, click the DNS Servers
www.ravellosystems.com
icon.
65
The DNS properties are displayed in read-only format. View Router Properties You can view the router properties of an application or blueprint in the Network tab. To display the router properties, click the Router
icon.
The router properties are displayed in read-only format. Configure SNAT Source NAT (SNAT, patent pending) replaces the source IP address with a local IP address, allowing the user to access a specific port that is open only for the same subnet. SNAT is typically used when an application with VMs has several subnets and a VM doesn’t have access to the internet, but you need to access it for management purposes via RDP or SSH. To configure SNAT: 1 On the Application page, select the VM. 2 In the Details pane, on the Network tab, locate the NIC to which the service will be connected. 3
Select Static IP configuration (DHCP will not work).
4 Enter the IP address and netmask. 5 Enter the Gateway address. (This should be a fake IP address in the same range as the main address. Make sure that the gateway address is not in use.)
www.ravellosystems.com
66
Use of a public IP address is recommended. If you choose port forwarding, use the forwarded port number (usually port 10,000). 6 In the Services tab, add/edit a service: Edit the service name. Select a protocol. Verify the port. Select the IP address you use for the service (as in step 4). Select the External checkbox. Click Advanced, and then select the Enable SNAT checkbox.
7 Click Save. Note: Because SNAT opens a back door to the VM, it is highly recommended to use the VM firewall (Windows or Linux). SNAT replaces the source IP address with the Ravello router IP address, thereby allowing you to connect to a port that is closed for access from an address outside its subnet.
Blueprints A blueprint is a self-contained set of definitions that describe your application, and can be used to create instances and deploy them on the cloud. A blueprint is created from an application design. A blueprint comprises a snapshot of an application instance design, including virtual machine images and their disks, and the service interfaces that enable access to the application functionality. This snapshot reflects the configuration and states of the virtual machines and their disks when the blueprint was created. You can publish multiple application instances based on the same blueprint . For example, QA testers use blueprints to create application instances for t esting purposes. Blueprints cannot be edited. Blueprints are managed in the Blueprints library. To view the Blueprints list, select Library > Blueprints from the navigation pane.
www.ravellosystems.com
67
By default, this page lists all of your blueprints (i.e., My blueprints list).
An icon appears in the first column indicating whether the blueprint is public ( or private (
)
).
If you have shared a blueprint, it is indicated in the share status (
) column.
To view the blueprints that have been shared with you, click Shared with me.
Create a Blueprint Blueprints are created from application instance designs, either draft designs or designs with all VMs running. To create a blueprint: 1 On the Applications page, open the instance based on which you want to create blueprint. 2 (Optional) On the Canvas tab for that instance, edit the design as required. (For details, see Design Canvas) 3
Click Save as Blueprint. If the application is not running, the following dialog box is displayed.
www.ravellosystems.com
68
If the application is running, the following dialog box is displayed.
To take a snapshot without shutting down the VM, select No Shutdown: Take a snapshot now, .... To shut down the VM before taking the snapshot, select Shutdown first. The VM will be restarted after the snapshot.
4 Enter a name for the blueprint and click OK. The blueprint is added to the library. Note: The blueprint capture process might take a few minutes.
View a Blueprint To view a blueprint:
On the Library > Blueprints page, click the blueprint name. The blueprint is displayed on the Canvas tab in read-only format.
www.ravellosystems.com
69
Delete a Blueprint You can delete blueprints that are no longer needed. To delete a blueprint: 1 On the Library > Blueprints page, select the blueprint you want to delete, then click Delete. 2 When prompted for confirmation, click Yes. The blueprint is deleted.
Share a Blueprint Sharing a blueprint enables others to view and create copies of the blueprint, which can then be edited to suit the needs of other organizations. If you make changes to the shared blueprint in your library, they are automatically reflected in the version that is visible to other users. (If users make changes to their own copies of the item, these changes do not affect the blueprint in your library in any way.) You can share blueprints with users in other organizations or on the Ravello Repo portal. Note: Sharing permissions must be defined in the user’s permissions group. If you are not authorized to share blueprints, contact your system administrator. Share a Blueprint with a User in Another Organization You can share a blueprint with a user from another organization only. Note: To allow a user from your own organization to view and use a library item, they must be assigned to permissions groups where the viewing of shared items is enabled. Contact your Ravello administrator for additional details. Important: Make sure that the blueprint does not contain any confidential or proprietary information before sharing it. To share a blueprint with a specific user: 1 In the Library > Blueprints page, select the blueprint you want to share, then do one of the following: Click Share > Manage sharing, and click Another Organization in the
Manage Blueprint Sharing dialog box. Click Share > Share with Others.
www.ravellosystems.com
70
The following dialog box is displayed.
2 (Optional) Click Review/edit blueprint documentation to update the description of the blueprint that will be visible to others. 3 In the Share with Users field, enter the email address of the user with whom you want to share your blueprint. 4 If you have not already done so, read the Terms of Service and Additional Terms of Service, then select I accept. 5 Click Share. Share a Blueprint on Ravello Repo You must have a public profile before you can share library items on Ravello Repo. For details on setting up your profile, refer to Set Up Your Public Profile. To share a blueprint on Ravello Repo: 1 In the Library > Blueprints page, select the blueprint you want to share, then do one of the following: Click Share > Manage sharing, and click Ravello Repo in the Manage
Blueprint Sharing dialog box. Click Share > Share Publicly on Ravello Repo.
www.ravellosystems.com
71
The following dialog box is displayed.
2 In the Step 1: Short description field, enter a brief description of the blueprint (maximum 160 characters).This description will appear on t he front page of Ravello Repo. Then click Next.
3 Click Review/edit Blueprint Documentation to update the documentation section of the blueprint and provide useful information to other Ravello users. The
www.ravellosystems.com
72
documentation provided is important to improving the usability of shared items. After updating the documentation, click Next. Note: The documentation section is written in a “markdown” editor. If there is no documentation attached to the blueprint when you click Next, you are prompted to add it now.
If you do not wish to do so, click Continue Anyway. The following dialog box is displayed.
4 If you have not already done so, read the Terms of Service and Additional Terms of Service, then select I accept. 5 Click Share. The blueprint is shared with on the Ravello Repo portal.
www.ravellosystems.com
73
View/Edit a Shared Blueprint You can view any blueprint that has been shared with you and make a copy for your own use. You can then modify the blueprint to meet the specific needs of your organization. To view/edit a shared blueprint: 1 In the Library > Blueprints page, click Shared with me to view a list of the blueprints shared with you. (This list remains empty until a blueprint has been shared with you.)
2 Click the name of the blueprint to view it on the drawing canvas. 3 To make an editable copy for your own use, click Copy to My Blueprints.
4 Enter a new name for the blueprint and click Copy. The blueprint is added to your My blueprints list. www.ravellosystems.com
74
Additional Functionality Key Pair Assignment When working with generic or public VM templates, you can connect to VMs using predefined SSH key pairs. Ravello enables you to choose between importing or automatically generating key pairs. Whether imported or automatically generated, the public key is stored in Ravello, whereas the private key is stored on the client. Key pairs are managed on the Library > Key Pairs page, however you can also add or import key pairs on-the-fly while creating a new application that is based on a public blueprint. Similarly, you can access key pair functionality from the General tab of the Details pane when a public VM is selected on the canvas (for applications or blueprints). Note: The key pairs generated by Ravello are compatible with Linux and Mac platforms only. Windows not does have a native Windows SSH client. To use these key pairs with Windows, it is necessary to convert the private key from the standard OpenSSH format to PuTTy's proprietary format using the PuTTygen tool. Generate a Key Pair If you are using one of the images or blueprints supplied by Ravello (public images and public blueprints), you need to create or import a key pair in order to SSH into the VM. When you generate a key pair using Ravello, the private key is downloaded as a file. The private key is not saved by Ravello. The public key is saved by Ravello and used when the VM is started.
www.ravellosystems.com
75
To generate a key pair: 1 From the navigation pane, select Library > Key Pairs.
2 On the Library > Key Pairs page, click Create Key Pair . The Key Pairs dialog box is displayed.
3
Select Generate a New Key Pair .
4 Enter a name for this key pair . 5 Click Create. The key pair is added to the Key Pairs list and a li nk to the downloaded private key appears near the bottom of your screen.
www.ravellosystems.com
76
Import a Key Pair When you import a key pair, only the public key is saved by Ravello and used when the VM is started. Note: Key pairs can be imported in Linux/Mac format only. To import a key pair: 1 On the Library > Key Pairs page, click Create Key Pair . The Key Pairs dialog box is displayed. 2 Select Import a Public Key. The dialog box expands to include an additional text box.
3 In the Name field, enter a name for this key pair. 4 In the Public Key box, enter (or copy-paste) the public key of an existing public key. 5 Click Create. The imported key pair is listed in the Key Pairs list.
www.ravellosystems.com
77
Using SSH key pairs to connect to VMs The use of Secure Shell (SSH) gives you the option of connecting to public VMs using key pairs instead of a username and password. If you are using one of the images or blueprints provided by Ravello (public images and public blueprints), you need to generate an SSH key pair to connect in this manner. Key pairs are managed on the Library > Key Pairs page, however you can also add or import key pairs on-the-fly while creating a new application that is based on a public image. Similarly, you can access key pair functionality from the General tab of the VM Editor or the VM Properties pane when the VM is selected on the Canvas (for applications or blueprints). For details, see “How to create a Keypair ”. The key pairs generated by Ravello are compatible with Linux/Mac platforms only. Use SSH key pairs to connect to VMs with Linux/Mac If you are using one of the images or blueprints that supplied by Ravello (public images and public blueprints), you need to create an SSH keypair for it before attempting to connect using SSH. For details, see “How to create a keypair ”. You also need to create an external supplied service on the VM, with port 22 open. For details, see "How to add and connect a service" and "How to edit service properties". To SSH into the VM with Linux/Mac: 1 Open an SSH client. 2 Locate your private key file (for example, ravelloDevKey.pem). The wizard automatically detects the key you used to launch the i nstance. 3
To verify that the key permissions of the private key correct, run this command: chmod 400 ravelloDevKey.pem
4 Connect to your VM using the following command: ssh -i ravelloDevKey.pem root@< EI Pof VM > Use SSH key pairs to connect to VMs with Windows Windows not does have a native Windows SSH client. To use these key pairs with Windows, it is necessary to convert the private key from the standard OpenSSH format to PuTTy's proprietary format using the PuTTygen tool.
www.ravellosystems.com
78
Note: PuTTy and PuTTyGen can be downloaded from http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html To convert keys from OpenSSH (.pem) to PuTTy (.ppk) format 1 In the PuttyGen tool, select File > Load Private Key. 2 Browse to and select the *pem file that contains the key you want to convert, and click Open. Note: By default, PuTTYgen displays only files with extension .ppk. Select All Files from the dropdown list to view all file types. 3 When the PuTTYgen notice appears advising you to select the Save Private Key command to save it in PuTTy’s proprietary format, click OK . 4
Click Save Private Key.
5 When prompted to indicate whether you want to save the key without a passphrase, click Yes. The key is saved in .ppk format and can be used to connect to your VM using PuTTy SSH. To connect to the VM using PuTTy: 1 Verify that you have created an external supplied service on the VM, with port 22 open. For details, see "How to add and connect a service" and "How to edit service properties". 2 From the Windows Start menu, select All Programs > PuTTY > PuTTY 3 In the Host Name field, enter the host name or IP address in the following format: ravello@
www.ravellosystems.com
79
4 In the Category tree, select SSH > Auth.
5 Click Browse to locate and select the PuTTY private key file you generated using PuTTyGen. 6 Click Open. Note: If a security alert is displayed asking if you trust the host you are connecting to, click Yes. 7 In the SSH session window, log in with the required username (if requested). No password is required because the selected public/private key pair is used for authentication.
Add Proxy Settings for Image Upload (Windows environments) When using Windows and working in an environment where a proxy is needed to access the internet, you need to manually configure the proxy settings before you can use the import tool. To add the proxy settings: 1 In the C:\Program Files (x86)\Ravello Systems\VM import utilit y directory, add a config.properties file that contains these lines: [upload] proxy_address = proxy_port =
www.ravellosystems.com
80
2 After saving the file in the specified location, restart the Ravello Import tool service from Administrative Tools > Services. 3 If the proxy uses basic authentication, then you need to add the user and password to the same configuration file: [upload] proxy_address = proxy_port = proxy_username = < proxy user > proxy_password =
Sharing Library Items You can share blueprints, VMs and disk images in your Ravello library with users in other organizations or on the Ravello Repo portal. Sharing an item enables other Ravello users to view and create their own copies of the item, which can then be edited to suit the needs of other organizations. For more information on sharing, see:
Share a VM
Share a Disk Image
Share a Blueprint
Ephemeral Access Ephemeral access allows you to provide limited, time-based access to a specific resource or set of resources to another person, without them being a part of your organization. This option can be advantageous when integrating your own portal on Ravello infrastructure or when you want to provide an external user with temporary access. For exa mple, you can use these tokens to grant your partners limited access to a specific demo environment, without creating a user in your environment. This article describes these aspects of working with Ephemeral Access Tokens
Creating Ephemeral Access Tokens
Managing Tokens
Adding Resources to an Existing Token
Changing the Token Validity
www.ravellosystems.com
81
Note: You must have the appropriate permissions assigned to you in order to create and view ephemeral tokens.
Creating Ephemeral Access Tokens You can create ephemeral access tokens for applications and blueprints. Although the steps below describe the process for creating a token for an application, the process for bluepri nts is basically the same. A token can be used to provide access to one or more resources. More than one token can be created for an application or blueprint. To create an ephemeral ephemeral access token:
1. On the Applications page, select one or more resources, then click More > Grant Ephemeral access.
2. In New Ephemeral Access Token dialog box: a.
Enter a name and description for the token in the designated fields.
b. Select the permissions to grant and the time limit for access. 3. If you selected more than one resource, selected the preferred creation method ( Different token for every application or All applications in a single token). 4. Click Create. The dialog box is refreshed to display the Ravello UI URL and the API token details.
www.ravellosystems.com
82
5. Send the URL to the person(s) to be allowed temporary access.
Managing Tokens You can view a list of all tokens on the Admin > Ephemeral Access Tokens page. Alternatively, you can create and edit tokens from the Applications and Blueprints modules. To view the details for a specific token:
On the Applications page or Blueprints page, select the resource and click More > Show Ephemeral Tokens.
To view/edit the details of a specific token, click the token name.
www.ravellosystems.com
83
All resources associated with the token are li sted.
Adding Resources to an Existing Token You can add permissions for an additional resource to an existing token. To add permissions:
1. On the token details page, click Create Permission . 2. On the Permissions Permissions > Add a Permission Permission page, select the resource type, permitted actions, and filter criteria (equals or is not equal to a specific resource). 3. Click Save.
Changing the Token Val Validity When you create an ephemeral access token, you set the expiration time. time. If, for whatever reason, you need to restrict or terminate that access you can do so at any time. To change the expiration date:
1. On the Applications page or Blueprints page, select the resource and click More > Show Ephemeral Tokens. 2. Click the token name to display the token details page. 3. In the Set Expiration section, set a new expiration date and time, or select Now from the time dropdown list to terminate access immediately. 4. Click Save.
www.ravellosystems.com
84
Admin Module The Admin module includes the following pages:
Users: Lists the users who are authorized to use Ravello, and enables an administrator to invite new users and reset the passwords and permissions of other users. For details, see User Management.
Permissions Groups: Lists the permissions groups for your organization, and enables authorized users to view/edit permissions and assign users to permissions groups. For details, see Permissions Group Management.
Ephemeral Access Tokens: Lists the ephemeral access tokens defined in the system. For details, see Ephemeral Access.
Billing: Lists billing information for your organization by category and by month.
Usage: Displays the status of available resources. For details, see Monitor Resource Usage.
Log: Displays the messages logged by the system. For details, see View the System Log.
User Administration and Permissions Groups The ability of users to perform various actions in the Ravello console depends on the permissions assigned to that user. In Ravello, a user’s permissions are determined by the permissions group to which the user is assigned. Ravello is provided with two predefined permissions groups:
Admin: This user has permissions for all Ravello functionality.
User : The default Ravello user has read only permissions for all resource types.
Because the Ravello console might be used by different individuals in the enterprise for different purposes, Ravello enables the creation of customized permissions groups. When a custom permissions group is created, it does not contain any permissions. The specific permissions must be added manually by the administrator. Different levels of permissions can be added for each resource type in keeping with the needs of your organization and the functionality required by different types of users. For www.ravellosystems.com
85
example, you might want to grant finance department personnel access pricing information and edit payment method details, without gr anting them permissions to manage applications, VMs, and blueprints. If a user is assigned to more than one permissions group, that user inherits the combined permissions of both groups. For example, if one group assigns Read permissions for applications and another allows Read and Create permissions for application, a user that is assigned to both permissions groups can Read and Create applications.
Permissions Group Management A user with appropriate Admin permissions can create and edit permissions groups and assign users to those groups. The existing permissions groups are listed on the Admin > Permissions Groups page. Define Permissions Groups A new permissions group is created without any default permissions. Permissions are granted per resource type. Custom permissions groups allow you to grant specific combinations of permissions to groups of u sers, ranging from highly restricted access to broad-reaching permissions. To define a custom permissions group: 1 On the Admin > Permissions Groups page, click Create Permissions Group. 2 In the Create Permissions Group dialog box, enter a name and short description for the group, then click Create. The Permissions page is displayed.
www.ravellosystems.com
86
The new permissions group does not include any permissions. 3 To add permissions to the group, click Create Permission.
4 From the Resource Type dropdown list, select the resource for which want to add permissions. 5 In the Actions section, select the checkboxes for the permission levels required for the users to be assigned to this permissions group. 6 (Optional) In the Filter area, configure additional criteria for applying permissions to specific resources:
From the Filter dropdown list, select the condition for the filter (OR, AND, or Custom Filter ).
Click Create Criterion, then select the object to be matched, the condition
for a match (Equals or Not Equals), and the partial or full string to be matched. Repeat this step for additional criteria, as required. Note: If a filter is not defined, the permission will apply to all the objects of the resource type. 7 Click Save. A resource type is added to the Permissions page for this group. www.ravellosystems.com
87
8 Repeat steps 4 –8 for additional resource types until all of the necessary permissions have been set. Edit Permissions Groups You can edit the permissions granted to custom permissions groups. Changes in permissions are automatically applied to all users assigned to the permissions group. Note: The predefined Ravello permissions groups cannot be edited. To edit a permissions group: 1 On the Admin > Permissions Groups page, click the name of the permissions group. The Permissions page is displayed.
Note: The number of users assigned to the permissions group appears in the lower left corner. To view the users in this group, cli ck Users. 2 To set permissions for an additional resource type, click Create Permission. Configure the permissions as described in Define Permissions Groups. 3 To edit the existing permissions, select the resource type name. 4 To delete the existing permissions for a resource type, click the corresponding Trash Can icon. Delete Permissions Groups You can delete a custom permissions group. Deleting a custom permissions group does not delete the users assigned to that group. However, users previously assigned only to the deleted group will no longer www.ravellosystems.com
88
have any permissions. For this reason, it is recommended that you first assign those users to a different permissions group and remove them from the group you are deleting. To delete a permissions group: 1 On the Admin > Permissions Groups page, select the permissions group, the click Delete. 2 When prompted for confirmation, click Yes. The permissions group is deleted.
User Management Depending on your permissions, various user management functions may be available from the Admin module. Users are managed from the Admin > Users page. Invite Users If you have admin permissions, you can invite additional persons to use Ravello. To invite a user: 1 On the Admin > Users page, click Invite User . 2 Enter the user ’s name and email address, then click Invite. An invitation is sent to the user. Add User to a Permissions Group It is important to assign the user to the appropriate permissions groups. If a user is not assigned to any permissions group, the user cannot use the product. Users can be assigned more than one permissions group. If a user is assigned to more than one permissions group, that user inherits the combined permissions of both groups. For example, if one group assigns Read permissions for applications and another allows Read and Create permissions for application, a user that is assigned to both permissions groups can Read and Create applications. Note: If you need to prevent a user from performing a specific action, make sure that the user is not assigned to any permissions group that allows that action. To add a user to a permissions group: 1 On the Admin > Users page, select the user, then click Add to Permissions Group. www.ravellosystems.com
89
2 In the Permissions Group dialog box, select the relevant permissions group and click Select. 3 Click Save. Change Password You can change the password you use to access Ravello. To change your password: 1 On the title bar, click your username and select Change Password.
2 Enter your old password and a new password in the designated fields, and click OK. Your password is updated accordingly. Note: If you have admin permissions, you can select another user on the Admin > Users page and reset their password for them. Disable a User If you have Admin permissions, you can disable other users. To disable a user: 1 On the Admin > Users page, select the user then click d Disable. 2 When prompted for confirmation, click OK.
Monitor Resource Usage A defined amount of resources – running VMs and CPU hours – is allocated to each Ravello user. To view the resource usage levels and status, select Admin > Usage from the navigation pane.
www.ravellosystems.com
90
The Admin > Usage & Quota page provides the following details:
Concurrent Running VMs: The number of Running VMs as a portion of the maximum number of VMs that you are allowed to run simultaneously. When the number of VMs reaches the maximum value, you cannot start new VMs without first stopping some of the running VMs.
Public IPs: The number of Public IP addresses as a portion of the maximum number that you are allowed to run simultaneously.
Elastic IPs: The number of Elastic IP addresses as a portion of the maximum number that you are allowed to run simultaneously.
An orange progress bar indicates that the available resources are almost entirely utilized. When additional resources are no l onger available, the progress bar turns red. Note: The CPU resources available during the two-week free trial period are limited and cannot be increased. To change your account status, click Upgrade at the top of the Ravello Management Console.
Upgrade Your Account A limited amount of resources – running VMs and CPU hours – is allocated to users during the two-week free trial period. After the trial pe riod, you can continue to access Ravello, however you can no longer publish, update, or run applications on the cloud. (Any running applications are stopped at the end of the trial period.) To continue to enjoy the benefits of Ravello beyond the free trial period, you can upgrade and register your account at any time by clicking Upgrade at the top of the www.ravellosystems.com
91
Ravello Management Console. Registered users are billed according to their deployment of applications on the cloud. When you publish an application, you can choose from a variety of clouds and pricing schemes.
Set Up Your Public Profile You must have a public profile before you can share library items on Ravello Repo. Note: If you do not plan to share items on Ravello Repo, a public profile is optional. To set up your public profile: 1 Click your username at the top of the Ravello interface and select My Profile from the dropdown list. 2 To enable others to view your profile, select Show my profile in Ravello Repo. 3 In the Public name field, enter the username to be displayed in Ravello Repo. (This username does not have to be the same as your Ravello username.) 4 (Optional) Add a brief description of your role or other pertinent information about you or your account. 5 (Optional) To enable others to contact you via the email associated with your Ravello account, select Allow people to contact me via email. 6 (Optional) Select Show my social networks to Include social media accounts information. Click the edit icon to configure the account information accordingly. 7 Click Save. Tip: To preview your profile as it will appear in Ravello Repo, click View in Ravello Repo.
www.ravellosystems.com
92
View the System Log The System Log page displays the messages logged by the system. To display the System Log, select Admin > Log.
To include/exclude the list of messages according to Level (Trace, Information, Warning, or Error), select or clear the corresponding checkbox. Tip: You can filter the list in any tab by entering a partial or full string in the Filter field.
www.ravellosystems.com
93
Frequently Asked Questions General questions about Ravello, how it works, and terminology What is Ravello? What is the added value of using Ravello API? What operating systems are supported? What VM formats does Ravello support? Which clouds are supported? Terminology What is an application? What is an application design? What is a service? What is a blueprint? What is publishing? What is Ravello? Ravello is the industry’s first universal Cloud Application Platform and it features a new concept – a cloud application hypervisor, HVX. It allows developers to use the cloud more effectively and efficiently, solving some of the biggest challenges of moving existing applications from the data center to the cloud as well as developing and deploying new applications in the cloud. Powered by Ravello’s Cloud Application Hypervisor , it enables an enterprise to take advantage of the public cloud for development and testing , while ensuring complete consistency and optimizing your cloud costs. What is the Cloud Application Hypervisor? Ravello’s Cloud Application Hypervisor enables an enterprise to completely encapsulate a multi-VM application (e.g., VMware or KVM) and run it in any cloud (e.g., Amazon AWS/EC-2, , HP Cloud) without making any changes whatsoever. It consists of three components:
HVX: a high performance nested hypervisor
IO Overlay/software-defined network
Application framework
For details, see the Technology Overview.
www.ravellosystems.com
94
What is the added value of using Ravello API? Using the Ravello API, DevOps can integrate Ravello with the enterprise build server and CI server. This can result in further automation and reduction in application development/testing time. For example, an organization can integrate Ravello with their Maven build process so that each time a developer checks in any code, Ravello can spin up an instance (or multiple instances) of the full application in the cloud. A series of regression tests can then be run to make sure that the latest code check-in does not adversely impact on any existing functionality What operating systems are supported? The supported operating systems include:
VM Import Tool: Windows 7, Linux, Mac
Guest VMs: Ubunto 10.2, 12.4, 12.10; CentOS 6.0, 6.1, 6.2; RHEL 5.8, 5.9, 6.0, 6.1, 6.2; openSUSE 12.3; WIN 2003 Server R2; WIN 2008 Server R2; WIN 2012 Server R2
For complete details, including CPU and cloud provider info, refer to the Support Matrix table. What VM formats does Ravello support? Ravello supports the following virtualization versions:
ESX 4.1, ESX 5.0 For ESX images. Ravello requires VMX and VMDK files that can be extracted using the VMware convertor or ovftool. VMX files are primary configuration files, which store settings chosen in the New Virtual Machine Wizard or virtual machine settings editor. VMDK files are disk image files.
KVM (Linux-based,contact us for details)
Which clouds are supported? Ravello currently supports the deployment of applications on Amazon and HP clouds.
www.ravellosystems.com
95
Terminology What is an application? An application is any set of virtual machines, network and storage devices and their configuration that you want to make available to users. In Ravello, an application also refers to an instance of an application that can be published or that is already running on the cloud. Multiple instances (or copies) of the same application can run at the same time. What is an application design? An application design is a set of definitions that describe an application, including virtual machine images, supplied and required service interfaces, and connectivity, as applicable. What is a service? Services provide entry points for accessing the application functionality on the VM. A supplied service opens a port on the VM, and a required service enables the connection to the VM. Multiple required interfaces can be connected to a single supplied service. You can manually add supplied and required service interfaces to the virtual machines images in Ravello. You can also edit the properties of both supplied and required services, including the service name, hostname, protocol, ports, and more. What is a blueprint? A blueprint is a self-contained set of definitions that describe your application, and which can be used to create applications and deploy them on the cloud. A blueprint comprises a snapshot of an application instance and is created from an application design. The same blueprint can be used multiple ti mes, however it cannot be edited. What is publishing? Publishing is the process of deploying the application in a cloud environment. Publishing the application instance creates multiple virtual machines in the cloud and defines the network overlay, or if changes are made to the instance design, implements those changes on a running instance.
www.ravellosystems.com
96
Questions about working with Ravello Why can't I connect to the UI VM Import Tool? Can I use CLI to upload VMs? What is the user for public images? How do I change the IP address of my VM? Can I restrict access to my VM? Why can’t I open the VM console? Why can't I connect to the VM with SSH? Where can I find an application’s DNS properties? Can I save a blueprint based on an application? Where did all the VMs in the Library page come from? How do I create a key pair? Can I import and use an existing key pair? Where can I find information on resource usage status and levels? How do I know how many VMs I have running? Why can’t I open the Ravello Management Console? Can I export OVF files from a vSphere environment?
Why can't I connect to the UI VM Import Tool? When using the VM Import Tool from the UI, it runs as a local server, handling the upload process in the background. The UI uses plain HTTP to communicate with it, and HTTPS to communicate with the Ravello service. For this reason, you need to allow insecure content to use the import tool. Note: HTTP will be used only for local communications, and all remote communications will be secured using HTTPS. Depending on your browser's security settings, the first time you attempt to open the import tool a "Connection Failed" dialog box is displayed. Click Read More and then select Allow Insecure Content. Alternatively, if your browser displays a security shield, click the Shield and then click the Load Anyway button. If the problem persists, contact our support team. Can I use CLI to upload VMs? The VM Import Tool can be used in two ways:
From within the Ravello user interface (UI VM Import Tool)
www.ravellosystems.com
97
From the CLI, which allows you to upload your VMs offline and automate the upload process.
For details on installing the necessary CLI, see “How to install the CLI VM Import Utility on Windows platforms” or “How to install the CLI VM Import Utility on Linux/Mac platforms”. What is the user for public images? The user for public images in Ravello systems is "ravello". How do I change the IP address of my VM? 1 In the application design, select the VM. Its properties are displayed in the Details pane 2 On the Network tab: Select DHCP and enter the reserved IP address in the adjacent field, OR Select Static and enter the IP address, subnet, gateway and DNS details. 3 If the VM is already published, the VM network should be restarted in order the changes to take effect. Can I restrict access to my VM? Absolutely. You can define and enable an IP filter that allows traffic from authorized source IP addresses only. The IP filter can be configured from the Network tab of your application design. For details see "How to use an IP filter ". Why can’t I open the VM console? Depending on your browser's security settings, the first ti me you attempt to open the console a "Connection Failed" dialog box is displayed. Click Read More and then select Allow Insecure Content. Alternatively, if your browser displays a security shield, click the Shield and then click the Load Anyway button. If the problem persists, contact our support team.
www.ravellosystems.com
98
Why can't I connect to the VM with SSH? SSH connection problems typically stem from one of the following issues:
Key pair format: If you are trying to connect to the VM with a Windows platform, you need to use PuTTy to connect and the keys need to be in PPK format. Key pairs generated by Ravello are in PEM format, but they are easily converted to PPK format using the PuTTyGen tool. For details, see Using SSH key apirs to connect to VMs with Windows.
Mac address: Sometimes VM configuration is set to Automatic Mac, meaning the address is assigned automatically. You can define a fixed Mac address in the VM Editor/Networks tab.
Can I save a blueprint based on an application? Yes. You can create a blueprint from your application design and use it later as the basis for creating new applications, eliminating the need to start entirely from scratch. Clicking Save as Blueprint in the application design tab enables you to create a snapshot of the current design and give it a name of your choosing. For details, see "How to create a blueprint". Where did all the VMs in the Library page come from? The first time you open the Library tab, it lists only the predefined set of virtual machine images provided by Ravello. If you have already installed and used the VM Import Utility, this list will also include any images you have uploaded into Ravello. Where can I find an application’s DNS properties? In the Network tab of your application design or blueprint, click the DNS
icon.
The DNS properties are displayed in read-only format. How do I create a key pair? You can generate key pair from the Library page or on-the-fly while creating a new application that is based on a public blueprint. When you generate key pair using Ravello, the private key is downloaded as a file. The private key is not saved by Ravello. The public key is saved by Ravello and used when the VM is started. www.ravellosystems.com
99
Can I import and use an existing key pair? Yes. You can import an existing key pair and use it to connect to VMs created from public blueprints. Note: Key pairs can be imported in Linux/Mac format only. How do I know how many VMs I have running? You can view the resource usage levels and status at any time by selecting Admin > Usage from the navigation pane. Where can I find information on resource usage status and levels? You can view the resource usage levels and status at any time by selecting Admin > Usage from the navigation pane. The Admin > Usage & Quota page provides the following details:
Running VMs: The number of Running VMs as a portion of the maximum number of VMs that you are allowed to run simultaneously. W hen the number of VMs reaches the maximum value, you cannot start new VMs without first stopping some of the running VMs.
An orange progress bar indicates that the available resources are almost entirely utilized. When additional resources are no longer available, the progress bar turns red. How do I know how many VMs I have running? You can view the resource usage levels and status at any time by selecting Admin > Usage from the navigation pane. The Admin > Usage & Quota page displays the number of Running VMs as a portion of the maximum number of VMs that you are allowed to run simultaneously. Why can’t I open the Ravello Management Console? Depending on your browser's security settings, the first ti me you attempt to open the console a "Connection Failed" dialog box might be displayed. Click Read More and then select Allow Insecure Content. Alternatively, if your browser displays a security shield, click the Shield and then click the Load Anyway button. If the problem persists, contact our support team. www.ravellosystems.com
100
What is auto-stop? Auto-stop is a feature that enables you to configure long the application is run before it is automatically stopped. This eliminates the need to manually stop those applications that you know are required for a limited time. The balance of time remaining until the application is automatically stopped appears in the Auto Stop in column on the Applications page. Note: This feature is currently supported for Amazon clouds only. Can I export OVF files from a vSphere environment? Yes, you can. 1 Open the Virtual Infrastructure client and connect to the vCenter or ESX host in which the VM is running. 2 Select the intended VM from the inventory, shut it down if it is running, and then select File > Export > Export OVF Template. This process might take some time, depending on the size of the disks and other parameters. At the end of the export process, an OVF file and 1 or more VMDK files should appear in your target directory. How do I enable RFP access to a virtual machine? To enable access to a virtual machine from the internet you first need to create a supplied service. A supplied service is actually a meta data object that indicates that the virtual machine is listening on a specific ip:port. Once a supplied service is defined as external, the system tunnels packets through the fenced network to the virtual machine on the service ip:port. Note: You can define a single port or a port range. You can also enable RDP to one of the VM IPs or all. 1 Select the VM on the canvas to view its properties. 2 In the Details pane, create a supplied service in the Services tab as follows: Click Add.
Enter the service name.
www.ravellosystems.com
101