[fuel][plugin][cinder][netapp] puppet fails on refreshing cinder-scheduler

Bug #1581960 reported by Serg Lystopad
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel Plugin Cinder Netapp
Fix Committed
Wishlist
Unassigned
Fuel for OpenStack
Opinion
Undecided
Unassigned

Bug Description

Detailed bug description:
plugin fails to refresh Service[cinder-scheduler] resource if cinder role is assigned to the compute node. Compute node does not have cinder-scheduler service running (expected).

puppet.log:
...
2016-05-15 11:43:56 +0000 /Stage[main]/Plugin_cinder_netapp::Multibackend/Plugin_cinder_netapp::Backend::Netapp[cinder_netapp]/Service[cinder-scheduler] (err): Failed to call refresh: Could not find init script or upstart conf file for 'cinder-scheduler'
2016-05-15 11:43:56 +0000 /Stage[main]/Plugin_cinder_netapp::Multibackend/Plugin_cinder_netapp::Backend::Netapp[cinder_netapp]/Service[cinder-scheduler] (err): Could not find init script or upstart conf file for 'cinder-scheduler'
/usr/lib/ruby/vendor_ruby/puppet/provider/service/upstart.rb:97:in `search'
/usr/lib/ruby/vendor_ruby/puppet/provider/service/init.rb:102:in `initscript'
/usr/lib/ruby/vendor_ruby/puppet/provider/service/upstart.rb:165:in `is_upstart?'
/usr/lib/ruby/vendor_ruby/puppet/provider/service/upstart.rb:154:in `status'
/usr/lib/ruby/vendor_ruby/puppet/type/service.rb:90:in `retrieve'
/usr/lib/ruby/vendor_ruby/puppet/type/service.rb:227:in `refresh'
/usr/lib/ruby/vendor_ruby/puppet/transaction/event_manager.rb:101:in `process_callback'
/usr/lib/ruby/vendor_ruby/puppet/transaction/event_manager.rb:20:in `block in process_events'
/usr/lib/ruby/vendor_ruby/puppet/transaction/event_manager.rb:93:in `block in queued_events'
/usr/lib/ruby/vendor_ruby/puppet/transaction/event_manager.rb:92:in `each'
/usr/lib/ruby/vendor_ruby/puppet/transaction/event_manager.rb:92:in `queued_events'
/usr/lib/ruby/vendor_ruby/puppet/transaction/event_manager.rb:19:in `process_events'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:221:in `eval_resource'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:147:in `call'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:147:in `block (2 levels) in evaluate'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:335:in `block in thinmark'
/usr/lib/ruby/1.9.1/benchmark.rb:295:in `realtime'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:334:in `thinmark'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:147:in `block in evaluate'
/usr/lib/ruby/vendor_ruby/puppet/graph/relationship_graph.rb:118:in `traverse'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:138:in `evaluate'
/usr/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:169:in `block in apply'
/usr/lib/ruby/vendor_ruby/puppet/util/log.rb:149:in `with_destination'
/usr/lib/ruby/vendor_ruby/puppet/transaction/report.rb:112:in `as_logging_destination'
/usr/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:168:in `apply'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:120:in `block in apply_catalog'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:161:in `block in benchmark'
/usr/lib/ruby/1.9.1/benchmark.rb:295:in `realtime'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:160:in `benchmark'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:119:in `apply_catalog'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:227:in `run_internal'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:134:in `block in run'
/usr/lib/ruby/vendor_ruby/puppet/context.rb:64:in `override'
/usr/lib/ruby/vendor_ruby/puppet.rb:244:in `override'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:133:in `run'
/usr/lib/ruby/vendor_ruby/puppet/application/apply.rb:302:in `apply_catalog'
/usr/lib/ruby/vendor_ruby/puppet/application/apply.rb:236:in `block in main'
/usr/lib/ruby/vendor_ruby/puppet/context.rb:64:in `override'
/usr/lib/ruby/vendor_ruby/puppet.rb:244:in `override'
/usr/lib/ruby/vendor_ruby/puppet/application/apply.rb:198:in `main'
/usr/lib/ruby/vendor_ruby/puppet/application/apply.rb:159:in `run_command'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:381:in `block (2 levels) in run'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:507:in `plugin_hook'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:381:in `block in run'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:496:in `exit_on_fail'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:381:in `run'
/usr/lib/ruby/vendor_ruby/puppet/util/command_line.rb:146:in `run'
/usr/lib/ruby/vendor_ruby/puppet/util/command_line.rb:92:in `execute'
/usr/bin/puppet:8:in `<main>'
2016-05-15 11:43:56 +0000 /Stage[main]/Plugin_cinder_netapp::Multibackend/Plugin_cinder_netapp::Backend::Netapp[cinder_netapp]/Service[cinder-scheduler] (info): Evaluated in 0.01 seconds
...

