Age | Commit message (Collapse) | Author | Files | Lines |
|
In the Next Generation HA architecture a number of active/active services
will be run via systemd. In order for this to work we need to make sure that
the sync_db operation only takes place on the bootstrap node, just like it is
done today for the pacemaker profiles.
We do this by removing sync_db as a parameter and instead set it to true
or false depending if the hostname matches the bootstrap_node as it is done
today in the pacemaker role.
Note that we call hiera('bootstrap_nodeid', undef) because if a profile
is included on a non controller node that variable will be undefined.
The following testing was done:
- HA puppet-pacemaker.yaml scenario with three computes
- NonHA with one controller
- NonHA with three controllers
Fixes-Bug: 1600149
Co-Author: cmsj@tenshu.net
Change-Id: I04a7b9e3c18627ea512000a34357acb7f27d6e0e
Implements: blueprint ha-lightweight-architecture
|
|
As not having guarantee of being installed on same node, the dbsync
will be on step 3 and the clustercheck on 2.
Change-Id: Id728aae79442c45ab48fe0914c065f1807e8890d
|
|
|
|
|
|
Simplify the base neutron profile so that we always include
the neutron and neutron::config classes at step 3. In doing so
we can now simplify the pacemaker version to use a simple include
which will avoid duplicate class errors.
Change-Id: I95b9188607ab6c599ad4cde6faa1deb081618f3e
|
|
In order for each service to operate independently when used with Pacemaker,
the roles needed to be separated.
This also drops all pacemaker constraints, as they do not make much sense
in the composable realm.
Change-Id: Id61eb15b1e2366f5b73c6e7d47941651e40651b1
Partial-Bug: #1592284
|
|
* Configure ceilometer to default mongodb backend.
* remove useless sync_db parameter in pacemaker class.
* Remove duplicated resource for ceilometer central agent service with
pcmk.
* Remove pacemaker delay resource dependency, the resource does not
exist anymore.
Change-Id: Ie337bfe770c5b22158dc307eb36e39c2b93b95a9
|
|
|
|
|
|
|
|
Implements: blueprint refactor-puppet-manifests
Co-Authored-By: Carlos Camacho <ccamacho@redhat.com>
Co-Authored-By: Juan Antonio Osorio Robles <jaosorior@redhat.com>
Change-Id: I38f218da118c45f3af1938eb17298017f4c70e24
|
|
In the case where all services are installed on the same node
(All-In-One), we don't want Pacemaker to manage nova-compute. This patch
makes the Nova service more specific for overriding start/stop/restart
actions, to be applied only for services that usually run on
controllers.
Change-Id: I81a86331cff4e7988e035ada82834a45a6bb99c1
|
|
bootstrap_nodeid is a parameter looked-up with Hiera but only set on
controllers. With the transition to composable roles, we don't need to
set this parameter on compute nodes, so let's just default this value by
undef so we can deploy Neutron classes on compute nodes.
Change-Id: I94034f696c163969a7489d9cb0a20423210d3b84
|
|
|
|
|
|
We perform the Galera setup in step 2 so there is no guarantee that the
database will be available in that same step [1].
We used to implement a dependency in puppet using the 'galera-ready'
resource (clustercheck) but this is not possible with roles because we
also don't have any guarantee about clustercheck being installed on the
same node.
Because of the above all services must create/sync their databases
in a later step. This patch fixes Nova API and Neutron Server, the other
services use step 3 already.
1. https://github.com/openstack/tripleo-heat-templates/blob/master/puppet/services/README.rst
Change-Id: I22750ffb64afbe40b5560a6a0d0dabc5b8927d32
|
|
We the base::keystone profile is trying to create users and roles
before step 5, this change will set the a value for manage_roles
from the pacemaker profile for all steps.
Change-Id: I7aca8d6418988160641b29f9396a0fbe33b64e51
|
|
Not used anymore.
Change-Id: Id3f943132fce235a5a4888da30332b8fc2434a78
Depends-On: I6436c5c36ac0081a720cb8a737a573b1246127a1
|
|
Move neutron ml2 plugins in plugins directory and make it compatible
with current THT.
The old class will be removed soon.
Change-Id: I35332df5800083f3373f5c37411534d11e9b4401
|
|
In order for each service to operate independently when used with Pacemaker,
the roles needed to be separated.
This also drops all pacemaker constraints, as they do not make much sense
in the composable realm.
Change-Id: I3fa76562c13191884a53848ad5adcbc9f5a24f61
|
|
|
|
|
|
Change-Id: Ie5ac07e6dd447216f17481ea4acf3bc204926bc8
|
|
|
|
Implements: blueprint refactor-puppet-manifests
Change-Id: I4b5e93a108e80e91af26ffee454130ee18c0042e
|
|
Before, we had bootstrap_master set to 'undef' by default that was
used to whether or not run keystone bootstrap exec during deployment.
Setting the value to undef was a mistake, because enable_bootstrap in
puppet-keystone is set to true by default, so bootstrap was running
on all controllers at step 4 for HA scenario, while we want it to run on
a single controller (pacemaker_master) at step 4, like we do for
db-sync.
This patch:
* removes bootstrap_master.
* re-use sync_db to whether or not run keystone bootstrap.
so it will only run on a single node when database is ready and
db-sync done (orchestration dones by anchors in puppet-keystone).
Change-Id: I1042862f7c346d1c358b908c33eae0f33afd5e9f
|
|
|
|
Change-Id: I5bc2a77b5832706bd9167cf40e5a7e0f95d7b346
Implements: blueprint refactor-puppet-manifests
|
|
Change-Id: I955b4fc07dc07d8adc32411848e3e131d77a5123
Implements: blueprint refactor-puppet-manifests
|
|
Change-Id: I5e1c90e3c6dc556f872ced73744c5c74caaa3635
Implements: blueprint refactor-puppet-manifests
|
|
Change-Id: I1dde63a5a7d1624494a7157a9679f88f4cb780e0
Implements: blueprint refactor-puppet-manifests
|
|
Implements: blueprint refactor-puppet-manifests
Co-Authored-By: Carlos Camacho <ccamacho@redhat.com>
Co-Authored-By: Juan Antonio Osorio Robles <jaosorior@redhat.com>
Change-Id: Idb1e78ebec7682fe68ca5902a22cfb6030498091
|
|
This fixes a bug introduced in 72fb6727951af2cf5b16e686b3a36f5f3a7c71c7
where non-master nodes would try to create the database (and potentially
fail due to a race).
Change-Id: Ic0c7b05618b69caca0d4019b5153163f2405bbe5
|
|
|
|
|
|
Import ::nova class with memcached parameter computed from Hiera, that
was previously in THT, now in nova-base role.
Use step 3 for ::nova since we need it for database resources.
Also make sure nova base profile is included for conductor role and any
nova pacemaker role.
Change-Id: I45244861082edae616f2b82334e7678cefa97bc7
Implements: blueprint refactor-puppet-manifests
|
|
|
|
Change-Id: I8536782d433f97a9b619e54a1eb1ea0edb8fdaf0
Implements: blueprint refactor-puppet-manifests
|
|
The pacemaker version of nuage has its DB sync at a different
step so we need a separate profile to ensure plugin.ini exists.
Change-Id: Ia4a297008b259a8e238bd1ad511e82f4e5ab6d63
|
|
This patch brings the neutron profiles and the
associated steps in line with what already happens in
t-h-t. Specifically:
-we want to create the db $step >= 2 and $sync_db
-we want to make sure plugin.ini exists before the neutron dbsync
-we want to make sure the db sync runs before neutron::server starts
when using pacemaker
-split the neutron server profiles. They are quite different across
pacemaker and base.
Change-Id: I52815f45a04bf3e39940b9cb116261730580a3e2
|
|
We don't need loadbalancer profile anymore, we now have haproxy &
keepalived profiles that replace it.
Change-Id: I5bf57f88a85fa8180392e9dde7ab39f4eda63113
|
|
neutron::server requires the neutron's init.pp to be ran beforehand
because init.pp installs the 'neutron' package. Else the relationship
with neutron::policy will fail [1].So to address this, we move
neutron's init.pp to be ran on step 3 if db_sync is enabled.
[1] https://github.com/openstack/puppet-neutron/blob/master/manifests/server.pp#L498
Change-Id: I8eb497c2b483e11d1f640a7ba9fae5a9d5bcef4d
|
|
|
|
|
|
|
|
|
|
|
|
Drop a duplicate keystone-to-neutron-server-constraint constraint
for the neutron server profile.
Change-Id: I928f9f9f3cf665ac80696f66e1d64ceb02129b8e
|
|
Deprecate loadbalancer profiles so we have a profile for HAproxy and
another for keepalived.
Once THT uses the new profiles, we'll remove loadbalancer profiles here.
Change-Id: I8aa9045fc80205485abab723968b26084f60bf71
|
|
Create nova-conductor profile, part of composable services.
Implements: blueprint refactor-puppet-manifests
Change-Id: Iaaf3a3c2528d9747e41f360a1fe55f95ed37b2d1
|