Project

General

Profile

Actions

Feature #10767

closed

Allow to resize instances

Added by Evgeny Novikov about 3 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
High
Category:
Deployment
Target version:
Start date:
03/25/2021
Due date:
% Done:

0%

Estimated time:
Published in build:

Description

The new OpenStack cloud at ISP RAS supports resizing of instances. For us this is great since we need to grant more computational resources to complete verification much faster from time to time and v.v.

Moreover, we expect that there will be a dedicated set of flavors for Klever with small, medium and large sets of computational resources. Deployment scripts can suggest to use one of them, since at the moment users are not aware well how to choose flavors.

Actions #1

Updated by Ilya Shchepetkov almost 3 years ago

  • Status changed from New to Resolved
Implemented in the feature-10767 branch in the following way:
  • --flavor argument of the klever-deploy-openstack script is replaced by --vcpus , --ram and --disk arguments
  • default values for these arguments are: vcpus = 8 cores, ram = vcpus * 4 (if vcpus = 8, then ram = 32GB) and disk = 200GB
  • Klever instances almost always use 200GB disks , so you can leave this argument at its default value
  • RAM is calculated automatically based on VCPUs number, so unless you require some specific flavor - you should also leave this argument as is
  • so, the only argument, that will be realistically used: --vcpus , or amount of virtual CPU cores in the instance

Usage examples:

Create new instance with 16 cores, 64GB of RAM and 200GB disk:

klever-deploy-openstack --name "klever-10767" --vcpus 16 create instance

This is also equivalent to:

klever-deploy-openstack --name "klever-10767" --vcpus 16 --ram 64 --disk 200 create instance

Created instance can be resized by specifying new flavor (this will migrate instance to new host, so be sure that there are no running jobs):

klever-deploy-openstack --name "klever-10767" --vcpus 2 resize instance

If OpenStack doesn't contain flavor with required parameters (for example, there is no flavor with 4 VCPUs, 16GB of RAM and 200GB of disk space), then klever-deploy-openstack script will terminate, but print available flavors for you.

Actions #2

Updated by Evgeny Novikov almost 3 years ago

  • Status changed from Resolved to Closed

I tested resizing and everything seems to work well, so, I merged the branch to master in 80d486505. When #10768 will be solved, we will be able to create and use OpenStack instances very reliably and efficiently.

Actions #3

Updated by Evgeny Novikov almost 3 years ago

Ilya Shchepetkov wrote in #note-1:

Implemented in the feature-10767 branch in the following way:
  • --flavor argument of the klever-deploy-openstack script is replaced by --vcpus , --ram and --disk arguments
  • default values for these arguments are: vcpus = 8 cores, ram = vcpus * 4 (if vcpus = 8, then ram = 32GB) and disk = 200GB
  • Klever instances almost always use 200GB disks , so you can leave this argument at its default value
  • RAM is calculated automatically based on VCPUs number, so unless you require some specific flavor - you should also leave this argument as is
  • so, the only argument, that will be realistically used: --vcpus , or amount of virtual CPU cores in the instance

Usage examples:

Create new instance with 16 cores, 64GB of RAM and 200GB disk:
[...]

This is also equivalent to:
[...]

Created instance can be resized by specifying new flavor (this will migrate instance to new host, so be sure that there are no running jobs):
[...]

If OpenStack doesn't contain flavor with required parameters (for example, there is no flavor with 4 VCPUs, 16GB of RAM and 200GB of disk space), then klever-deploy-openstack script will terminate, but print available flavors for you.

This would be great to move this to documentation one day, since, few people will search this here.

Actions

Also available in: Atom PDF