Steps to reproduce:
 * create fuel HA environment and enable fuel-plugin-cinder-netapp
 * configure fuel-plugin-cinder-netapp to use NFS protocol
 * enable `Multibackend` feature
 * assign `cinder` role to non-controller nodes (compute nodes)
 * deploy-changes

Expected results:
 successful deployment

Actual result:
 deployment fails

Workaround:
 assign `cinder` role to controller nodes (has not been tested)

Description of the environment:

# fuel plugins | grep cinder
8 | cinder_netapp | 4.0.0 | 4.0.0

# rpm -q cinder_netapp-4.0-4.0.0-1.noarch
cinder_netapp-4.0-4.0.0-1.noarch

VERSION:
  feature_groups:
    - mirantis
  production: "docker"
  release: "8.0"
  api: "1.0"
  build_number: "570"
  build_id: "570"
  fuel-nailgun_sha: "558ca91a854cf29e395940c232911ffb851899c1"
  python-fuelclient_sha: "4f234669cfe88a9406f4e438b1e1f74f1ef484a5"
  fuel-agent_sha: "658be72c4b42d3e1436b86ac4567ab914bfb451b"
  fuel-nailgun-agent_sha: "b2bb466fd5bd92da614cdbd819d6999c510ebfb1"
  astute_sha: "b81577a5b7857c4be8748492bae1dec2fa89b446"
  fuel-library_sha: "c2a335b5b725f1b994f78d4c78723d29fa44685a"
  fuel-ostf_sha: "3bc76a63a9e7d195ff34eadc29552f4235fa6c52"
  fuel-mirror_sha: "fb45b80d7bee5899d931f926e5c9512e2b442749"
  fuelmenu_sha: "78ffc73065a9674b707c081d128cb7eea611474f"
  shotgun_sha: "63645dea384a37dde5c01d4f8905566978e5d906"
  network-checker_sha: "a43cf96cd9532f10794dce736350bf5bed350e9d"
  fuel-upgrade_sha: "616a7490ec7199f69759e97e42f9b97dfc87e85b"
  fuelmain_sha: "d605bcbabf315382d56d0ce8143458be67c53434"

Revision history for this message
Andrey Volochay (wallavv) wrote :

The plugin is not designed and especially was not tested for case described in the bug.

Official documentation:
https://github.com/openstack/fuel-plugin-cinder-netapp/blob/8.0/doc/source/guide.rst

See item 6

"Please, note that all controller nodes should be configured with Cinder role."

Changed in fuel:
status: New → Opinion
Changed in fuel-plugin-cinder-netapp:
status: New → Opinion
importance: Undecided → Wishlist
Changed in fuel-plugin-cinder-netapp:
milestone: none → 4.x.x
milestone: 4.x.x → 3.x.x
milestone: 3.x.x → 4.x.x
Changed in fuel-plugin-cinder-netapp:
status: Opinion → Fix Committed
status: Fix Committed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-plugin-cinder-netapp (master)

Reviewed: https://review.openstack.org/328635
Committed: https://git.openstack.org/cgit/openstack/fuel-plugin-cinder-netapp/commit/?id=c04fc82947d865cb17d50bf867b7b9d2645684ba
Submitter: Jenkins
Branch: master

commit c04fc82947d865cb17d50bf867b7b9d2645684ba
Author: Andrey Volochay <email address hidden>
Date: Fri Jun 10 18:02:53 2016 +0300

    Add full support of multi backends

     - Added full support of multi backends. The plugin does not overwrite
     "enabled_backends" option that allows to use it with other
     plugins for Cinder backends.
     - Since FilterScheduler is default scheduler driver starting Grizzly,
     it has been deleted from set up. This change allows to set Cinder or
     Ceph-OSD roles wherever you need.
     - Added small changes in site.pp to get free allocation of roles
     - The code has been refactored and commented, slightly.

    Change-Id: I117fed67553af4065b3ebd3673a17b51cf42dc9a
    Closes-Bug: #1581960

Changed in fuel-plugin-cinder-netapp:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-plugin-cinder-netapp (master)

Fix proposed to branch: master
Review: https://review.openstack.org/334004

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-plugin-cinder-netapp (master)

Reviewed: https://review.openstack.org/334004
Committed: https://git.openstack.org/cgit/openstack/fuel-plugin-cinder-netapp/commit/?id=1ae5ca1e5d021378d5d3395b051427d53b244990
Submitter: Jenkins
Branch: master

commit c997a3bad44f8c69bef6456cc642b7aa4318cf6c
Author: Andrey Volochay <email address hidden>
Date: Fri Jun 10 20:16:12 2016 +0300

    Update and fix the documentation

     - Documentation has been updated and corrected to correspond latest
     version of the code

    Change-Id: I9f51cc17b72b1efa6765add17d92cfbb7126f35f

