37 Commits

Author SHA1 Message Date
Zuul
8666a73d68 Merge "Remove the OVS-DPDK deprecated parameters" 2018-07-09 23:03:32 +00:00
Zuul
62f308fa70 Merge "Deprecate templates replaced with config-download" 2018-06-28 06:16:04 +00:00
Saravanan KR
58b6034b24 Remove the OVS-DPDK deprecated parameters
Few of the OVS-DPDK prameteres has been deprecated in the
pike release, which are not required anymore. Removed those
parameters from the templates.

Change-Id: Iabb8002a9eb69321aa2d4aefac012dbe09dc80a6
2018-06-27 14:26:12 +05:30
Saravanan KR
bd9646c2ec Use wait_for_connection module instead of local action for reboot wait
Module wait_for_connection provides a better way of waiting to
continue deployment after a reboot, instead of local action.

Change-Id: I95623658f06b1a3122d78bb4d54feabe89ad3569
2018-06-05 14:53:05 +05:30
James Slagle
07528b07b2 Deprecate templates replaced with config-download
The templates at extraconfig/pre_network/host_config_and_reboot.yaml
(replaced with extraconfig/pre_network/boot-params-service.yaml) and
extraconfig/tasks/ssh/host_public_key.yaml (replaced with the
tripleo-ssh-known-hosts role) are deprecated as they do not
work with config-download. They will be removed in the Stein release.

Change-Id: Ib66873ea4b0d86f12024ec16d788247c071cf3b5
2018-06-04 15:04:34 -04:00
Saravanan KR
a3e4a90636 NFV: Support for config-download to deploy node with kernel args
For NFV deployments, specific kernel args should be applied and
the nodes should be restarted before running the NetworkDeployment.
It is supported in the heat deployment via PreNetworkConfig. In the
config-download mechanism, ansible steps need to be improved
to handle the reboot and wait for the node.

Change-Id: I43b383ad0e04b8be6c321f8c5b05e628b2520141
2018-05-15 11:01:06 +05:30
Carlos Camacho
44ef2a3ec1 Change template names to rocky
The new master branch should point now to rocky.

So, HOT templates should specify that they might contain features
for rocky release [1]

Also, this submission updates the yaml validation to use only latest
heat_version alias. There are cases in which we will need to set
the version for specific templates i.e. mixed versions, so there
is added a variable to assign specific templates to specific heat_version
aliases, avoiding the introductions of error by bulk replacing the
the old version in new releases.

[1]: https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#rocky
Change-Id: Ib17526d9cc453516d99d4659ee5fa51a5aa7fb4b
2018-05-09 08:28:42 +02:00
Zuul
e0f59eefd2 Merge "Removed ovs-dpdk workaround to fix the vhost socket permission" 2018-02-27 12:12:55 +00:00
Saravanan KR
b7a70f5613 Removed ovs-dpdk workaround to fix the vhost socket permission
Change-Id: I5d8e31020700f13e21f4cfa2f1bfa14ff4c88e4a
2018-02-19 15:13:04 +05:30
Saravanan KR
f9e099f218 Ensure node is rebooted before enabling DPDK
In the PreNetworkConfig, the order of resources sent to os-collect-config
changed after introducing vhost user resource. The current order is
1. HostParametersDeployment
2. DpdkVhostGroupDeployment
3. RebootDeployment and EnableDpdkDeployment
Here the expectation is that RebootDeployment should be completed
before enabling DPDK, but since both are provided at the same time to
os-collect-config, DPDK is enabled first. The reson is RebootDepolyment
is having signal transport as NONE and EnableDpdkDeployment is moved
after reboot because of ovs2.7 change of restart vswitchd, when DPDK is
enabled. This is causing the a failure.
This patch modifies the order as below:
1. HostParametersDeployment and DpdkVhostGroupDeployment
2. RebootDeployment and RebootEnsureDeployment
3. EnableDpdkDeployment

