Getting started

MetalSoft is very easy to operate but it does have some unique concepts. This short introductory tutorial will walk you through deploying a server and retrieving access credentials while also explaining various MetalSoft concepts.

This guide assumes that MetalSoft has been deployed and that servers are now registered and available.

  1. Login into the infrastructure designer

    You are now looking at a blank canvas on which we can create our infrastructure. A a default infrastructure has been created in the first site. Infrastructures are used to group resources connected with a project running in the same site. Users can have any number of infrastructures. To change the site where the infrastructure will be deployed create a new infrastructure.

  2. Create an instance array

    MetalSoft managed servers (called Instances) are grouped in InstanceArrays.

    Let’s create an InstanceArray with a single instance: Click on Add Element and click on Server

  3. Select a server configuration

    Select your type and click next

    Enter a name and label, click on Operating System and select install on local drives, select the Operating System and click on Create

  4. Add Network

    Click on Add Element and click on either Pre-created Network or Private Network

    If a Private Network, then add a name and label and select the network profile. If a Pre-created Network, it will be added to the canvas.
    Drag the network connection from the Server Group to the Network and select the network options required and click Connect

  5. Configure Access Control List

    To configure the access control list, click on the Server Group and click on Security and click on the network

    In the next page, click on + at the bottom and configure the security rule and click on create and click the x in the top right once complete

  6. Deploy the infrastructure

    Operations in the Metal Cloud are not immediately deployed. In fact they can be reverted until the infrastructure is “Deployed”. Click on the Deploy at the top right of the screen and in the “Ready to deploy” screen, select Allow data loss and click Deploy.

    The deploy operation should take between 3 and 10 minutes. At the end of it the Server Group will be in an active state.

  7. Retrieve access credentials

    After the deploy the Server Group is in “active” state. Click on the Server Group, click on Instances, select the instance and the credentials and Console will be available from here:

     >Note: It is recommended that you register your public SSH key in the **Account settings** section so that it gets automatically added on the hosts at deploy time.
    

Deploying an instance array using the CLI

This tutorial uses the CLI. Visit using the CLI for more details.

  1. List available templates

    metalcloud-cli os-template list
    ┌───┬──────────────────┬────────────┬─────────────┬────────┬────────────┬─────────────────────┬─────────────────────┐
    │ # │ NAME             │ LABEL      │ DEVICE TYPE │ STATUS │ VISIBILITY │ CREATED             │ UPDATED             │
    ├───┼──────────────────┼────────────┼─────────────┼────────┼────────────┼─────────────────────┼─────────────────────┤
    │ 2 │ Ubuntu 24.04 LTS │ no-network │ server      │ used   │ private    │ 30 Apr 25 13:19 BST │ 15 Jul 25 04:46 BST │
    └───┴──────────────────┴────────────┴─────────────┴────────┴────────────┴─────────────────────┴─────────────────────┘
    
    
  2. List available servers

    metalcloud-cli server-type list
    ┌───┬───────────────────┬───────┬───────┬─────────┬────────────────────────────────────────────────┬────────┬───────┬────────┬───────┐
    │ # │ NAME              │ LABEL │ CPU # │ CPU MHZ │ CPU NAMES                                      │ RAM GB │ NIC # │ DISK # │ GPU # │
    ├───┼───────────────────┼───────┼───────┼─────────┼────────────────────────────────────────────────┼────────┼───────┼────────┼───────┤
    │ 1 │ M.4.8.1           │       │     1 │    4000 │ [Intel(R) Xeon(R) E-2144G CPU @ 3.60GHz]       │      8 │     4 │      1 │     0 │
    │ 2 │ M.8.32.1          │       │     1 │    4000 │ [Intel(R) Xeon(R) Bronze 3106 CPU @ 1.70GHz]   │     32 │     2 │      1 │     0 │
    │ 3 │ M.6.8.1           │       │     1 │    4000 │ [Intel(R) Xeon(R) E-2126G CPU @ 3.30GHz]       │      8 │     4 │      1 │     0 │
    │ 4 │ M.2.16.3          │       │     1 │    4000 │ [Intel(R) Pentium(R) Gold G5500 CPU @ 3.80GHz] │     16 │     4 │      3 │     0 │
    │ 5 │ generic_unmanaged │       │     1 │    1000 │ []                                             │      1 │     0 │      0 │     0 │
    └───┴───────────────────┴───────┴───────┴─────────┴────────────────────────────────────────────────┴────────┴───────┴────────┴───────┘
    
    
  3. Provision an Instance.

    To provision an instance, you will require the following:

    metalcloud-cli server-instance-group create infrastructure_id_or_label label server_type_id instance_count [os_template_id] 
    

    The below shows the format of the command where this uses Infrastructure 35, label of test01, server type 3, 1 server and OS template ID 2

    ./metalcloud-cli instance-array create 35 test01 3 1 2
    ┌────┬────────┬──────────┬─────────┬─────────────────────┬─────────────────────┐
    │  # │ LABEL  │ INFRA ID │ STATUS  │ CREATED             │ UPDATED             │
    ├────┼────────┼──────────┼─────────┼─────────────────────┼─────────────────────┤
    │ 79 │ test01 │       35 │ ordered │ 15 Jul 25 11:46 BST │ 15 Jul 25 11:46 BST │
    └────┴────────┴──────────┴─────────┴─────────────────────┴─────────────────────┘
    
  4. Deploy the infrastructure

    metalcloud-cli infra deploy 35
    ┌────┬─────────┬──────────────┬─────────┬───────┬──────┬─────────────────────┬─────────────────────┬───────────────┬───────────┐
    │  # │ LABEL   │ CONFIG LABEL │ STATUS  │ OWNER │ SITE │ CREATED             │ UPDATED             │ DEPLOY STATUS │ DEPLOY ID │
    ├────┼─────────┼──────────────┼─────────┼───────┼──────┼─────────────────────┼─────────────────────┼───────────────┼───────────┤
    │ 35 │ infra02 │ infra02      │ ordered │    11 │    1 │ 15 Jul 25 08:48 BST │ 15 Jul 25 11:56 BST │ ongoing       │        70 │
    └────┴─────────┴──────────────┴─────────┴───────┴──────┴─────────────────────┴─────────────────────┴───────────────┴───────────┘
    
    
    
    

