29 Commits

Author SHA1 Message Date
Saravanan KR
4d3b5be7e6 Add netcontrold service for DPDK roles
netcontrold rebalances the overloaded queues within
available PMD threads to avoid packet loss. Add
support to enable this service in the DPDK deployments.

Change-Id: Ia0ec2a3db0626e9a93ef591d0bc4f3a53d98820f
2019-11-27 10:24:08 +05:30
Telles Nobrega
79bd7c447b Adding ReaR THT
Adding a THT to install and configure ReaR.

Depends-On: I960e45f2162f8e1257f952a14e7f876468aa8fca

Change-Id: I156f0cd32bf028a2027b6baa6c4c999c239ca746
2019-11-21 11:07:51 -03:00
Zuul
794da25b07 Merge "Add NovaAZConfig service to compute roles" 2019-10-29 02:57:40 +00:00
Saravanan KR
9c3638b8a1 Remove OpenDaylight templates and environments
OpenDaylight deployment has been deprecated in Stein. In Train,
the tempaltes are removed.

Change-Id: I9711ef977d045f1dbcdc631fe2655294109031b8
2019-10-18 11:39:41 +05:30
James Slagle
45c226c8fe Add NovaAZConfig service to compute roles
The NovaAZConfig service is added to all the compute related roles
of the box so that the nodes are automatically in a new AZ when the
service is enabled.

By default, the service is mapped to OS::Heat::None so no change in
default behavior is made.

Change-Id: If1e4e149100dccfe76ccd807997a611d0fc8841f
2019-10-10 10:37:39 -04:00
Martin Magr
b3ffd695fd Remove sensu-client service
Sensu client has been deprecated and it's functionality substituted
by collectd-sensubility. This patch removes sensu-client composable
service

Change-Id: I4be68eb7319b2c92cc7d0fc9df7a5c87dfb5106c
2019-10-01 12:07:46 +02:00
Martin Magr
5ccf8951e5 Remove fluentd composable service
This patch removes fluentd composable service in favor of rsyslog composable service
and modifies *LoggingSource configuration accordingly.

Change-Id: I1e12470b4eea86d8b7a971875d28a2a5e50d5e07
2019-08-29 13:52:55 +01:00
Martin Magr
8727ef050c Rsyslog composable service
This patch adds rsyslogd composable service with the same behaviour
the fluentd composable service currently has.

Co-Authored-By: Juan Badia Payno <jbadiapa@redhat.com>
Change-Id: I18e349c450a42dc7e9867d200e777a324e2d12bc
2019-07-18 15:41:28 +00:00
Alan Bishop
b172661995 Make Multipathd an optional service
This is part 1 of a series of patches to properly deploy multipathd.

This patch makes Multipathd an optional TripleO service (defaults to
OS::Heat::None), and binds it to every role that might use the service.
This is essentially any role that accesses cinder volumes. Previously,
the service was not optional, but was not bound to any roles and so it
was never deployed.

Partial-Bug: #1834042
Change-Id: I3bc7d8557f758103c35533a59e06e36cd15f98b9
2019-06-24 07:15:37 -07:00
Rajesh Tailor
66c4e23654 Add new role parameter NovaLibvirtMemStatsPeriodSeconds
Add role parameter NovaLibvirtMemStatsPeriodSeconds which allows to
set `libvirt/mem_stats_period_seconds` parameter value to
number of seconds to memory usage statistics period, where
zero or negative value mean to disable memory usage statistics.

Default value for the parameter is 10.
Also set the default value to 0 for Real-Time Compute roles.

Depends-On: https://review.opendev.org/#/c/663522/
Change-Id: I8e1a81bc69b4d266755ba3c2a4bf17f37d276fd7
2019-06-10 14:57:35 +05:30
Mathieu Bultel
a59a188a6b Force ansible serial to 1 for the Controller
By introducing update_serial variable we parallelize update
execution on non-pacemaker enabled nodes. Custom role data users
need to update their role files. By default we do serial 1 making
sure nothing changes for users who didn't update their role data.

Resolves: rhbz#1652057
Closes-Bug: #1831617

Change-Id: I4ee0110a6c2b9466d81e37e5df27f5f81a6eceb5
2019-06-07 14:25:54 +02:00
Saravanan KR
fca0945708 Add DPDK support for OVN
Add a service to enable DPDK on the compute nodes,
along with OVN.

Change-Id: I4473f1dfef9eebb886823fb2f436d14dd5b6d5ad
2019-04-12 13:26:25 +05:30
Ade Lee
2a83856585 Move ipa enrollment to host_prep_tasks
This addresses a possible bug when using FreeIPA to do TLS
everywhere.