Change-Id: I5db52d5dd833833c989532931baea8fac03f9cb7
2018-02-13 11:26:39 +05:30
Zuul
91de1c223d Merge "Configure qemu group setting as hugetlbfs for ovs-dpdk" 2018-02-05 13:05:25 +00:00
Zuul
7a1ad4068e Merge "Remove unused pre_network configuration" 2018-01-31 09:44:01 +00:00
Saravanan KR
785d1b2b38 Configure qemu group setting as hugetlbfs for ovs-dpdk
Till now, the ovs service file and ovs-ctl command files
are patched to allow ovs to run with qemu group. In order
to remove this workarounds, a new group hugetlbfs is created
which will be shared between ovs and qemu. This patch contains
the changes required for applying these changes.

Depends-On: I674cbd45e17906448dd54acfdf7a7059880b7278
Change-Id: Iec6be0b99e84b0c89f791c3c9694fe10f3a1e7db
2018-01-29 14:26:25 +05:30
Sven Anderson
dc8a61b7b4 Replace hardcoded profile name with _TUNED_PROFILE_NAME_
The *-variables.conf file for tuned is hardcoded for the profile
"cpu-partitioning", which makes other profiles fail, that also need
the isolated_cores variable.

Change-Id: Iaeedfe5d7c501453fd2039b81c1603eff6125ebf
2018-01-16 16:20:18 +01:00
Zuul
0d24fdbd2e Merge "OvsDpdkMemoryChannels parameter default value" 2018-01-16 00:29:36 +00:00
Jaganathan Palanisamy
2194cce7b8 OvsDpdkMemoryChannels parameter default value
This change is to update the memory channels parameter default
value in service yaml instead of environment yaml file.

Change-Id: Ia0a79b5dc3aa060b91d68e0d23cb1fb5b33eb020
Closes-Bug: #1741234
2018-01-11 00:42:59 -05:00
Michael Henkel
4b2ef6887a Removal of Contrail templates
As a preparation for the new contrail microservices current templates are
removed.

Change-Id: Iea61fefe9a147b96cf00a008bbb61a482eb95a75
Closes-Bug: 1741452
2018-01-06 15:25:09 +00:00
Emilien Macchi
eb324768d0 puppet apply: add --summarize
... so we can know how long take resources configuration in Puppet
catalogs, and more easily debug why we have timeouts.

Change-Id: If3fae8837140caae91120e46b4880146ffe22afc
2018-01-04 09:37:46 -08:00
Saravanan KR
d0702e82b5 Add a tag to all the role specific parameters
With parameter tags, it is possible to categorize the parameters.
In this patch, all role-specific parameters of the services are
categorized as role_specific, which will help in adding validation
during the deployment (to ensure the provided role-specific
parameter is actually implemented as role-specific). This patch
adds only the tags, and the validation will done via workflows.

Change-Id: Ic053111298e7872a3a3cd11e6249dbd85707cc29
2017-12-07 12:20:11 +05:30
Saravanan KR
bd69b09c5a Remove unused pre_network configuration
This format of pre_network was introduced in ocata but it has been
enhanced with role-specific parameters in pike. And it was not
used in pike. It is now being removed in queens.

Change-Id: Ibe6bec3b76f4771197064bba018b196393180d2b
2017-11-27 15:21:52 +05:30
Carlos Camacho
927495fe3d Change template names to queens
The new master branch should point now to queens instead of pike.

So, HOT templates should specify that they might contain features
for queens release [1]

[1]: https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#queens

Change-Id: I7654d1c59db0c4508a9d7045f452612d22493004
2017-11-23 10:15:32 +01:00
Ben Nemec
4502b7cba6 Make RoleParameters and key_name descriptions consistent
The key_name default is ignored because the parameter is used in
some mutually exclusive environments where the default doesn't
need to be the same.

