Commit Graph

93 Commits

Author SHA1 Message Date
Andreas Jaeger e61cc055ab Retire repository
Fuel (from openstack namespace) and fuel-ccp (in x namespace)
repositories are unused and ready to retire.

This change removes all content from the repository and adds the usual
README file to point out that the repository is retired following the
process from
https://docs.openstack.org/infra/manual/drivers.html#retiring-a-project

See also
http://lists.openstack.org/pipermail/openstack-discuss/2019-December/011647.html

Depends-On: https://review.opendev.org/699362
Change-Id: I10917e42829b459c41ca46514faa72fc46abf7be
2019-12-18 09:52:23 +01:00
Mikhail 9c51c8e22b Serialize mtu for dpdk interface with 'i40e' driver
On NIC: XL710 with driver 'i40e'  MTU does not take into
account 4 bytes VLAN tag, so we should increase it manually

DocImpact
Change-Id: I3d95db9ec6fae4d8cd397c429d785dbdf1502b21
Partial-Bug: #1587310
Co-Authored-By: Fedor Zhadaev <fzhadaev@mirantis.com>
2017-03-06 12:01:47 +00:00
Anastasiya d2a5333e99 Limit the minimal RAM amount for OVS+DPDK to 1024MB
* 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
2017-02-07 16:42:01 +00:00
Anastasia Balobashina 092acaa562 Revert "Limit the minimal RAM amount for OVS+DPDK to 1024MB"
This reverts commit 6e4ef67269.

Change-Id: Ib9144e2becebfa9b4817e8389419892c0daadd35
Closes-Bug: #1656804
2017-01-19 12:54:31 +04:00
Jenkins 8131924e6d Merge "Ensure that 'dpdk' in serialization before update" 2017-01-18 09:11:58 +00:00
Timur Nurlygayanov d1de5e7e79 Ensure that 'dpdk' in serialization before update
Change-Id: I8c14c25e08defc3c6533f7fbe7ba5f34120e098e
Closes-Bug: #1656783
2017-01-17 20:45:34 +04:00
Jenkins 3529f71f3b Merge "Serialization of OpenstackConfig configuration_options handled" 2017-01-17 14:45:07 +00:00
Dmitry Ukov 54a13c6b97 Serialization of OpenstackConfig configuration_options handled
This is the first step for handling arbitrary data structures
in OpenstackConfig. At this moment we are handling explicit
serialization of the configuration_options.
The future steps are:

- changing configuration data format in the Fuel CLI
- data migration in the Fuel DB
- changing configuration data serialization in Fuel

The future steps are planned to be done for the Fuel 10 release

Change-Id: I6961e3d7a2bc5ae8b9c668c67a0ab5c23792f5b1
Co-Authored-By: Alexander Kislitsky <akislitsky@mirantis.com>
2017-01-17 10:59:35 +03:00
Sergey Abramov 6266d27f15 Serialize only active configs
DeploymentLCMSerializer should return only active OpenstackConfigs

Change-Id: I2adee9e8a40f4295e807a5ff7a2e060793e55b24
Closes-bug: 1632235
2017-01-12 13:10:51 +00:00
Jenkins ead3c8e52a Merge "Conform tests to the 11/ocata release" 2017-01-12 11:59:22 +00:00
Jenkins b6a3b79414 Merge "Add ability to override cpu_masks in node attributes" 2017-01-11 12:39:32 +00:00
Anastasiya 6e4ef67269 Limit the minimal RAM amount for OVS+DPDK to 1024MB
* 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
2017-01-10 16:01:56 +00:00
Anastasiya d56ab1b07d Serialize max queues count for dpdk interfases
We need to configure queues count on dpdk interfaces.
The count should be limited by max supported queues
value on DPDK NIC and number of CPUs for DPDK usage.

Change-Id: I9b3160b7e0659d11445ca3927aa38e523a93b3a9
Partial-Bug: #1643920
Depends-On: Iffa1a6c872b46230de6e9ab3b8f34cb727661571
2017-01-06 10:41:07 +04:00
Fedor Zhadaev 3e1afb84ca Add ability to override cpu_masks in node attributes
Add ability to override generated values for 'ovs_core_mask'
and 'ovs_pmd_core_mask'.

Change-Id: Ifdc3b45bf4ec5bc3da31966c17be6fd18fc97b39
Closes-bug: #1648371
2016-12-27 11:16:33 +00:00
Jenkins 3522395af3 Merge "Replace dpdk driver to vfio-pci if sriov is enabled" 2016-12-23 08:42:35 +00:00
Anastasiya 53f2fe91c9 Replace dpdk driver to vfio-pci if sriov is enabled
Change-Id: Ic87b926b4f547f91b2f130830b35fafc195ada92
Partial-Bug: #1583077
2016-12-16 16:10:24 +04:00
Michael Polenchuk 16b9f6d8f2 Conform tests to the 11/ocata release
Serialization related tests have been conformed
to the 11/ocata release.

Change-Id: I249b15b799da3b649c5843f71d8eabf8b460f510
Related-Bug: #1638036
2016-12-16 16:06:40 +04:00
Evgeny L 77e29ab206 Use only first two number from version in repositories file names
Otherwise during plugin update it creates multiple repository files.

