Skip to content

Creating new servers

Once you have an account in Cleura Cloud, you can create virtual machines — henceforth simply servers — using either the Cleura Cloud Management Panel or the OpenStack CLI. Let us demonstrate the creation of a new server, following both approaches.

Prerequisites

You need to have at least one network in the region you are interested in. Additionally, if you prefer to work with the OpenStack CLI, then make sure to properly enable it first.

Creating a server

To create a server from the Cleura Cloud Management Panel, fire up your favorite web browser, navigate to the Cleura Cloud Management Panel start page, and log into your Cleura Cloud account. On the other hand, if you prefer to work with the OpenStack CLI, please do not forget to source the RC file first.

On the top right-hand side of the Cleura Cloud Management Panel, click the Create button. A new pane titled Create slides into view.

Create new Cleura Cloud object

Notice all these rounded boxes on that pane, each for defining, configuring, and instantiating a different Cleura Cloud object. Go ahead and click the Server box.

Another pane, titled Create a Server, slides over. At the top, type in a name for the new server and select one of the available regions.

Type in server name and select region

Set the Connect to parameter to Network. Select at least one of the available networks to attach the new server to.

Attach server to a network, and optionally connect a floating IP to server

If that network is dual-stack or has one IPv4-based subnet, you may want the server to be publicly accessible via an IPv4 address. In that case, make sure to activate the Connect a floating IP to the server switch. Then, use the dropdown menu below to set the Create External IP on parameter to the network you have already attached the server to.

Now, pay attention to the Server profile parameter.

Select server profile

From the corresponding dropdown menu, you must select a profile. Currently, the following profiles are available:

  • Generic,
  • High CPU, and
  • Low Latency Disk.

Selecting one of those gives you access to a subset of all available flavors.

As the profile names suggest, each profile but the Generic points to a subset of flavors suitable for servers intended to run specific types of applications:

  • the Generic profile is for general-purpose cloud servers,
  • the High CPU profile is for servers designed to host CPU-intensive applications, and
  • the Low Latency Disk profile is for servers that use a local low-latency disk.

We should point out that some profiles may not be available in all regions. Choose the Generic profile for now, which is available in any of the regions.

In the Boot source section below, click the dropdown menu on the left and make sure you select Image, so you can choose one of the readily available OS images to boot the new server off of.

Select boot source and image

To pick a specific image, click on the dropdown menu on the right. In this example, we have chosen ubuntu in general and Ubuntu 24.04 Noble Numbat x86_64 in particular.

Next, notice that the Boot Target is preselected for you. Depending on the server profile you have already selected, the boot target will be either Volume or Ephemeral. Specifically:

  • for the Generic and High CPU profiles, the boot target is Volume, and
  • for the Low Latency Disk profile, the boot target is Ephemeral.

Boot target, volume, and volume size

Regarding the server’s CPU core count and amount of memory, set the Flavor accordingly. We suggest selecting a flavor that specifies a server with 1 CPU core and 1 GiB of RAM.

Note that, depending on the chosen flavor, the estimated monthly cost of the server changes. (While a server is shut off, you are still getting charged for it, but less so.) At any time, this estimated cost is displayed in the green rectangular area at the top.

Something else that affects the cost is the size of the root device. Take a look at the Volume parameter below, and notice the default (in gibibytes). You may leave the root device size unchanged, or modify it to be a bit higher than the default.

When, at a later time, you decide to delete the server, you can do so but keep its boot volume (you may want, for example, to attach that volume to a new server). Just disable the Delete on termination option if you want this kind of flexibility. On the other hand, if you want your root volume to be automatically deleted when the server is deleted, the Delete on termination option is already enabled for you. In any case, use this option with caution.

Boot target, volume, and volume size

Also, notice the Storage classes (types) parameter, which actually deals with volume types. By default, this parameter is set to cbs.

You may want to leave the Disaster recovery option enabled. If you do, then daily server snapshots will be created, and you will have the option for easy and fast roll-ups to previous snapshots. Please be aware that leaving this option enabled increases the server’s monthly estimated cost (again, it is displayed in the green rectangular area at the top).

Disaster recovery option

To control network access to the server, use the dropdown menu to the right of Security Groups and choose one.

Choose a security group

If you already have one or more key pairs in your Cleura Cloud account, you can now select a public key to be included in the ~/.ssh/authorized_keys file of the server’s default user. (For the image you have selected, that user would be ubuntu.) That way, you can securely log into the remote user’s account via SSH without typing a password.

Indicate an existing keypair

In case there are no key pairs to choose from, activate the Set password option and set a password for the default user account (ubuntu).

Optionally set a password for the default user account

A configuration script is automatically prepared based on the choices you have already made. That script runs during system boot and performs housekeeping tasks like user account creation, enabling acceptable authentication methods, and configuring remote package repositories. Click on Advanced Options to see the default script.

Default server configuration script and user data propagation method

Regarding the User-data propagation method above, notice that the Use metadata service is pre-selected for you. For more on what this is and why you might want to select the Use configuration drive method, please read our guide on launching a server with a configuration drive.