Change-Id: I77c1a1159fae38d03b0e59b80ae6bee491d734d7
Partial-Bug: 1700664
2017-08-02 16:18:25 -05:00
Saravanan KR
c3f9eaf0e4 Enable Dpdk after rebooting with Hugepages for OvS2.7
With OvS2.7, DPDK is initialized immediately after setting
dpdk-init flag. DPDK requires hugepages configuration to be
available on kernel args with a reboot. This patch reboots
the node after applying the kernel args. And once the node
is rebooted, DPDK will be enabled and then the deployment
continues.

Change-Id: Ide442e09c2bea56a38399247de588e63b4272326
2017-07-31 09:30:30 +05:30
Michael Henkel
aa5194f878 Contrail network realignement + DPDK enablement
This patch moves Contrail roles communication from public/external
to internal_api network for OpenStack API.
It also adds the option to enable dpdk.
Monolithic firstboot script is broken down into small pre-network
and per-node extraconfig scripts

Change-Id: I296a3bf60cef6fa950fd71d6e68effe367d1e66b
Closes-Bug: 1698422
2017-07-25 18:24:13 +02:00
Saravanan KR
c53918926e Add a new role for ComputeOvsDpdk and clean-up parameters
A new role ComputeOvsDpdk has been added to avoid manual
roles_data creation. And cleaned-up the DPDK parameters
inline with the refactored code.

Change-Id: I16dac69609c98194c2504ff067258fa14363d4f1
2017-07-14 11:09:13 +05:30
Jenkins
b02aedb174 Merge "Added OvS permission workaround for enabling DPDK" 2017-07-13 18:33:29 +00:00
James Slagle
11b3cb25a9 Revert "Revert "Blacklist support for ExtraConfig""
There is a Heat patch posted (via Depends-On) that resolves the issue
that caused this to be reverted. This reverts the revert and we need to
make sure all the upgrades jobs pass before we merge this patch.

This reverts commit 69936229f4def703cd44ab164d8d1989c9fa37cb.
Closes-Bug: #1699463
implements blueprint disable-deployments

Change-Id: Iedf680fddfbfc020d301bec8837a0cb98d481eb5
2017-07-10 17:39:57 +00:00
Saravanan KR
d7738012e1 Added OvS permission workaround for enabling DPDK
The vhost sockets sockets are created with qemu permission, but ovs
runs with root permission. In order to allow ovs to access vhost sockets
reducing the ovs group permission from root to qemu. This is a temprovary
workaround, until ovs fixes the permission issue. The script supports
both ovs2.6 and ovs2.7 versions.

Change-Id: I172956390c19fc9824bf7590cd48bfcf6201191b
2017-07-10 16:12:05 +05:30
Tim Rozet
b30bdb6f8e Adds service for OVS and enables ODL DPDK deployments
In order to deploy OpenDaylight with DPDK we need to copy the DPDK
config for OVS done in the neutron-ovs-dpdk service template, without
enabling OVS agent for compute nodes.  To do this correctly, we should
inherit and openvswitch service which is a common place to set OVS
configuration and parameters.  Note: vswitch::dpdk config will be called
in prenetwork setup with ovs_dpdk_config.yaml so there is no need to
include that in the step config for neutron-ovs-dpdk-agent service or
opendaylight-ovs-dpdk.

Changes Include:
 - Creates a common openvswitch service template, which in the future
   will migrate to be its own service.
 - Renames and fixes OVS DPDK configuration heat parameters in the
   openvswitch template.
 - neutron-ovs-dpdk-agent now inherits the common openvswitch template.
 - Adds opendaylight-ovs-dpdk template which also inherits common ovs
   template.
 - Uses OVS DPDK config script to allow configuring OVS DPDK in
   prenetwork config (before os-net-config runs).  This has an issue
   where hieradata is not present yet, so we have to redefine the heat
   parameters and pass them via bash.  In the future this should be
   corrected.
 - Adds opendaylight-dpdk environment file used to deploy an ODL + DPDK
   deployment.
 - Updates neutron-ovs-dpdk environment file.

Closes-Bug: 1656097
Partial-Bug: 1656096

Depends-On: I3227189691df85f265cf84bd4115d8d4c9f979f3