Closes-bug: #1513956
Change-Id: Ie2e8288b3b701f07cb3c180e9b919860b7db562e
2016-12-09 18:03:12 +00:00
Jenkins eccfa85d64 Merge "Bugfix attr rename" 2016-12-06 12:27:34 +00:00
Sergey Abramov 4c3d4bdace Bugfix attr rename
rename node attr from replaced_provision_info to
replaced_provisioning_info

Change-Id: I3e714fc6f6454eeb46797f3be10b1c20385a5e18
Closes-bug: 1643143
2016-12-01 10:42:54 +00:00
Andriy Popovych e36d3e4edd Serialization for NIC and Bond attributes
Add plugin's NIC and Bond attributes in serialized data
for orchestrator.

Change-Id: I9b6543cfc443929cd9d64d8578e2fec3be43bf19
Implements: blueprint nics-and-nodes-attributes-via-plugin
2016-11-30 18:38:52 +02:00
Jenkins 4ed6b4570a Merge "Bond attributes in interface API" 2016-11-30 16:09:44 +00:00
Jenkins e23a78c0eb Merge "Support for plugin NIC attributes" 2016-11-30 16:09:09 +00:00
Andriy Popovych 0fac7bdba5 Bond attributes in interface API
Remove restrictions on set of BOND properties. Now BOND can have
any attributes.
Remove redundant `bond_properties`.

Change-Id: I60d1a0628d84c5ba49bb5b45824d660297dacccc
Implements: blueprint nics-and-nodes-attributes-via-plugin
2016-11-30 11:39:35 +02:00
Andriy Popovych 703290986f Support for plugin NIC attributes
Refactor interface logic:
  * remove interface_properties
  * CRUD operations for NIC attributes
  * default values for NIC meta and attributes

Change-Id: I26106f1b55c704a9e79d01fadc48c88a92ccc414
Implements: blueprint nics-and-nodes-attributes-via-plugin
2016-11-29 10:37:57 +02:00
Artur Svechnikov a6434023f1 Skip empty cpu pinning and hugepages
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)
2016-11-29 06:37:12 +00:00
Mikhail da99f08f74 Add default tags
Tags for rabbitmq, database, keystone and neutron.

Change-Id: I13861e55bcdfded55597e8c696ac05c1c5892f00
Implements: blueprint role-decomposition
2016-11-23 23:59:41 +03:00
Ryan Moe 2b0242f645 Resolve tasks by role tags
This commit switching tasks resolution approach to the tags based one.
Tag - minimal unit what's necessary only for task resolution and can be
mapped to the node through the role interface only. Each role provides set
of tags in its 'tags' field and may be modified via role API. Tag may be
created separately via tag API, but, this tag can not be used unless it's
stuck to the role.

Change-Id: Icd78fd124997c8aafb07964eeb8e0f7dbb1b1cd2
Implements: blueprint role-decomposition
2016-11-17 18:07:30 +03:00
Mikhail Zhnichkov e032d4f6e8 Revert "Add default tags"
This reverts commit 508dccf9b2.

Change-Id: I63a87f8ca4dbcbff3ce1da36078aa3fd9520566e
2016-11-08 12:42:36 +00:00
Anastasiya 8e01bc8147 VXLAN support for OVS-DPDK
* restriction for using DPDK in VXLAN based
  segmentation case was removed
* in case of using VXLAN with DDPDK used 'br-mesh'
  bridge that has configuration as 'br-prv' and
  vendor specific attribute 'vlan_id' was added
  for 'add-br'
* appropriate tests were added

Implements blueprint vxlan-support-for-ovs-dpdk

Change-Id: I1c4978a15df6f851339a346fe6c4812c5427dd29
2016-10-27 14:53:13 +03:00
Mikhail 508dccf9b2 Add default tags
Tags for rabbitmq, database, keystone and neutron.

Change-Id: I5cbaf58f57845c02550e2b422b269f41eec98322
Implements: blueprint role-decomposition
2016-10-26 10:44:40 +00:00
Andriy Popovych c311746282 Implement mechanism for plugin node attributes
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
2016-10-21 19:47:14 +03:00
Bulat Gaifullin 95fae7972a Added list of packages to provision info
Provision info already contains list of packages as
string, but fa_builder expects list and conversion from
string to list was done by using yaql expression.
This patch moves this conversion to nailgun side.

Change-Id: I1ad44b7f2e69edbb8b8e28fd7840010af2594cd7
Closes-Bug: 1630275
2016-10-04 18:04:01 +03:00
Dmitry Guryanov 7a83ee0cac don't merge common_attrs with node data in deployment_info
The size of deployment_info grows as n^2 depending on
nodes number. That's because common_attrs, which is
merged into each node's contains info about all nodes.

For example for 600 nodes we store about 1Gb of data in
the database. So as first step let's store common_attrs
separately in deployment_info structure inside python
code and in the database.
Also removed old test for migrations, which are not related
to actual database state.

