En OpenStack, los sabores o flavor definen el cómputo, la memoria y la capacidad de almacenamiento de instancias de computación nova. Una explicación mas simple es, un sabor o flavor es una configuración de hardware disponible para un servidor,define el tamaño de un servidor virtual que se puede iniciar y le proporciona flexibilidad para elegir la combinación de recursos adecuada para sus aplicaciones, si se me permite la palabra, seria una especie de plantilla de hardware, mas o menos. Amazon y Azure también te proporcionan una amplia selección de tipos de instancias optimizadas.
Estos son algunos de los parámetros que se utilizan para crear un flavor:
Flavor ID: id (integer o UUID) , si no le indicas nada, te asignará un UUID automáticamente, yo prefiero indicarlo manualmente para seguir un orden de los flavor que ya están definidos
Name: nombre del flavor, parámetro obligatorio
VCPUs: numero de virtual CPU que va a utilizar, por defecto si no le indicas nada, le asignará una.
Memoria: Cantidad de memoria RAM, se le pasa en MB y es parámetro obligatorio
Disco Raíz: cantidad de espacio en disco y se le pasa en GB, es parámetro obligatorio
Hay mas parámetros opcionales, pero estos serian los mas importantes
En el laboratorio de hoy, quiero crear un nuevo flavor o sabor para 2 imágenes configuradas con la misma memoria y el mismo tamaño de disco
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
[root@OpenStack ~(keystone_admin)]# openstack image show Ubuntu && openstack image show Xubuntu +------------------+------------------------------------------------------+ | Field | Value | +------------------+------------------------------------------------------+ | checksum | c3826c09999e3f8e1936a2e9540720d4 | | container_format | bare | | created_at | 2018-05-09T20:02:29Z | | disk_format | qcow2 | | file | /v2/images/4fe2c357-68b2-406b-8d5c-618be1099ca9/file | | id | 4fe2c357-68b2-406b-8d5c-618be1099ca9 | | min_disk | 10 | | min_ram | 256 | | name | Ubuntu | | owner | 770aa8e579af40d6a1833fc7310d2170 | | properties | description='Ubuntu17.04' | | protected | False | | schema | /v2/schemas/image | | size | 10739318784 | | status | active | | tags | | | updated_at | 2018-05-09T20:03:58Z | | virtual_size | None | | visibility | public | +------------------+------------------------------------------------------+ +------------------+------------------------------------------------------+ | Field | Value | +------------------+------------------------------------------------------+ | checksum | d427572177441e2f698b2ba9cd30eb5b | | container_format | bare | | created_at | 2018-05-09T19:48:29Z | | disk_format | qcow2 | | file | /v2/images/0693014a-8b63-480d-8fd4-f46dd355a1bd/file | | id | 0693014a-8b63-480d-8fd4-f46dd355a1bd | | min_disk | 10 | | min_ram | 256 | | name | Xubuntu | | owner | 770aa8e579af40d6a1833fc7310d2170 | | properties | description='Xubuntu 16.04' | | protected | False | | schema | /v2/schemas/image | | size | 9665380352 | | status | active | | tags | | | updated_at | 2018-05-09T19:57:26Z | | virtual_size | None | | visibility | public | +------------------+------------------------------------------------------+ |
Primero vamos a ver que tipos de flavor tenemos predefinidos. Lo que quiero es crear un flavor que este entre el m1.tiny y el m1.small.
1 2 3 4 5 6 7 8 9 10 |
[root@OpenStack ~(keystone_admin)]# openstack flavor list +----+-----------+-------+------+-----------+-------+-----------+ | ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public | +----+-----------+-------+------+-----------+-------+-----------+ | 1 | m1.tiny | 512 | 1 | 0 | 1 | True | | 2 | m1.small | 2048 | 20 | 0 | 1 | True | | 3 | m1.medium | 4096 | 40 | 0 | 2 | True | | 4 | m1.large | 8192 | 80 | 0 | 4 | True | | 5 | m1.xlarge | 16384 | 160 | 0 | 8 | True | +----+-----------+-------+------+-----------+-------+-----------+ |
Ejecutamos el siguiente comando, para crear un flavor con 1 GB de Ram, 10 GB de disco y una vCPU, el id sera siguiendo el orden de los flavors ya creados.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
[root@OpenStack ~(keystone_admin)]# openstack flavor create m2.small --id 6 --ram 1024 --disk 10 --vcpus 1 --public +----------------------------+----------+ | Field | Value | +----------------------------+----------+ | OS-FLV-DISABLED:disabled | False | | OS-FLV-EXT-DATA:ephemeral | 0 | | disk | 10 | | id | 6 | | name | m2.small | | os-flavor-access:is_public | True | | properties | | | ram | 1024 | | rxtx_factor | 1.0 | | swap | | | vcpus | 1 | +----------------------------+----------+ [root@OpenStack ~(keystone_admin)]# |
Una vez creado el nuevo flavor, comprobamos que se ha creado correctamente.
1 2 3 4 5 6 7 8 9 10 11 12 |
[root@OpenStack ~(keystone_admin)]# openstack flavor list +----+-----------+-------+------+-----------+-------+-----------+ | ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public | +----+-----------+-------+------+-----------+-------+-----------+ | 1 | m1.tiny | 512 | 1 | 0 | 1 | True | | 2 | m1.small | 2048 | 20 | 0 | 1 | True | | 3 | m1.medium | 4096 | 40 | 0 | 2 | True | | 4 | m1.large | 8192 | 80 | 0 | 4 | True | | 5 | m1.xlarge | 16384 | 160 | 0 | 8 | True | | 6 | m2.small | 1024 | 10 | 0 | 1 | True | +----+-----------+-------+------+-----------+-------+-----------+ [root@OpenStack ~(keystone_admin)]# |
Saludos y espero que os guste.
fuente: Curso Oficial OpenStack de Virtualiza desde zero.