Skip to main content

Cloud server with Data Science VM

Last update:

Data Science Virtual Machine (DSVM) is a pre-configured cloud server with an operating system and pre-installed tools for machine learning (ML) developers and data analysts.

The image from which the server is deployed contains:

Preset tools

Tasks to be solved

  • development of applications for chatbots, recommendation services, recognizing objects in photos and videos, speech synthesis and recognition, and prediction services;
  • ML model training;
  • performing experiments with the data.

Minimum resource requirements

Number of vCPUs2
RAM4 GB.
Boot disk40 GB.
GPU availabilityObligatory

Create a cloud server with Data Science VM

  1. In the dashboard, on the top menu, click Products and select Cloud Servers.

  2. Click Create Server.

  3. Fill in the blocks:

  4. Check the price of the cloud server.

  5. Click Create.

Name and location

  1. Enter the server name. This will be set as the host name in the operating system.

  2. Select the location where the server will be created. The list of available server configurations and the cost of resources depends on the location. Once the server is created, the location cannot be changed.

Source

  1. Open the Applications tab.

  2. Select Data Science VM.

  3. Optional: if you need another current or archived version of the application, select the desired version in the Version field.

Configuration

Select a GPU ruler configuration from 1 vCPU, RAM от 8 ГБ and размером загрузочного диска от 80 ГБ. Two types of server configurations are available for the ruler:

  • fixed configurations - line configurations with different specifications in which the resource ratio is fixed;
  • arbitrary configurations - configurations in which any resource ratio can be specified.

The configurations use different processors depending on the line and pool segment. You can customize the selected configuration. After the server is created, you can change the configuration.

  1. Open the tab with the GPU ruler.

  2. Click Fixed.

  3. Optional: you can customize the configuration if you create a server in pool segments ru-3b, ru-7a and ru-7b:

    3.1 Expand the block with description of configuration settings.

    3.2 Optionally: select the processor manufacturer. Manufacturer selection is not available in all pools.

    3.3 Optional: If you do not want the vCPU of the cloud server to be assigned to physical CPU cores, clear the Dedicated Cores checkbox. See the Dedicated Cores instruction for more information.

    3.4 Optional: If you want to disable Hyper-Threading for a server with dedicated cores, clear the Hyper-Threading (SMT) checkbox .

    3.5 Optional: if you create a server with dedicated cores and want to place a multiprocessor server on one NUMA-node, check the checkbox Mandatory placement on one NUMA-node. You can host a server with 4 vCPUs or more on a single NUMA-node. If cloud server resources cannot be placed on a single node, it will not be created. For more information, see the Placement on a single NUMA node section of the Dedicated Cores tutorial.

  4. Select GPU.

  5. Select a configuration.

  6. If both local and network disks are available in the selected configuration, select the disk to be used as the boot disk:

    • local disk - check the box Local SSD NVMe disk. A server with a local disk can only be created from images and applications;
    • network drive - do not check the checkbox.

    The amount of RAM allocated to the server may be less than the amount specified in the configuration - the operating system kernel reserves some RAM depending on the kernel version and distribution. You can check the allocated amount on the server with sudo dmesg | grep Memory.

Disks

  1. If you did not check the Local SSD NVMe disk checkbox when setting up the configuration, the first specified network disk will be used as the server boot disk. To configure it:

    1.1 Select the type of network boot disk.

    1.2 Specify the size of the network boot disk in GB or TB. Observe the maximum size limits of network disks.

    1.3 If you selected the Universal v2 disk type, specify the total number of read and write operations in IOPS. After creating a disk, you can change the number of IOPS - decrease or increase. There is no limit to the number of IOPS changes.

  2. Optional: add an additional network disk server :

    2.1 Click Add.

    2.2 Select the type of network disk.

    2.3. Specify the size of the network disk in GB or TB. consider the maximum size limits of network drives.

    2.4 If you selected the Universal v2 disk type, specify the total number of read and write operations in IOPS. After creating a disk, you can change the number of IOPS - decrease or increase. There is no limit to the number of IOPS changes.

    After the server is created, you can connect new additional disks.