Change-Id: I431062b3f9c8dedd407570729166072b780dc59a
Partial-Bug: #1596987
2016-08-31 17:28:11 +03:00
Bulat Gaifullin 3073c61361 Reduced cluster and release information in deployment_info
Reduced cluster and release attributes which are added to
deployment_info on serialization

Change-Id: I98a960ad4b4c1ac12f25059e9b429fdca97cffb4
Closes-Bug: 1618002
2016-08-30 10:18:11 +03:00
Ilya Kutukov 84c438604d Plugins v 5.0.0 support in plugins adapters
Now it is possible:
* To bring release as plugin
* To define multiple graphs types for the plugin

Change-Id: Idcac14e6f4055ca0e488efc2cc23945036a493d9
Implements-Blueprint: release-as-a-plugin
2016-08-25 04:57:44 +03:00
Igor Kalnitsky 69df395ed1 Serialize provisioning info within deployment serializer
Because there is no difference between provision graph
and deployment graph from nailgun side,
the graph execution context should contain both
provison info and deployment info. This patch
extends LCM deployment info serializer to include
provison info in serializer output.

Change-Id: I672e8fde1a662bd190dcbda0869c290ff110e2d2
Blueprint: graph-concept-extension
2016-08-22 08:29:51 +00:00
Bulat Gaifullin 5167527dc4 Added methods for patching deployment info per object
Instead of wide callbacks process_deployment or process_provision
implemented methods to patch deployemnt or provision info per
cluster or node.
The code of extensions and tests was updated accordingly.
Also added helper to mark methods of extension as deprecated.
the extension load behaviour was modified, instead of fail operation
when extension cannot be loaded, the nailgun only write error in log
that extension is not loaded and continue operation.

Partial-Bug: 1596987
Change-Id: I577c8ffc105734e12646ca7c6a4fe4927e70b119
DocImpact
2016-07-25 18:25:21 +00:00
Bulat Gaifullin 28461933e4 Revert "Remove 'nodes' key from serializer for 10.0"
This reverts commit 80d7188700.

Change-Id: I71288ce79ab1f30bb291e77dde1217a26899c85d
2016-07-19 12:42:12 +00:00
Jenkins af68ca5c5b Merge "Change CPU distribution" 2016-06-07 09:53:03 +00:00
Artur Svechnikov 76e270ef96 Change CPU distribution
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
2016-06-06 18:36:27 +03:00
Artur Svechnikov 14f0753dd4 Change format of dpdk ovs_socket_mem
PyYAML recognizes 1,1,1,1 as string, however,
the Hiera think that this is a list and as result
we have 1111. Thus it's better to avoid ambiguous
formats and use list instead of comma separeted string.

Change-Id: I360c880d68af366fdd96a3ceeebb5f73403ffb85
Closes-Bug: #1587898
2016-06-01 13:40:52 +00:00
Jenkins 2229e17674 Merge "Remove 'nodes' key from serializer for 10.0" 2016-05-19 14:39:57 +00:00
Artem Roma 80d7188700 Remove 'nodes' key from serializer for 10.0
'nodes' data is deprecated so must be removed from 10.0 version
serializer output. The change was moved to separate serializer class in
order to maintain compatibility with previously deployed 9.0 clusters
after upgrade to 10.0.

Change-Id: I8fef591908cd8b1e4ace5502bb1e80cb37786c6e
Related-Bug: #1531128
2016-05-18 15:09:38 +03:00
Artem Roma db7ec357fb Move network serialization code to network manager extension
Change-Id: I48b50e86ad2d9568cfc63e738663c237dccab03a
Blueprint: network-manager-extension
2016-05-12 12:40:35 +03:00
Jenkins c8a3c24ebe Merge "Remove 'nodes' from deployment 9.0 serializer output" 2016-05-05 16:48:06 +00:00
Artem Roma 3a8b82887b Remove 'nodes' from deployment 9.0 serializer output
Now serialized deployment info for environments >= 9.0 does not contain
'nodes' field; it is removed from the output of the serializer.

Unit and integration tests are updated. Deployment tasks fixture
changed: 'nodes' references in yaql expressions changed to
'network_metadata.nodes'

Change-Id: Ibdb2cf85732c0293314298e6a342b071ece18cc3
Closes-Bug: #1531128
2016-05-05 13:12:17 +03:00
Dmitry Guryanov 9eeaa679d1 Don't use self.env.clusters[0] in tests where possible
Since self.env.create always return db object now,
we can use this returned value instead of
self.env.clusters list.

It's a refactoring, so no bug or blueprint.

Change-Id: If7c84cb7124bcf08ef5ff110542012564190fae1
2016-04-26 17:53:36 +03:00
Jenkins 93eb8fec2a Merge "Correct processing of customized nodes" 2016-04-25 16:57:25 +00:00
Artur Svechnikov 8ed32e49c1 Correct processing of customized nodes
Since node can be customized with LCM
deployment info, it's not needed to
convert old serialization style to
new.

Change-Id: I4822745849925076cbcedbd028c9e37d91d1aa1c
Closes-Bug: #1572965
2016-04-25 13:38:23 +00:00