Change-Id: Ie80e38c2a9605d85cdf867a31b6888bfcae69e29
Signed-off-by: Tim Rozet <trozet@redhat.com>
2017-06-23 09:31:53 -04:00
Saravanan KR
4e19c7a13e Enable DPDK on boot using PreNetworkConfig
DPDK has to be enabled on openvswitch on the boot before
configuring the network as when the network uses DPDK ports
OvS should be ready to handle DPDK. Enabled DPDK via
PreNetworkConfig by checking if ServiceNames contains
DPDK service.
Implements: blueprint ovs-2-6-dpdk
Closes-Bug: #1654975

Depends-On: I83a540336c01a696780621fb2b39486a6abf0917
Change-Id: I7af4534d91e67c94ba559b78b9ac6a001e639db3
2017-06-23 11:19:23 +05:30
Alex Schultz
69936229f4 Revert "Blacklist support for ExtraConfig"
This reverts commit d6c0979eb3de79b8c3a79ea5798498f0241eb32d.

This seems to be causing issues in Heat in upgrades.

Change-Id: I379fb2133358ba9c3c989c98a2dd399ad064f706
Related-Bug: #1699463
2017-06-22 13:35:19 +00:00
James Slagle
d6c0979eb3 Blacklist support for ExtraConfig
Commit I46941e54a476c7cc8645cd1aff391c9c6c5434de added support for
blacklisting servers from triggered Heat deployments.

This commit adds that functionality to the remaining Deployments in
tripleo-heat-templates for the ExtraConfig interfaces.

Since we can not (should not) change the interface to ExtraConfig, Heat
conditions are used on the actual <role>ExtraConfigPre and
NodeExtraConfig resources instead of using the actions approach on
Deployments.

Change-Id: I38fdb50d1d966a6c3651980c52298317fa3bece4
2017-06-16 11:13:25 -04:00
Saravanan KR
0c66118b10 Modify PreNetworkConfig config inline with role-specific parameters
Existing host_config_and_reboot.role.j2.yaml is done in ocata to
configure kernel args. This can be enhanced with use of role-specific
parameters, which is done in the current patch. The earlier method is
deprecated and will be removed in Q releae.
Implements: blueprint ovs-2-6-dpdk

Change-Id: Ib864f065527167a49a0f60812d7ad4ad12c836d1
2017-06-13 11:02:33 +05:30
Carlos Camacho
0a0e2ee629 Update the template_version alias for all the templates to pike.
Master is now the development branch for pike
changing the release alias name.

Change-Id: I938e4a983e361aefcaa0bd9a4226c296c5823127
2017-05-19 09:58:07 +02:00
Carlos Camacho
ddca77553d Bump missing template names to ocata
Update pending templates to use the release name alias.

Change-Id: I39f9be212d3e9f3bec6f45d9757eca7a3b0ccc06
2017-01-17 17:04:49 +01:00
Saravanan KR
4f9a16d38b Configure Kernel Args and Tuned and then reboot for Compute
* On top of the https://review.openstack.org/#/c/411204
* Added Kernel args and Tune-d configuration
* Added provision to provide different kernel args per role (applicable
  for different types of compute roles only)

Implements: blueprint tuned-nfv-dpdk

Change-Id: I5c538428c376c9d2ebd1c364f0ee8503fd7d620e
2017-01-06 11:16:52 +05:30
Steven Hardy
f1cc214384 Add pre-network hook and example showing config-then-reboot
There are some requirements for early configuration that involves
e.g setting kernel parameters then rebooting.  Currently this can
be done via cloud-init, e.g firstboot templates, but there's been
discussion around enabling a SoftwareDeployment approach instead.

The main advantage of doing it this way is there's an error path
if something goes wrong with the config (except triggering the
reboot as we have to use NO_SIGNAL for that).

Change-Id: Ia54ee654f755631b8062eb5c209a60c6f9161500
2016-12-15 11:12:37 +00:00