It is now time to create your Cleura Cloud server. Click the green Create button, and the new server will be readily available in a few seconds.

Initiate server creation process

An openstack command for creating a server may look like this:

openstack server create \
    --flavor $FLAVOR_NAME \
    --image $IMAGE_NAME \
    --boot-from-volume $VOL_SIZE \
    --network $NETWORK_NAME \
    --security-group $SEC_GROUP_NAME \
    --key-name $KEY_NAME \
    --wait \
    $SERVER_NAME

Each variable represents a piece of information we have to look for or, in the cases of KEY_NAME and SERVER_NAME, arbitrarily define.

Let us begin with the flavors (FLAVOR_NAME), which describe combinations of CPU core count and memory size. Each server has a distinct flavor, and to see all available flavors type:

openstack flavor list

You will get a pretty long list of flavors. For our demonstration, we suggest you go with b.1c1gb. A server with this particular flavor will have one CPU core and one gibibyte of RAM. Go ahead and set FLAVOR_NAME accordingly:

FLAVOR_NAME="b.1c1gb"

Your server should have an image to boot off of (IMAGE_NAME). For a list of all available images in Cleura Cloud, type:

openstack image list

This time, you get a shorter list, but you can still filter for images with the OS you prefer. For example, filter for Ubuntu:

openstack image list --tag "os:ubuntu"

Continue with the Ubuntu 24.04 Noble Numbat x86_64 image:

IMAGE_NAME="Ubuntu 24.04 Noble Numbat x86_64"

Before you go on, decide on the capacity (in gibibytes) of the server’s boot volume (VOL_SIZE). We suggest you start with 10 gibibytes:

VOL_SIZE="10"

You need at least one network in the region you’re about to create your new server (NETWORK_NAME). To get the names of all available (internal) networks, type:

openstack network list --internal -c Name
+----------------+
| Name           |
+----------------+
| nordostbahnhof |
+----------------+

Set the NETWORK_NAME variable accordingly:

NETWORK_NAME="nordostbahnhof"

Regarding the security group (SEC_GROUP_NAME), unless you have already created one yourself, you will find only one per region:

openstack security group list -c Name -c Description
+---------+------------------------+
| Name    | Description            |
+---------+------------------------+
| default | Default security group |
+---------+------------------------+

Go ahead and set SEC_GROUP_NAME:

SEC_GROUP_NAME="default"

You most likely want a server you can remotely connect to via SSH without typing a password. Upload one of our public keys to your Cleura Cloud account:

openstack keypair create --public-key ~/.ssh/id_ed25519.pub bahnhof

In the example above, we uploaded the public key ~/.ssh/id_ed25519.pub to our Cleura Cloud account and named it bahnhof. Follow our example, and do not forget to set the KEY_NAME:

KEY_NAME="bahnhof"

By the way, check all uploaded public keys…

openstack keypair list

…and get more information regarding the one you just uploaded:

openstack keypair show $KEY_NAME

You are almost ready to create your new server. Decide on a name…

SERVER_NAME="zug" # just an example

…and then go ahead and create it:

openstack server create \
    --flavor b.1c1gb \
    --image $IMAGE_NAME \
    --boot-from-volume 20 \
    --network nordostbahnhof \
    --security-group default \
    --key-name bahnhof \
    --wait \
    zug

(For clarity’s sake, and with the exception of $IMAGE_NAME, we used the actual values and not the variables we so meticulously set.) The --wait parameter is optional. Whenever you choose to use it, you get back control of your terminal only after the server is readily available in Cleura Cloud.

The network your server is attached to might be dual-stack, or it might have an IPv4-based subnet. If this is the case and, additionally, you want the server to be reachable via a public IPv4 address, then you need to create a floating IP and assign it to your server. First, create the floating IP:

openstack floating ip create ext-net

See all floating IPs…

openstack floating ip list

…and assign the one you just created to your server:

openstack server add floating ip zug 198.51.100.12

The username of the default user account in the Ubuntu image is ubuntu, so now you can connect to your remote server via SSH without typing a password:

ssh ubuntu@198.51.100.12

Alternatively, you may also use the following command, which is more flexible though slightly longer:

openstack server ssh --public zug -- -l ubuntu

Viewing information about the newly created server

At any time, from the Cleura Cloud Management Panel you may see all servers, and get detailed information regarding each one of them. Expand the left-hand side vertical pane, click Compute, then Servers, and, in the central pane, select the region you want.

View server details

To see all available servers in the region, type:

openstack server list

You can always get specific information on a particular server:

openstack server show zug

Connecting to the server console

While viewing information regarding your server, you may get its IPv6 or public IPv4 address (e.g., from the Addresses tab), and connect to it remotely via SSH. Alternatively, you may launch a web console and log in. Click on the three-dot icon on the right of the server header, and from the pop-up menu that appears, select Remote Console.

Launch remote console

A new window pops up, and that’s your web console to your Cleura Cloud server. Please note that this window cannot be resized but can be opened in a new browser window or tab.

View and use server console

You may have access to the web console of your server, and you need the corresponding URL for it:

openstack console url show zug

Usage of the web console is discouraged, though. Instead, securely connect to your server via SSH.