Upload and create an image
You can upload the following images to the Selectel image storage:
You can create a disk image from any local or network cloud server disk.
The disk can be either a boot or an extra disk.
Such an image can be used for:
- for quick setup of identical cloud servers — cloning a server. If the operating system and software are installed on a server, you can deploy already configured servers from the boot disk image. This is faster than configuring the necessary setup for multiple servers;
- changing the boot disk type;
- transferring a server to other pools, projects, or accounts;
- exporting a cloud server network volume;
- if the image from which the server was previously created is deleted, you can create an image from the server disk and, if necessary, create an identical cloud server.
Limitations
When uploading an image to the Selectel image storage from a file or via a link, the image size must be less than 2048 GB (2 TB).
If you need to upload an image from a larger file, upload it via S3.
You can create an image from a disk smaller than 2048 GB (2 TB).
Upload an image from a file
In the Selectel image storage, an image can be uploaded from a file of a specific size from your local computer. Read more about image size limitations in the Limitations subsection.
Control panel
OpenStack CLI
-
In the Control panel, on the top menu, click Products and select Cloud Servers.
-
Go to the Images section.
-
Click Create image.
-
Enter the image name.
-
Select a location to upload the image to.
Images smaller than 16 GB are automatically replicated to adjacent pool segments in the location.
-
Select an operating system.
-
Select a file as the image source.
-
Click Upload.
-
Select the image format or container format. Read more about formats in the Custom images subsection.
If you are uploading an archive with the
.ovacontainer format, we recommend unpacking the archive before uploading so the image works correctly.If you are not sure which formats to specify, specify the
rawimage format and thebarecontainer format. -
Optional: select the Specify minimum disk and memory size checkbox and specify the RAM in MB and disk size in GB. This is the minimum disk and RAM size required to create a server from this image. For images in
.isoformat, you cannot specify minimum values.After an image is created, you cannot change the minimum disk and memory size in the Control panel. To change the minimum values, you will need to recreate the image or use the OpenStack CLI.
-
Click Create.
Upload an image via a link
In the Selectel image storage, an image can be uploaded via a public link to a file of a specific size containing an image. Read more about image size limitations in the Limitations subsection.
Control panel
OpenStack CLI
-
In the Control panel, on the top menu, click Products and select Cloud Servers.
-
Go to the Images section.
-
Click Create image.
-
Enter the image name.
-
Select a location to upload the image to.
Images smaller than 16 GB are automatically replicated to adjacent pool segments in the location.
-
Select an operating system.
-
Select a URL as the image source.
-
Enter a link to the image file in the
https://example.com/file.rawformat. -
Select the image format or container format. Read more about formats in the Custom images subsection.
If you are uploading an archive with the
.ovacontainer format, we recommend unpacking the archive before uploading for the image to work correctly.If you are not sure which formats to specify, specify the
rawimage format and thebarecontainer format. -
Optional: select the Specify minimum disk and memory size checkbox and specify the RAM in MB and disk size in GB. This is the minimum disk and RAM size required to create a server from this image. For images in
.isoformat, you cannot specify minimum values.After an image is created, you cannot change the minimum disk and memory size in the Control panel. To change the minimum values, you will need to recreate the image or use the OpenStack CLI.
-
Click Create.
Upload an image via S3
-
Upload the image to S3 using segmented upload.
-
In the request output, copy the value in the
X-Subject-Tokenfield. -
Open CLI on your local computer.
-
Create an image via API:
curl 'https://<pool>.cloud.api.selcloud.ru/image/v2/images' \-H 'X-Auth-Token: <x_auth_token>' \-H 'Content-Type: application/json;charset=utf-8' \--data '{"name":"<image_name>","disk_format":"<image_format>","container_format":"<container_format>"}'Specify:
-
<pool>— pool where the image will be uploaded, for exampleru-1(see the URL in the URL list). The list of available pools can be viewed in the Selectel Infrastructure table; -
<x_auth_token>— IAM token for the project that you copied in step 3; -
<image_name>— image name; -
<image_format>— image format. Read more about image formats in the Custom images subsection. If you are not sure which format to specify, specifyraw; -
<container_format>— container format. Read more about container formats in the Custom images subsection.If you are uploading an archive with the
.ovacontainer format, we recommend unpacking the archive before uploading for the image to work correctly.If you are not sure which format to specify, specify
bare.
-
-
In the request output, copy the value in the
idfield. -
Upload the image to the image storage:
curl 'https://<pool>.cloud.api.selcloud.ru/image/v2/images/<image_id>/import' \-X POST \-H 'Content-Type: application/octet-stream' \-H 'X-Image-Meta-Store: <pool_segment>' \-H 'X-Auth-Token: <x_auth_token>' \--data-raw '{"method":{"name":"web-download","uri":"<object_storage_url>"}}'Specify:
<pool>— pool where the image will be uploaded, for exampleru-1(see the URL in the URL list). The list of available pools can be viewed in the Selectel Infrastructure table;<image_id>— ID of the image that you copied in step 6;<pool_segment>— pool segment where the image will be uploaded, for exampleru-1a. The list of available pool segments can be viewed in the Selectel Infrastructure table;<x_auth_token>— IAM token that you copied in step 3;<object_storage_url>— link to the image in S3 likehttps://<uuid>.selstorage.ru/container_name/object_name, which you obtained in step 7.
Upload vmdk from a file or via a link
Read more about image size limitations in the Limitations subsection.
Control panel
OpenStack CLI
-
Export the virtual machine from VMware in
.ovfformat. Read more in the Export an OVF Template section of the VMware documentation.If the virtual disk is
MONOLITHIC_SPARSEorMONOLITHIC_FLAT, you can skip this step, but we recommend exporting the VM in.ovfformat. -
In the Control panel, on the top menu, click Products and select Cloud Servers.
-
Go to the Images section.
-
Click Create image.
-
Enter the image name.
-
Select a location to upload the image to.
Images smaller than 16 GB are automatically replicated to adjacent pool segments in the location.
-
Select an operating system.
-
Select a file or URL as the image source.
-
If you selected a file, click Upload. If you selected a URL, enter the link to the image file in the
https://example.com/file.rawformat. -
Select the image format:
vmdk— if the virtual machine was exported from VMware in.ovfformat or you are uploading a virtual disk of typeMONOLITHIC_SPARSE;raw— if you are uploading a virtual disk of typeMONOLITHIC_FLAT.
-
Select the container format:
ovf— if the virtual machine was exported from VMware in.ovfformat;bare— if you are uploading a virtual disk of typeMONOLITHIC_SPARSEorMONOLITHIC_FLAT.
-
Optional: select the Specify minimum disk and memory size checkbox and specify the RAM in MB and disk size in GB. This is the minimum disk and RAM size required to create a server from this image. For images in
.isoformat, you cannot specify minimum values.After an image is created, you cannot change the minimum disk and memory size in the Control panel. To change the minimum values, you will need to recreate the image or use the OpenStack CLI.
-
Click Create.
Create an image from a disk
See the limitations on the disk size you can create an image from.
Control panel
OpenStack CLI
The image creation process depends on the disk type.
Local disk
Network volume
-
If the disk is connected to a cloud server, we recommend turning off the cloud server — an inconsistent image may be created from a running disk.
-
In the Control panel, on the top menu, click Products and select Cloud Servers.
-
Go to the Servers section.
-
In the server's menu, select Create local disk image.
-
Enter the image name.
-
Optional: select the Specify minimum disk and memory size checkbox and specify the RAM in MB and disk size in GB. This is the minimum disk and RAM size required to create a server from this image. For images in
.isoformat, you cannot specify minimum values. -
Click Create.