Check out our dedicated APIs to manage Private Networks and Flexible IPs for Elastic Metal servers.
Elastic Metal API
Introduction
Scaleway Elastic Metal servers are dedicated physical servers that you can order on-demand, like Instances. You can install an OS or other images on your Elastic Metal server and connect to it via SSH to use it as you require. You can power off the server when you are not using or delete it from your account once you have finished using it. Elastic Metal servers are ideal for large workloads, big data, and applications that require increased security and dedicated resources.
Concepts
Refer to our dedicated concepts page to find definitions of the different terms referring to Elastic Metal servers.
Quickstart
-
Configure your environment variables.
export PROJECT_ID="<project-id>"export ACCESS_KEY="<access-key>"export SECRET_KEY="<secret-key>"export ZONE="<availability-zone>"NoteThis is an optional step that seeks to simplify your usage of the Bare Metal API.
-
Edit the POST request payload that we will use in the next step to create an Elastic Metal server. Modify the values in the example according to your needs, using the information in the table to help.
{"offer_id": "string","project_id": "string","name": "string","description": "string","tags": ["tag1", "tag2"],"install": {"os_id": "string","hostname": "string","ssh_key_ids": ["string"],"user": "string","password": "string","service_user": "string","service_password": "string"},"option_ids": ["string"]}Parameter Description offer_id
REQUIRED UUID of the Elastic Metal offer project_id
REQUIRED UUID of the project you want to create your Elastic Metal in. name
REQUIRED Name of the Elastic Metal server (≠hostname) description
REQUIRED A description of your server (max 255 characters) tags
OPTIONAL An array of tags associated with your server os_id
The ID of the operating system image to install on the server hostname
Hostname of the server ssh_key_ids
SSH key IDs authorized on the server user
NULLABLE A regular user to be configured on the server password
NULLABLE The password for the user account service_user
NULLABLE A service user for third party services (user to login in services such as BigBlueButton) service password
NULLABLE Password for the service user option_ids
IDs of options to enable on server TipTo find your Project ID you can either use the IAM API or the Scaleway console:
-
Run the following command to create an Elastic Metal server. Make sure you include the payload you edited in the previous step.
curl -X POST \-H "Content-Type: application/json" \-H "X-Auth-Token: $SECRET_KEY" https://api.scaleway.com//baremetal/v1/zones/$ZONE/servers \-d '{"offer_id": "bd757ca3-a71b-4158-9ef5-39436b6db2a4","project_id": "cc6d123a-bc09-4e24-b5d9-3310f2104e13","name": "MyElasticMetal","description": "My_Elastic_Metal_Server","tags": ["Ubuntu22", "Dedicated"],"install": {"os_id": "96e5f0f2-d216-4de2-8a15-68730d877885","hostname": "elasticmetal.exaple.com","ssh_key_ids": ["fa05e77f-66b7-43b9-bc21-4dfe3c5bb624"],"user": "ubuntu","password": "mySecretPa$$word""option_ids": ["string"]}" -
List your Elastic Metal servers.
curl -X GET \-H "Content-Type: application/json" \-H "X-Auth-Token: $SECRET_KEY" https://api.scaleway.com/baremetal/v1/zones/$ZONE/servers -
Retrieve your Elastic Metal server IP from the response.
-
Connect to your Elastic Metal server using SSH
ssh root@my-elastic-metal-server-ip
To perform the following steps, you must first ensure that:
- you have an account and are logged into the Scaleway console
- you have created an API key and that the API key has sufficient IAM permissions to perform the actions described on this page.
- you have installed
curl
Technical information
Features
- Installation (Server is installed by preseed [preseed: complete install from a virtual media], you must define at least one ssh key to install your server)
- Start/Stop/Reboot
- Rescue Reboot, a rescue image is an operating system image designed to help you diagnose and fix OS experiencing failures. When your server boot on rescue, you can mount your disks and start diagnosing/fixing your image.
- Billed by the minute (billing starts when the server is delivered and stops when the server is deleted)
- IPv6, all servers are available with a /128 IPv6 subnet
- ReverseIP, You can configure your reverse IP (IPv4 and IPv6), you must register the server IP in your DNS records before calling the endpoint
- Basic monitoring with ping status
- Flexible IP is available (documentation)
Availability Zones
Scaleway's infrastructure is spread across different regions and Availability Zones.
Elastic Metal servers are available in Paris, Amsterdam, and Warsaw regions, with product availability in the following AZs:
Name | API ID |
---|---|
Paris | fr-par-1 fr-par-2 |
Amsterdam | nl-ams-1 nl-ams-2 |
Warsaw | pl-waw-2 pl-waw-3 |
Technical limitations
- Failover IPs are not available in API
v1
, use the APIv1alpha1
Going further
For more help using Scaleway Elastic Metal servers, check out the following resources:
- Our main documentation
- The #elastic-metal channel on our Slack Community
- Our support ticketing system
Troubleshooting
How is the installation of Elastic Metal servers done?
- The installation of Elastic Metal servers is done by preseed (± 10min) (preseed: complete install from a virtual media)
How can I retrieve my secret key and Project ID?
You can find your secret key and your Project ID in the Scaleway console.
How can I add my server to a Private Network?
Servers
Elastic Metal allow you to order dedicated servers on-demand, like cloud Instances. A server refers to physical server used to provide the service.
GET
/baremetal/v1/zones/{zone}/servers
POST
/baremetal/v1/zones/{zone}/servers
GET
/baremetal/v1/zones/{zone}/servers/{server_id}
PATCH
/baremetal/v1/zones/{zone}/servers/{server_id}
DELETE
/baremetal/v1/zones/{zone}/servers/{server_id}
GET
/baremetal/v1/zones/{zone}/servers/{server_id}/events
POST
/baremetal/v1/zones/{zone}/servers/{server_id}/install
PATCH
/baremetal/v1/zones/{zone}/servers/{server_id}/ips/{ip_id}
GET
/baremetal/v1/zones/{zone}/servers/{server_id}/metrics
POST
/baremetal/v1/zones/{zone}/servers/{server_id}/options/{option_id}
DELETE
/baremetal/v1/zones/{zone}/servers/{server_id}/options/{option_id}
Server Actions
Server actions allows you to start, stop or reboot your servers.
POST
/baremetal/v1/zones/{zone}/servers/{server_id}/reboot
POST
/baremetal/v1/zones/{zone}/servers/{server_id}/start
POST
/baremetal/v1/zones/{zone}/servers/{server_id}/stop
BMC Access
The BMC (Baseboard Management Controller) access allow you to access the series console of your Elastic Metal server.
Access to this feature is available one hour after the installation of the server.
You need first to create an Remote Access option. Find the ID and the price with a call to listOffers
. Then you can add the option.
Once added, create remote access. Use Get Remote Access to retrieve the login/password. Do not forget to disable the option after use.
GET
/baremetal/v1/zones/{zone}/servers/{server_id}/bmc-access
POST
/baremetal/v1/zones/{zone}/servers/{server_id}/bmc-access
DELETE
/baremetal/v1/zones/{zone}/servers/{server_id}/bmc-access
Offers
Lists the IDs of the commercial offers available to deploy.
GET
/baremetal/v1/zones/{zone}/offers
GET
/baremetal/v1/zones/{zone}/offers/{offer_id}
Options
Lists the optional features available for this Elastic Metal server.
GET
/baremetal/v1/zones/{zone}/options
GET
/baremetal/v1/zones/{zone}/options/{option_id}
GET
/baremetal/v1/zones/{zone}/settings
PATCH
/baremetal/v1/zones/{zone}/settings/{setting_id}
OS
An Operating System (OS) is the underlying software installed on your server. This command lists the IDs of the OS available for this server.
GET
/baremetal/v1/zones/{zone}/os
GET
/baremetal/v1/zones/{zone}/os/{os_id}
Partitioning-schemas
You have the possibility to customize server partitioning schema on some offers/os.
GET
/baremetal/v1/zones/{zone}/partitioning-schemas/default
POST
/baremetal/v1/zones/{zone}/partitioning-schemas/validate