Commit Graph

11 Commits

Author SHA1 Message Date
Balazs Gibizer 4324d42889 Add packet rate related resource classes
Added:
* NET_PACKET_RATE_KILOPACKET_PER_SEC
* NET_PACKET_RATE_EGR_KILOPACKET_PER_SEC
* NET_PACKET_RATE_IGR_KILOPACKET_PER_SEC

blueprint: qos-minimum-guaranteed-packet-rate
Change-Id: I1c035cf73cf73ad3fe0535d7ba5f1243fb816bea
2021-06-16 08:55:03 +02:00
Eric Fried c547287d75 Propose FPGA and PGPU resource classes
These will usually be inventoried by Cyborg.

Change-Id: Ic6603aa62ed17c3e916cf7c98016cabb3c01b1f6
blueprint: nova-cyborg-interaction
2019-07-11 20:56:08 +00:00
Adam Spiers 3c8a66a1c9 Add MEM_ENCRYPTION_CONTEXT resource class
Add a resource class representing the number of guests a compute node
can host concurrently with memory encrypted at the hardware level.

Initially this is required because on AMD SEV-capable hardware, the
memory controller has a fixed number of slots for holding encryption
keys, one per guest.  Typical hardware only has 15 slots, thereby
limiting the number of SEV guests which can be run concurrently to 15.
nova needs to track how many slots are available and used in order to
avoid attempting to exceeding that limit in the hardware.

In the future support may be added for equivalent functionality from
other vendors, such as Intel MKTME; however it is not yet known
whether MKTME would have a similar limit.

See

  http://specs.openstack.org/openstack/nova-specs/specs/train/approved/amd-sev-libvirt-support.html

for more details, and

  http://eavesdrop.openstack.org/irclogs/%23openstack-nova/%23openstack-nova.2019-04-23.log.html#t2019-04-23T20:35:19
  https://review.opendev.org/#/c/641994/

for the bike-shedding discussion over the name.

Change-Id: I97a015d4070db947e4b96fb35021da01d61016cc
blueprint: amd-sev-libvirt-support
2019-05-08 14:26:40 +00:00
Eric Fried 2d4672e5f3 Add normalize_name utility
The normalize_name utility provides consumers of os-resource-classes
with a way of generating a known-good name for a custom resource class.
This is equivalent to the os-traits utility of the same name [1].

[1] 9eab06df2f/os_traits/__init__.py (L113)

Change-Id: Id5557d65f11ed4dee10c8df2a42a4c485bfd65d1
2019-02-01 08:41:58 -06:00
bhagyashris b0c27a7d62 Add PCPU standard resource class
This patch adds a new standard resource class: PCPU

Partially Implements: blueprint cpu-resources
Change-Id: I7bf9ffaea7653870b3926a36d07771fc5016d74d
2019-01-21 10:11:31 +09:00
Chris Dent 3d038f5ccc Sync STANDARDS with placement/nova rc_fields
Two new standard resource classes were added in the time between when
os-resource-classes was first created and now. This change adds the
missing classes and adds a rather tedious sanity check to make sure
that tests are updated when adding new classes.

Change-Id: I00158c3167430e180040c71cd6e2d646f64372fa
2018-12-12 18:15:48 -05:00
Chris Dent df251458bf Rename ORDERED_CLASSES to STANDARDS
In earlier review of the proof of concept, STANDARDS was the
preferred name as it was more aligned with expectations set by
in-nova use of resource classes.

Change-Id: I0cca8b0f3b61389dcba8597808e79e0524611dab
2018-12-11 17:50:01 +00:00
Chris Dent 385310e1b0 Initial automated testing for os-resource-classes
Adjust tox settings for a reasonable set of job defaults.

Turn on the usual templates in .zuul.yaml

Correct small pep8 and docs issues to get tox jobs passing.

Change-Id: Id0ebeab2ec2439d52defe59096b07c3d0b7bc66d
2018-12-11 17:49:45 +00:00
Chris Dent a6f30f696b Set some real tests for the ids in ORDERED_CLASSES
The order of ORDERED_CLASSES is used to set ids in the database
or to map to existing ids already in the resource classes
database in placement.
2018-09-14 14:56:25 -06:00
Chris Dent 5fc979e641 Initial tuning from cookiecutter start
This adds in the initial stab of os_resource_classes.
2018-09-14 14:37:15 -06:00
Chris Dent 373e6d16d1 Initial Cookiecutter Commit. 2018-09-14 14:28:48 -06:00