It is possible that the IPA server is not on the ctlplane.
In this case, when the nodes start up, the registration of the node
with IPA will fail, resulting in failed certificate issuance requests
later on.

We introduce a composable service to run in host_prep_tasks.
This will always run once the networks have been set up.  If the
instance has already been enrolled (by cloud-init or in an update),
then the script executed by the service will just exit.

In this iteration, we simply execute the code that the cloud-init
would have done.  In later releases, we will execute all the code
performed by novajoin-server here in ansible - and deprecate the
novajoin server.

Change-Id: I31f64c3cbd1d151e3c2a436cc3e2ec5316535087
Co-Authored-By: Juan Antonio Osorio Robles <jaosorior@redhat.com>
Resolves: rhbz#1661635
Closes-Bug: #1815924
2019-02-14 16:07:17 +00:00
Harald Jensås
2f2d8183e6 L3 routed networks - subnet fixed_ips (3/3)
When using neutron routed networks we need to specify
either the subnet or a ip address in the fixed-ips-request
when creating neutron ports.

a) For the Vip's:

Adds VipSubnetMap and VipSubnetMapDefaults parameters in
service_net_map.yaml. The two maps are merged, so that the
operator can override the subnet where VIP port should be
hosted. For example:

parameter_defaults:
  VipSubnetMap:
    ctlplane: ctlplane-leaf1
    InternalApi: internal_api_leaf1
    Storage: storage_leaf1
    redis: internal_api_leaf1

b) For overcloud node ports:

Enrich 'networks' in roles defenition to include both
network and subnet data. Changes the list to a map
instead of a list of strings. New schema:

- name: <role_name>
  networks:
    <network_name>
      subnet: <subnet_name>

For backward compatibility a conditional is used to check
if the data is a map or not. In either case the internal
list of role networks is created as '_role_networks' in
the jinja2 templates.

When the data is a map, and the map contains the 'subnet'
key the subnet specified in roles_data.yaml is used as
the subnet in the fixed-ips-reqest when ports are created.
If subnet is not set (or role.networks is not a map) the
default will be {{network.name_lower}}_subnet.

Also, since the fixed_ips request passed to Vip ports are no
longer [] by default, the conditinal has been updated to
test for 'ip_address' entries in the request.

Partial: blueprint tripleo-routed-networks-templates
Depends-On: I773a38fd903fe287132151a4d178326a46890969
Change-Id: I77edc82723d00bfece6752b5dd2c79137db93443
2019-01-03 19:07:20 +01:00
Zuul
8fd90c2d45 Merge "Set virt queue size as 1024 for all OVS-DPDK roles" 2018-10-08 12:25:41 +00:00
Emilien Macchi
7bebdefda8 Introduce OS::TripleO::Services::Podman
Podman service will be in charge of installing, configuring, upgrading
and updating podman in TripleO.

For now, the service is disabled by default but included in all roles.
In the cycle, we'll make it the default.

Note: when Podman will be able to run in TripleO without Docker,
we'll do like https://review.openstack.org/#/c/586679/ and make it as
a generic service that can be switched to either podman or docker.
But for now, we need podman & docker working side by side.

Depends-On: Ie9f5d3b6380caa6824ca940ca48ed0fcf6308608
Change-Id: If9e311df2fc7b808982ee54224cc0ea27e21c830
2018-10-02 01:47:46 +00:00
Alex Schultz
f7f9053963 Create a Timesync service declaration
In order to support switching between multiple timesync backends, let's
simplify the service configurations for the roles so that there is a
single timesync service.  This timesync service should point to the
expected backend (ntp/ptp/chrony).

Change-Id: I986d39398b6143f6c11be29200a4ce364575e402
Related-Blueprint: tripleo-chrony
2018-09-04 21:00:56 +00:00
Saravanan KR
1e723b72f8 Set virt queue size as 1024 for all OVS-DPDK roles
In order to achieve better performance, OVS-DPDK instances
should have the virt queue size configured as 1k. This patch
configures the parameter for all the defined OVS-DPDK roles.
Closes-Bug: #1789827

Change-Id: Ib5d97303b973f96af8e3e0806f2549d85860d6f5
2018-09-03 09:35:44 +05:30
Zuul
398b2b7f9d Merge "Remove HostnameFormatDefault from NFV roles" 2018-08-13 10:03:55 +00:00
Zuul
e7bde70073 Merge "Add NovaResumeGuestsStateOnHostBoot and NovaResumeGuestsShutdownTimeout" 2018-08-08 12:39:02 +00:00
Martin Mágr
b76d7623ac QDR for metrics collection purposes
This patch adds composable new service (QDR) for containerized deployments.
Metrics QDR will run on each overcloud node in 'edge' mode. This basically
means that there is a possibility that there will be two QDRs running
on controllers in case that oslo messaging is deployed. This is a reason why
we need separate composable service for this use case.