commit c04fc82947d865cb17d50bf867b7b9d2645684ba
Author: Andrey Volochay <email address hidden>
Date: Fri Jun 10 18:02:53 2016 +0300

    Add full support of multi backends

     - Added full support of multi backends. The plugin does not overwrite
     "enabled_backends" option that allows to use it with other
     plugins for Cinder backends.
     - Since FilterScheduler is default scheduler driver starting Grizzly,
     it has been deleted from set up. This change allows to set Cinder or
     Ceph-OSD roles wherever you need.
     - Added small changes in site.pp to get free allocation of roles
     - The code has been refactored and commented, slightly.

    Change-Id: I117fed67553af4065b3ebd3673a17b51cf42dc9a
    Closes-Bug: #1581960

commit 382a35ced03f3d4e604bbd7724bfac8412df3364
Author: Andrey Volochay <email address hidden>
Date: Thu May 12 18:01:04 2016 +0300

    Fix bug with multibackend when Ceph is used

    - bug/1581028

    Closes-Bug: #1581028
    Change-Id: Iafe57e330ee8eb802fe04d2430f9cc5c80dbcc3b

commit b8508cddb840bc012b978b86141fa93cc167018b
Author: Andrey <email address hidden>
Date: Mon May 16 17:34:46 2016 -0700

    Fixed function file name

    Change-Id: Ide452a66208d8a5d90b28edfc7953b43b6b6c582

commit 2eb7ae377d8aa662a1098f98bcb5cf3368193a6e
Author: Andrey Volochay <email address hidden>
Date: Mon May 16 10:13:19 2016 +0300

    Fix documented limitations

    Change-Id: I0cb21423065bd658f054268ba7966674bd30edd3

commit 7d70c93c379111563b237fdc167344078e2c72dd
Author: Andrey Volochay <email address hidden>
Date: Tue May 10 15:57:40 2016 +0300

    Rewrite fields description in UI

    - Rewritten labels and descriptions of fields in UI
    - Fixed wrong links to fuel documentation
    - Fixed typos

    Change-Id: If33ff51b47d43c3fe897a9425b240d524be35c1f

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-plugin-cinder-netapp (8.0)

Fix proposed to branch: 8.0
Review: https://review.openstack.org/334021

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-plugin-cinder-netapp (8.0)

Reviewed: https://review.openstack.org/334021
Committed: https://git.openstack.org/cgit/openstack/fuel-plugin-cinder-netapp/commit/?id=c427aeaeadb5ef7b3f042b970b223e489a06c835
Submitter: Jenkins
Branch: 8.0

commit c997a3bad44f8c69bef6456cc642b7aa4318cf6c
Author: Andrey Volochay <email address hidden>
Date: Fri Jun 10 20:16:12 2016 +0300

    Update and fix the documentation

     - Documentation has been updated and corrected to correspond latest
     version of the code

    Change-Id: I9f51cc17b72b1efa6765add17d92cfbb7126f35f

commit c04fc82947d865cb17d50bf867b7b9d2645684ba
Author: Andrey Volochay <email address hidden>
Date: Fri Jun 10 18:02:53 2016 +0300

    Add full support of multi backends

     - Added full support of multi backends. The plugin does not overwrite
     "enabled_backends" option that allows to use it with other
     plugins for Cinder backends.
     - Since FilterScheduler is default scheduler driver starting Grizzly,
     it has been deleted from set up. This change allows to set Cinder or
     Ceph-OSD roles wherever you need.
     - Added small changes in site.pp to get free allocation of roles
     - The code has been refactored and commented, slightly.

    Change-Id: I117fed67553af4065b3ebd3673a17b51cf42dc9a
    Closes-Bug: #1581960

commit 382a35ced03f3d4e604bbd7724bfac8412df3364
Author: Andrey Volochay <email address hidden>
Date: Thu May 12 18:01:04 2016 +0300

    Fix bug with multibackend when Ceph is used

    - bug/1581028

    Closes-Bug: #1581028
    Change-Id: Iafe57e330ee8eb802fe04d2430f9cc5c80dbcc3b

commit b8508cddb840bc012b978b86141fa93cc167018b
Author: Andrey <email address hidden>
Date: Mon May 16 17:34:46 2016 -0700

    Fixed function file name

    Change-Id: Ide452a66208d8a5d90b28edfc7953b43b6b6c582

commit 2eb7ae377d8aa662a1098f98bcb5cf3368193a6e
Author: Andrey Volochay <email address hidden>
Date: Mon May 16 10:13:19 2016 +0300

    Fix documented limitations

    Change-Id: I0cb21423065bd658f054268ba7966674bd30edd3

commit 7d70c93c379111563b237fdc167344078e2c72dd
Author: Andrey Volochay <email address hidden>
Date: Tue May 10 15:57:40 2016 +0300

    Rewrite fields description in UI

    - Rewritten labels and descriptions of fields in UI
    - Fixed wrong links to fuel documentation
    - Fixed typos

    Change-Id: If33ff51b47d43c3fe897a9425b240d524be35c1f

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.