Network

A server can be added to a new subnet or to an existing subnet. The subnet can be:

  • private - a subnet without access from the Internet or with a single static public IP address. The IP address connects to a server that will be accessible from the Internet;
  • public - a subnet in which all addresses are accessible from the Internet.
  1. Click Private Subnet.

  2. In the Public IP address for access from the Internet field, select the subnet type:

    • The new public IP address is a private subnet with a static public IP address. Only the server to which the public IP address is connected will be accessible from the Internet;
    • No public IP address - a private subnet with no access from the Internet. You cannot connect to the server from the Internet, including via SSH or RDP.
  3. To add a server to an existing private subnet:

    3.1 Expand the private subnet settings block.

    3.2 Select an existing subnet in the Subnet field.

    3.3 In the Private IP field, specify the private IP address of the server. For a private subnet with a public IP address, the public address will be automatically connected to the private address;

  4. To add a server to a new private subnet on an existing network:

    4.1 Expand the private subnet settings block.

    4.2. In the Subnet field, select New Subnet.

    4.3 Optional: Change the CIDR of the subnet.

    4.4 Optionally: enable the DHCP toggle switch.

    4.5 Optionally: in the Gateway field, change the IP address of the default gateway.

    4.6. In the Network field, select the existing network where the subnet will be created or New network. For a private subnet with a public IP address, router-<network_name>, where <network_name> is the network name, will be automatically created.

    4.7. If you selected New Network, enter a network name.

  5. To add a server to a new network and private subnet:

    5.1 Expand the private subnet settings block.

    5.2 Optional: Change the CIDR of the subnet.

    5.3 Optionally: enable the DHCP toggle switch.

    5.4 Optionally: in the Gateway field, change the IP address of the default gateway.

    5.5. In the Network field, select New Network to create a new network and private subnet.

    5.6 Enter the network name. For a private subnet with a public IP address, router-<network_name>, where <network_name> is the network name, will be automatically created.

Safety

Select security groups to filter traffic on server ports. Without security groups, traffic will not be allowed. If there is no block, port security is disabled on the server network . With traffic filtering disabled, all traffic will be allowed.

Access

  1. Place an SSH key for the project on the server for secure connection:

    1.1 If the SSH key for the project is not added to the cloud platform, click Add SSH Key, enter the key name, insert the public key in OpenSSH format, and click Add.

    1.2 If an SSH key for the project is added to the cloud platform, select an existing key in the SSH key field. The SSH key is available only in the pool in which it is hosted.

  2. Optional: in the Password field for "root":

    2.1 Copy the password of the root user - a user with unlimited rights to all actions on the system.

    2.2 Save the password in a safe place and do not transmit it in public.

Additional settings

  1. If you plan to create multiple servers and want to improve the fault tolerance of your infrastructure, add the server to a placement group:

    1.1 To create a new group, in the Placement Group field, click New.

    1.2. Select New Group and enter a group name.

    1.3 Select a policy for hosting on different hosts:

    • preferably soft-anti-affinity. The system will try to place servers on different hosts. If there is no suitable host when creating a server, it will be created on the same host;
    • anti-affinity is mandatory. Servers in a group must be located on different hosts. If there is no suitable host when creating a server, the server will not be created.

    1.4 If a group has been created, select the placement group in the Placement Group field.

  2. To add additional information or filter servers in the list, add server tags. Operating system and configuration tags are automatically added. To add a new tag, enter a tag in the Tags field.

  3. To add a script that will be executed by the cloud-init agent when the operating system first starts up, in the Automation block in the User data field:

    • open the Text tab and paste the script with text;
    • or open the File tab and upload the file with the script.

Start JupyterLab

  1. Open the page http://<ip_address> in your browser.

    Specify <ip_address> - the public IP address of the cloud server. You can copy it in the control panel: in the top menu, click ProductsCloud Servers → Server page → Ports tab → in the port card, click next to the public IP address.

  2. Enter the password - UUID of the server. You can copy in the control panel: in the top menu click ProductsCloud Servers → in the server card click next to the UUID.