Depends-On: If9e3658d304c3071f53ecb1c42796d2603875fcd
Depends-On: I68f39b6bda02ba3920f2ab1cf2df0bd54ad7453f
Depends-On: I73f988d05840eca44949f13f248f86d094a57c46
Change-Id: I1353020f874b348afd98e7ed3832033f85a5267f
2018-07-31 21:55:45 +00:00
Martin Schuppert
9654393f24 Add NovaResumeGuestsStateOnHostBoot and NovaResumeGuestsShutdownTimeout
NovaResumeGuestsStateOnHostBoot (true/false) parameter which
configures whether or not to start again instances which were running at
the time of a compute reboot.
This will set the resume_guests_state_on_host_boot parameter in nova.conf
and configures and enables libvirt-guests with a dependency to the
docker service to shutdown instances before the libvirt container gets
stopped.
NovaResumeGuestsShutdownTimeout specifies the number in seconds for an
instance to allow to shutdown.

Change-Id: I946600ebbc3afd88385ca89015e8f6a6c46f46ef
Closes-Bug: 1778216
Depends-On: I2766cdd66ff17756daaf1a75ad516a7af6eebddc
Depends-On: Id1cc2e75af316b864cebf601395f1111b7fb049a
2018-07-31 12:24:08 +02:00
Saravanan KR
c00a559b1a Remove HostnameFormatDefault from NFV roles
Value of HostnameFormatDefault defined in role/*.yaml files is
redundant as the default value in the templates sets the same
value as the role name in the lowercase. With the patch
Ifa60eae1ad09b2ceac207114c40c714a6fc67cbc merged, it is possible
to generate multiple roles out of the defined roles. The default
value of the {{role.name}}HostnameFormat in overcloud.j2.yaml will
apply the same format with role name in lower case, having this
default will override all generated roles with same format.
Removing the default from roles will ensure that the default value
is set as per the role name.

As NFV roles are mostly hardware associated, it is important change
for these roles, though the same can be extended to all role
definitions.

Change-Id: I701bc86034a3b75ca05ae08214dcbb2d9c6c7483
2018-07-25 12:14:48 +05:30
Zuul
e1a16a4903 Merge "Make VhostuserSocketGroup param as mandatory for ComputeOvsDpdkRT role" 2018-06-24 06:02:22 +00:00
Saravanan KR
db69d36b50 Make VhostuserSocketGroup param as mandatory for ComputeOvsDpdkRT role
Without VhostuserSocketGroup configured as hugetlbfs (required by
nova-libvirt and neutron-ovs-dpdk-agent services), guest VMs
could not be created. Add this parameter to the roles data file.

Change-Id: Id8d2b67a116e7458ce398466e2dd2f1e351605b7
2018-05-31 16:54:20 +05:30
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
mandreou
66df6bdb46 Remove no longer used disable_upgrade_deployment flag
In I75f087dc456c50327c3b4ad98a1f89a7e012dc68 we removed much of
the legacy upgrade workflow. This now also removes the
disable_upgrade_deployment flag and the tripleo_upgrade_node.sh
script, both of which are no longer used and have no effect on
the upgrade.

Related reviews
    I7b19c5299d6d60a96a73cafaf0d7103c3bd7939d tripleo-common
    I4227f82168271089ae32cbb1f318d4a84e278cc7 python-tripleoclient

Change-Id: Ib340376ee80ea42a732a51d0c195b048ca0440ac
2018-03-29 15:27:30 +03:00
zshi
d0a92f1c20 Add PTP composable service
Precision Time Protocol (PTP) is a protocol used to
synchronize clocks throughout a network. When used
in conjunction with hardware support, PTP is capable
of sub-microsecond accuracy which is far better than
is normally obtainable with NTP.

Change-Id: I98a1833db28944cfd5a89e4f28c192bb9af8ebbb
Depends-On: Idc78df3a90b73be504480bc9d33a3f0041d2d84f
2018-02-08 15:20:17 +08:00
Saravanan KR
c5e692c09c Added realtime NFV roles for OVS-DPDK and SR-IOV
Realtime roles could be deployed in a cluster along with the
non-realtime roles. The only difference is the image and few
parameters. Two roles, ComputeOvsDpdkRT and ComputeSriovRT, are
added.

Change-Id: Ieb43a83af46cf5d002eab8cb9a67431fefdd8d59
2018-01-30 15:24:37 +05:30