neutron-server service get notify even when we don't manage service

Bug #1562922 reported by Emilien Macchi
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
puppet-neutron
Invalid
Undecided
Unassigned
puppet-pacemaker
Invalid
Undecided
Unassigned
tripleo
Fix Released
High
Jiří Stránský

Bug Description

Deploying Neutron Server by using Pacemaker, so we set manage_service and enabled to False.

In the ::neutron::server we have:
  Neutron_config<||> ~> Service['neutron-server']
  Neutron_api_config<||> ~> Service['neutron-server']
  Class['neutron::policy'] ~> Service['neutron-server']

So every time Neutron Config will change, Puppet will try to restart the service:

https://docs.puppetlabs.com/puppet/latest/reference/type.html#service
"Refresh: service resources can respond to refresh events (via notify, subscribe, or the ~> arrow). If a service receives an event from another resource, Puppet will restart the service it manages."

So it seems that, even if the resource is wanted to be "stopped", the refresh will restart it, and that's not what we want because it uses systemd while we want Pacemaker.

Revision history for this message
Marios Andreou (marios-b) wrote :
Revision history for this message
Emilien Macchi (emilienm) wrote :

The bug does not look like in puppet-neutron, can't be reproducible:
http://paste.openstack.org/show/492099/

It might be in puppet-pacemaker.

Changed in puppet-neutron:
status: New → Invalid
Revision history for this message
Giulio Fidente (gfidente) wrote :

Proposed fix for TripleO is at https://review.openstack.org/#/c/298695/

Changed in tripleo:
importance: Undecided → High
Changed in puppet-pacemaker:
status: New → Invalid
Changed in tripleo:
assignee: nobody → Jiří Stránský (jistr)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to tripleo-heat-templates (master)

Reviewed: https://review.openstack.org/298695
Committed: https://git.openstack.org/cgit/openstack/tripleo-heat-templates/commit/?id=7b2e56053f6cf7535c7ae416c5cb41e7c9679924
Submitter: Jenkins
Branch: master

commit 7b2e56053f6cf7535c7ae416c5cb41e7c9679924
Author: Jiri Stransky <email address hidden>
Date: Tue Mar 29 14:11:08 2016 +0200

    Don't restart Pacemaker-managed services from Puppet

    We need to reload/restart services on updates/upgrades to apply any
    config changes, but restarting services managed from Pacemaker from
    Puppet causes problems.

    For now we no-op the restart and rely on the catch-all restart after
    Puppet phase.

    In the future we should have a service provider for pacemaker resources
    that will be using pcs. We still might have to restart services outside
    Puppet due to cluster-wide orchestration issues, but we might be able to
    do the restarts selectively rather than restart everything.

    We also no-op the start/stop commands to be safe, as it also doesn't
    make sense for Puppet to try start and stop those services when it
    doesn't have knowledge about Pacemaker.

    Change-Id: I95e21e10471cd7575f28c095c48150325f1414b3
    Closes-Bug: #1562922

Changed in tripleo:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to tripleo-heat-templates (stable/liberty)

Fix proposed to branch: stable/liberty
Review: https://review.openstack.org/298834

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to tripleo-heat-templates (stable/mitaka)

Fix proposed to branch: stable/mitaka
Review: https://review.openstack.org/298847

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to tripleo-heat-templates (stable/liberty)

Reviewed: https://review.openstack.org/298834
Committed: https://git.openstack.org/cgit/openstack/tripleo-heat-templates/commit/?id=16f5dae2d7710e18a344ad2aefbdbb2bd6bdc753
Submitter: Jenkins
Branch: stable/liberty

commit 16f5dae2d7710e18a344ad2aefbdbb2bd6bdc753
Author: Jiri Stransky <email address hidden>
Date: Tue Mar 29 14:11:08 2016 +0200

    Don't restart Pacemaker-managed services from Puppet

    We need to reload/restart services on updates/upgrades to apply any
    config changes, but restarting services managed from Pacemaker from
    Puppet causes problems.

    For now we no-op the restart and rely on the catch-all restart after
    Puppet phase.

    In the future we should have a service provider for pacemaker resources
    that will be using pcs. We still might have to restart services outside
    Puppet due to cluster-wide orchestration issues, but we might be able to
    do the restarts selectively rather than restart everything.

    We also no-op the start/stop commands to be safe, as it also doesn't
    make sense for Puppet to try start and stop those services when it
    doesn't have knowledge about Pacemaker.

    Change-Id: I95e21e10471cd7575f28c095c48150325f1414b3
    Closes-Bug: #1562922
    (cherry picked from commit 7b2e56053f6cf7535c7ae416c5cb41e7c9679924)

tags: added: in-stable-liberty
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to tripleo-heat-templates (stable/mitaka)

Reviewed: https://review.openstack.org/298847
Committed: https://git.openstack.org/cgit/openstack/tripleo-heat-templates/commit/?id=f3215d28ba6693e8e513cc3ae2aba3e500a0a4f0
Submitter: Jenkins
Branch: stable/mitaka

commit f3215d28ba6693e8e513cc3ae2aba3e500a0a4f0
Author: Jiri Stransky <email address hidden>
Date: Tue Mar 29 14:11:08 2016 +0200

    Don't restart Pacemaker-managed services from Puppet

    We need to reload/restart services on updates/upgrades to apply any
    config changes, but restarting services managed from Pacemaker from
    Puppet causes problems.

    For now we no-op the restart and rely on the catch-all restart after
    Puppet phase.

    In the future we should have a service provider for pacemaker resources
    that will be using pcs. We still might have to restart services outside
    Puppet due to cluster-wide orchestration issues, but we might be able to
    do the restarts selectively rather than restart everything.

    We also no-op the start/stop commands to be safe, as it also doesn't
    make sense for Puppet to try start and stop those services when it
    doesn't have knowledge about Pacemaker.

    Change-Id: I95e21e10471cd7575f28c095c48150325f1414b3
    Closes-Bug: #1562922
    (cherry picked from commit 7b2e56053f6cf7535c7ae416c5cb41e7c9679924)

tags: added: in-stable-mitaka
Revision history for this message
Doug Hellmann (doug-hellmann) wrote : Fix included in openstack/tripleo-heat-templates 5.0.0.0b1

This issue was fixed in the openstack/tripleo-heat-templates 5.0.0.0b1 development milestone.

Revision history for this message
Doug Hellmann (doug-hellmann) wrote : Fix included in openstack/tripleo-heat-templates 2.1.0

This issue was fixed in the openstack/tripleo-heat-templates 2.1.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

This issue was fixed in the openstack/tripleo-heat-templates 2.1.0 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.