In OpenStack, flavors define the compute, memory, and storage capacity of nova computing instances. To put it simply, a flavor is an available hardware configuration for a server. It defines the “size” of a virtual server that can be launched.
Note | |
---|---|
Flavors can also determine on which compute host a flavor can be used to launch an instance. For information about customizing flavors, refer to the OpenStack Cloud Administrator Guide. |
A flavor consists of the following parameters:
- Flavor ID
Automatically generated by OpenStack. For private flavors, a value from 1 to 255.
- Name
Name for the new flavor.
- VCPUs
Number of virtual CPUs to use.
- Memory MB
Amount of RAM to use (in megabytes).
- Root Disk GB
Amount of disk space (in gigabytes) to use for the root (/) partition.
- Ephemeral Disk GB
Amount of disk space (in gigabytes) to use for the ephemeral partition. If unspecified, the value is 0 by default.
Ephemeral disks offer machine local disk storage linked to the life cycle of a VM instance. When a VM is terminated, all data on the ephemeral disk is lost. Ephemeral disks are not included in any snapshots.
- Swap
Amount of swap space (in megabytes) to use. If unspecified, the value is 0 by default.
The default flavors are:
m1.tiny (1 VCPU/0 GB Disk/512 MB RAM)
m1.smaller (1 VCPU/0 GB Disk/1024 MB RAM)
m1.small (1 VCPU/10 GB Disk/2048 MB RAM)
m1.medium (2 VCPU/10 GB Disk/3072 MB RAM)
m1.large (4 VCPU/10 GB Disk/8192 MB RAM)
m1.xlarge (8 VCPU/10 GB Disk/8192 MB RAM)
You can create and manage flavors with the nova
flavor-* commands provided by the
python-novaclient
package.
List flavors to show the ID and name, the amount of memory, the amount of disk space for the root partition and for the ephemeral partition, the swap, and the number of virtual CPUs for each flavor.
$ nova flavor-list
To create a flavor, specify a name, ID, RAM size, disk size, and the number of VCPUs for the flavor, as follows:
$ nova flavor-create
FLAVOR_NAME
FLAVOR_ID
RAM_IN_MB ROOT_DISK_IN_GB
NUMBER_OF_VCPUS
Note The flavor ID is a number from 1 to 255 and cannot contain special characters or spaces.
For a list of optional parameters, run this command:
$ nova help flavor-create
After you create a flavor, assign it to a project by specifying the flavor name or ID and the tenant ID:
$ nova flavor-access-add
FLAVOR
TENANT_ID