Listing Server Instance Groups and Server Instances in an infrastructure

To show a list of Server Instance Groups in an infrastructure, issue this command

metalcloud-cli server-instance-group list 35
┌────┬────────────┬──────────┬────────┬─────────────────────┬─────────────────────┐
│  # │ LABEL      │ INFRA ID │ STATUS │ CREATED             │ UPDATED             │
├────┼────────────┼──────────┼────────┼─────────────────────┼─────────────────────┤
│ 80 │ server0101 │       35 │ active │ 15 Jul 25 11:55 BST │ 15 Jul 25 12:16 BST │
└────┴────────────┴──────────┴────────┴─────────────────────┴─────────────────────┘

To show a list of Server Instances in a Server Instance Group, issue this command

metalcloud-cli server-instance-group instances 80
┌────┬─────────────┬──────────┬──────────┬────────┬─────────────────────┬─────────────────────┐
│  # │ LABEL       │ INFRA ID │ GROUP ID │ STATUS │ CREATED             │ UPDATED             │
├────┼─────────────┼──────────┼──────────┼────────┼─────────────────────┼─────────────────────┤
│ 62 │ instance-62 │       35 │       80 │ active │ 15 Jul 25 11:55 BST │ 15 Jul 25 12:16 BST │
└────┴─────────────┴──────────┴──────────┴────────┴─────────────────────┴─────────────────────┘

Retrieving server access credentials using the CLI

To retrieve your ssh credentials use the following command:

metalcloud-cli server-instance get 62 --show-credentials

Checking the power status of all the instances in this instance array using the CLI

To retrieve your instances status use:

metalcloud-cli instance-array get 62 --show-power-status

Rebooting an instance using the CLI

To perform power operations on a particular instance use:

metalcloud-cli instance power-control --id 1023 --operation reset

Possible operations are:

  • on - power on

  • off - power off (hard)

  • reset - Reboot (hard)

  • soft - Soft shutdown (ACPI via the operating system)

View deployed server as an Admin

While users operate with InstanceArrays, DriveArrays and other logical concepts, behind the scenes physical equipment gets provisioned.

The users interact with “instances” whereas admins interact with Servers. The mapping between an instance and a server is done at “provisioning” time and is created when the user “requests” a compute resource. An instance can be mapped to another server if the user needs more resources or needs a replacement. Let’s see what got provisioned:

  1. Login to the Admin page.

  2. Go to the Servers page, locate the used server. You can use the filter bar to search for your name or email address. The server should be the only result.

  1. Click on the server’s title or id. You can now browse through the tabs. Under normal circumstances admins should not interact with the server itself as the process is completely automatic.

  1. You can use IPMI host IP, the IPMI username and password to login into the server’s BMC interface.

View deployed switch configuration

  1. Click on the Server’s Network interfaces tab and checkout the network connections that were created

  2. Go to the Network Devices page. Select the switch referenced in the infrastructures tab

Where to go from here:

  1. Server lifecycle

  2. Managing infrastructures