* min value was set in consts
* appropriate validator was added
* tests for validator were changed
* test for serializer were changed
Change-Id: Ib8ccb0658bd401ce492257f855013d1d7e0f2dac
Closes-Bug: #1653081
* min value was set in openstack.yaml
* appropriate validator was added
* tests for validator were changed
* migration node and release attributes was added
* tests for migration were added
Change-Id: Iec723c7f02e874bf8567665a30af30c61aff7f34
Closes-Bug: #1653081
If there is no specified hugepages or CPU pinning
distributors shouldn't be called. Also changed
initialization of custom_hugepages type.
Change-Id: Iedb819b1da7dcb3877a6a94b9e7cfb93aa949a9e
Closes-Bug: #1594443
(cherry picked from commit 661ce479a6)
Provide ability for plugins to add additional attributes for nodes.
* Added new NodeAttributesDefaultsHandler handler for getting
default node attributes.
* Added code stuff for getting and updating additional plugin
node attributes.
* Added code stuff to serialize plugin node attributes for orchestrator.
Change-Id: I5c6d6f3c815a034683e624b98fa1f360ab4b491c
Implements: blueprint nics-and-nodes-attributes-via-plugin
CPU distribution mechanism should be changed due
to incorect requirements to nova and dpdk CPUs allocation
Changes:
* Change CPU distribution
* Add function for recognizing DPDK NICs for node
* Remove requirement of enabled hugepages for
DPDK NICs (it's checked before deployment)
* Change HugePages distribution. Now it take into
account Nova CPUs placement
Requirements Before:
DPDK's CPUs should be located on the same NUMAs as
Nova CPUs
Requirements Now:
1. DPDK component CPU pinning has two parts:
* OVS pmd core CPUs - These CPUs must be placed on the
NUMAs where DPDK NIC is located. Since DPDK NIC can
handle about 12 Mpps/s and 1 CPU can handle about
3 Mpps/s there is no necessity to place more than
4 CPUs per NIC. Let's name all remained CPUs as
additional CPUs.
* OVS Core CPUs - 1 CPU is enough and that CPU should
be taken from any NUMA where at least 1 OVS pmd core
CPU is located
2. To improve Nova and DPDK performance, all additional CPUs
should be distributed along with Nova's CPUs as
OVS pmd core CPUs.
Change-Id: Ib2adf39c36b2e1536bb02b07fd8b5af50e3744b2
Closes-Bug: #1584006
Since Nailgun contains attributes restriction
mechanism it's possible to verify attributes
restrictions. This commit applies restrictions
checks into validation for both node attributes
and cluster attributes.
Change-Id: I269da9a7a7df5fea336c07784b37d6ced1641993
Closes-Bug: #1567394
nailgun.errors have a huge set of exceptions but without hierarchy. This
patch remove exception generation from dict and make it explicitly with
python classes and add some exceptions hierarchy. Now all network errors
inherit from NetworkException and same for other exceptions.
Change-Id: I9a2c6b358ea02a16711da74562308664ad7aed97
Closes-bug: #1566195
There are plenty of problems with converting.
Since UI can work with type of number,
node attributes can be changed to number type.
Depends-On: I0866aa01df23ac944bc5f134aec49311791a4b36
Change-Id: Ibc7578f5587fc75c97cb62530a0219059e33c477
Closes-Bug: #1565518
UI doesn't support such type and became broken after merge of the original patch.
Closes-Bug: #1564847
This reverts commit b04a2541fe.
Change-Id: I06417e0c48c9c1d24223b93c0c4c8b9d437b200c
Validator checks that node have enough memory to allocate all required
hugepages
Change-Id: I6b4e963548a673d3a86d3b4cc06529701c8d0a85
Implements: blueprint support-hugepages
Depends-On: Id5898f0b3e193fbd6267975d0ec70ef72cbce789
Validator checks that node have enough cpus and at least one unassigned
cpu for operating system.
Change-Id: Ie4ee247de55882232e256ed8744edf997c170c40
Implements: blueprint support-numa-cpu-pinning
Depends-On: I3502f484bd0d8222ad22500f42cc16cfb751042f