Skip to main content

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 additional disk.

Such an image can be used for:

  • for quick setup of identical cloud servers — server cloning. If an operating system and software are installed on the server, you can deploy already configured servers from a boot disk image. This is faster than configuring the required settings 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

You can upload an image of a specific size to Selectel image storage from a local computer. Learn more about image size limitations in the Limitations section.

  1. In the control panel, in the top menu, click Products and select Cloud Servers.

  2. Go to Images.

  3. Click Create image.

  4. Enter the image name.

  5. Select the location where the image will be uploaded.

    Images smaller than 16 GB are automatically replicated to adjacent pool segments in the location.

  6. Select an operating system.

  7. Select a file as the image source.

  8. Click Upload.

  9. Select the image format or container format. Learn more about formats in the Custom images section.

    If you are uploading an archive with the .ova container format, we recommend unpacking the archive before uploading so that the image works correctly.

    If you do not know which formats to specify, specify the image format raw and container format — bare.

  10. Optional: select the Specify minimum disk and memory size checkbox and specify the RAM size 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 the .iso format, minimum values cannot be specified.

    After creating an image, 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.

  11. Click Create.

You can upload an image of a specific size to Selectel image storage via a public link to the image file. Learn more about image size limitations in the Limitations section.

  1. In the control panel, in the top menu, click Products and select Cloud Servers.

  2. Go to Images.

  3. Click Create image.

  4. Enter the image name.

  5. Select the location where the image will be uploaded.

    Images smaller than 16 GB are automatically replicated to adjacent pool segments in the location.

  6. Select an operating system.

  7. Select a URL as the image source.

  8. Enter the link to the image file in the https://example.com/file.raw format.

  9. Select the image format or container format. Learn more about formats in the Custom images section.

    If you are uploading an archive with the .ova container format, we recommend unpacking the archive before uploading so that the image works correctly.

    If you do not know which formats to specify, specify the image format raw and container format — bare.

  10. Optional: select the Specify minimum disk and memory size checkbox and specify the RAM size 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 the .iso format, minimum values cannot be specified.

    After creating an image, 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.

  11. Click Create.

Upload an image via S3

  1. Upload the image to S3 via segmented upload.

  2. Get an IAM token for a project (X-Auth-Token).

  3. In the response output, copy the value from the X-Subject-Token field.

  4. Open CLI on your local computer.

  5. 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 example, ru-1. The list of available pools can be viewed in the Selectel infrastructure section of the Locations: Countries, regions, availability zones, pools and data center addresses;

    • <x_auth_token> — IAM token for the project that you copied in step 3;

    • <image_name> — image name;

    • <image_format> — image format. Learn more about image formats in the Custom images section. If you do not know which format to specify, specify raw;

    • <container_format> — container format. Learn more about container formats in the Custom images section.

      If you are uploading an archive with the .ova container format, we recommend unpacking the archive before uploading so that the image works correctly.

      If you do not know which format to specify, specify bare.

  6. In the response output, copy the value from the id field.

  7. Get a link to the image in S3.

  8. 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:

Upload vmdk from a file or via a link

Learn more about image size limitations in the Limitations section.

  1. Export the virtual machine from VMware in the .ovf format. Learn more in the Export an ovf Template guide in VMware documentation.

    If the virtual disk type is MONOLITHIC_SPARSE or MONOLITHIC_FLAT, you can skip this step, but we recommend exporting the VM in the .ovf format.

  2. In the control panel, in the top menu, click Products and select Cloud Servers.

  3. Go to Images.

  4. Click Create image.

  5. Enter the image name.

  6. Select the location where the image will be uploaded.

    Images smaller than 16 GB are automatically replicated to adjacent pool segments in the location.

  7. Select an operating system.

  8. Select a file or URL as the image source.

  9. If you selected a file, click Upload. If you selected a URL, enter the link to the image file formatted as https://example.com/file.raw.

  10. Select the image format:

    • vmdk — if the virtual machine was exported from VMware in the .ovf format, or if you are uploading a virtual disk of type MONOLITHIC_SPARSE;
    • raw — if you are uploading a virtual disk of type MONOLITHIC_FLAT.
  11. Select the container format:

    • ovf — if the virtual machine was exported from VMware in the .ovf format;
    • bare — if you are uploading a virtual disk of type MONOLITHIC_SPARSE or MONOLITHIC_FLAT.
  12. Optional: select the Specify minimum disk and memory size checkbox and specify the RAM size 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 the .iso format, minimum values cannot be specified.

    After creating an image, 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.

  13. Click Create.

Create an image from a disk

See the limitations on the disk size from which an image can be created.

The image creation process depends on the disk type.

  1. If the disk is attached to a cloud server, we recommend shutting down the cloud server — creating an image from a running disk may result in an inconsistent image.

  2. In the control panel, in the top menu, click Products and select Cloud Servers.

  3. Go to Servers.

  4. In the server menu, select Create local disk image.

  5. Enter the image name.

  6. Optional: select the Specify minimum disk and memory size checkbox and specify the RAM size 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 the .iso format, minimum values cannot be specified.

  7. Click Create.