Bug 1508572 - RHOS 12 tenants are not mapped to CFME
Summary: RHOS 12 tenants are not mapped to CFME
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat CloudForms Management Engine
Classification: Red Hat
Component: Providers
Version: 5.9.0
Hardware: x86_64
OS: Linux
high
urgent
Target Milestone: GA
: 5.9.0
Assignee: Richard Su
QA Contact: Ido Ovadia
URL:
Whiteboard: openstack
Depends On:
Blocks: 1511548
TreeView+ depends on / blocked
 
Reported: 2017-11-01 17:02 UTC by Ido Ovadia
Modified: 2018-03-06 14:55 UTC (History)
8 users (show)

Fixed In Version: 5.9.0.5
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1511548 (view as bug list)
Environment:
Last Closed: 2018-03-06 14:55:56 UTC
Category: ---
Cloudforms Team: Openstack
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Ido Ovadia 2017-11-01 17:02:27 UTC
Description of problem:
=======================
CFME does not recognize any RHOS 12 cloud tenant 
(even if tenant created by CFME) 

Version-Release number of selected component:
=============================================
OSPD 12
CFME 5.9.0.4


How reproducible:
=================
RHOS 12 - 100%


Steps to Reproduce:
===================
1. Deploy OSPD 12 (containerized overcloud)
2. Add Undercloud as Infrastructure provider
3. Add Overcloud as cloud provide
4. Browse Compute --> Clouds --> Tenants 

Actual results:
===============
Cloud Tenant list is empty  

Expected results:
=================
All tenant are recognized and mapped correctly

Additional info:
================
- Tenant which created by CFME doesn't recognized too

Comment 3 Richard Su 2017-11-03 22:38:13 UTC
Hi,

The tenants not being mapped is a symptom of the underlying problem where the EMS refresh failed. I've included the stack trace below.

The EMS refresh failed because it received a 404 when trying to reach http://10.0.0.103:8774/v2.1/os-availability-zone.json. 

The valid URI is http://10.0.0.103:8774/v2.1/os-availability-zone without the ".json" extension.

[stack@undercloud-0 ~]$ curl -H "X-Auth-Token: $token"  http://10.0.0.103:8774/v2.1/os-availability-zone.json
<html>
 <head>
  <title>404 Not Found</title>
 </head>
 <body>
  <h1>404 Not Found</h1>
  The resource could not be found.<br /><br />
(overcloud) 
[stack@undercloud-0 ~]$ curl -H "X-Auth-Token: $token"  http://10.0.0.103:8774/v2.1/os-availability-zone
{"availabilityZoneInfo": [{"zoneState": {"available": true}, "hosts": null, "zoneName": "nova"}]}(overcloud)

I believe this problem is already fixed in fog-openstack (https://github.com/fog/fog-openstack/commit/c6906abf357180dfb81a94f3c345393d63da0f33). 

Your deployment is using fog-openstack 0.1.20.

The fix is in release 0.1.22.

---

[----] E, [2017-11-03T17:31:00.468547 #30504:dd5130] ERROR -- : MIQ(ManageIQ::Providers::Openstack::CloudManager::Refresher#refresh) EMS: [OSP-12-Overcloud], id: [4000000000005] Refresh failed
[----] E, [2017-11-03T17:31:00.478918 #30504:dd5130] ERROR -- : [Fog::Compute::OpenStack::NotFound]: Expected(200) <=> Actual(404 Not Found)
excon.error.response
  :body          => "{\"message\": \"The resource could not be found.<br /><br />\\n\\n\\n\", \"code\": \"404 Not Found\", \"title\": \"Not Found\"}"
  :cookies       => [
  ]
  :headers       => {
    "Content-Length"         => "112"
    "Content-Type"           => "application/json"
    "Date"                   => "Fri, 03 Nov 2017 21:31:00 GMT"
    "Server"                 => "Apache"
    "x-compute-request-id"   => "req-a3acd839-11f5-4044-a574-c1a568381759"
    "x-openstack-request-id" => "req-a3acd839-11f5-4044-a574-c1a568381759"
  }
  :host          => "10.0.0.103"
  :local_address => "10.0.0.2"
  :local_port    => 50180
  :path          => "/v2.1/os-availability-zone.json"
  :port          => 8774
  :reason_phrase => "Not Found"
  :remote_ip     => "10.0.0.103"
  :status        => 404
  :status_line   => "HTTP/1.1 404 Not Found\r\n"
  Method:[block in method_missing]
[----] E, [2017-11-03T17:31:00.479484 #30504:dd5130] ERROR -- : /opt/rh/cfme-gemset/gems/excon-0.59.0/lib/excon/middlewares/expects.rb:7:in `response_call'
/opt/rh/cfme-gemset/gems/excon-0.59.0/lib/excon/middlewares/response_parser.rb:9:in `response_call'
/opt/rh/cfme-gemset/gems/excon-0.59.0/lib/excon/connection.rb:389:in `response'
/opt/rh/cfme-gemset/gems/excon-0.59.0/lib/excon/connection.rb:253:in `request'
/opt/rh/cfme-gemset/gems/fog-core-1.45.0/lib/fog/core/connection.rb:81:in `request'
/opt/rh/cfme-gemset/gems/fog-openstack-0.1.20/lib/fog/openstack/core.rb:81:in `request'
/opt/rh/cfme-gemset/gems/fog-openstack-0.1.20/lib/fog/compute/openstack/requests/list_zones.rb:6:in `list_zones'
/opt/rh/cfme-gemset/gems/fog-openstack-0.1.20/lib/fog/compute/openstack/models/availability_zones.rb:16:in `summary'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/inventory/collector/cloud_manager.rb:5:in `block in availability_zones_compute'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/refresh_parser_common/helper_methods.rb:36:in `safe_call'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/refresh_parser_common/helper_methods.rb:57:in `safe_list'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/inventory/collector/cloud_manager.rb:5:in `availability_zones_compute'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/inventory/collector/cloud_manager.rb:13:in `availability_zones'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/inventory/parser/cloud_manager.rb:47:in `availability_zones'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/inventory/parser/cloud_manager.rb:6:in `parse'
/var/www/miq/vmdb/app/models/manager_refresh/inventory.rb:38:in `block in parse'
/var/www/miq/vmdb/app/models/manager_refresh/inventory.rb:35:in `each'
/var/www/miq/vmdb/app/models/manager_refresh/inventory.rb:35:in `parse'
/var/www/miq/vmdb/app/models/manager_refresh/inventory.rb:45:in `inventory_collections'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/cloud_manager/refresher.rb:37:in `block in parse_targeted_inventory'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:28:in `realtime_block'
/opt/rh/cfme-gemset/bundler/gems/manageiq-providers-openstack-3692df049bda/app/models/manageiq/providers/openstack/cloud_manager/refresher.rb:35:in `parse_targeted_inventory'
/var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:88:in `block in refresh_targets_for_ems'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:28:in `realtime_block'
/var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:87:in `refresh_targets_for_ems'
/var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:24:in `block (2 levels) in refresh'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:35:in `realtime_block'
/var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:24:in `block in refresh'
/var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:14:in `each'
/var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:14:in `refresh'
/var/www/miq/vmdb/app/models/manageiq/providers/base_manager/refresher.rb:9:in `refresh'
/var/www/miq/vmdb/app/models/ems_refresh.rb:97:in `block in refresh'
/var/www/miq/vmdb/app/models/ems_refresh.rb:96:in `each'
/var/www/miq/vmdb/app/models/ems_refresh.rb:96:in `refresh'
/var/www/miq/vmdb/app/models/miq_queue.rb:452:in `block in dispatch_method'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:91:in `block in timeout'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:33:in `block in catch'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:33:in `catch'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:33:in `catch'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:106:in `timeout'
/var/www/miq/vmdb/app/models/miq_queue.rb:451:in `dispatch_method'
/var/www/miq/vmdb/app/models/miq_queue.rb:428:in `block in deliver'
/var/www/miq/vmdb/app/models/user.rb:252:in `with_user_group'
/var/www/miq/vmdb/app/models/miq_queue.rb:428:in `deliver'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:105:in `deliver_queue_message'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:134:in `deliver_message'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:152:in `block in do_work'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:146:in `loop'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:146:in `do_work'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:331:in `block in do_work_loop'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:328:in `loop'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:328:in `do_work_loop'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:155:in `run'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:129:in `start'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:22:in `start_worker'
/var/www/miq/vmdb/app/models/miq_worker.rb:354:in `block in start_runner_via_fork'
/opt/rh/cfme-gemset/gems/nakayoshi_fork-0.0.3/lib/nakayoshi_fork.rb:24:in `fork'
/opt/rh/cfme-gemset/gems/nakayoshi_fork-0.0.3/lib/nakayoshi_fork.rb:24:in `fork'
/var/www/miq/vmdb/app/models/miq_worker.rb:352:in `start_runner_via_fork'
/var/www/miq/vmdb/app/models/miq_worker.rb:346:in `start_runner'
/var/www/miq/vmdb/app/models/miq_worker.rb:380:in `start'
/var/www/miq/vmdb/app/models/miq_worker.rb:263:in `start_worker'
/var/www/miq/vmdb/app/models/mixins/per_ems_worker_mixin.rb:68:in `start_worker_for_ems'
/var/www/miq/vmdb/app/models/mixins/per_ems_worker_mixin.rb:46:in `block in sync_workers'
/var/www/miq/vmdb/app/models/mixins/per_ems_worker_mixin.rb:45:in `each'
/var/www/miq/vmdb/app/models/mixins/per_ems_worker_mixin.rb:45:in `sync_workers'
/var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:53:in `block in sync_workers'
/var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:50:in `each'
/var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:50:in `sync_workers'
/var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:22:in `monitor_workers'
/var/www/miq/vmdb/app/models/miq_server.rb:327:in `block in monitor'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:28:in `realtime_block'
/var/www/miq/vmdb/app/models/miq_server.rb:327:in `monitor'
/var/www/miq/vmdb/app/models/miq_server.rb:349:in `block (2 levels) in monitor_loop'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store'
/opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-93e11d4fe973/lib/gems/pending/util/extensions/miq-benchmark.rb:35:in `realtime_block'
/var/www/miq/vmdb/app/models/miq_server.rb:349:in `block in monitor_loop'
/var/www/miq/vmdb/app/models/miq_server.rb:348:in `loop'
/var/www/miq/vmdb/app/models/miq_server.rb:348:in `monitor_loop'
/var/www/miq/vmdb/app/models/miq_server.rb:232:in `start'
/var/www/miq/vmdb/lib/workers/evm_server.rb:27:in `start'
/var/www/miq/vmdb/lib/workers/evm_server.rb:48:in `start'
/var/www/miq/vmdb/lib/workers/bin/evm_server.rb:4:in `<main>'
[----] E, [2017-11-03T17:31:00.487261 #30504:dd5130] ERROR -- : MIQ(ManageIQ::Providers::Openstack::CloudManager::Refresher#refresh) EMS: [OSP-12-Overcloud], id: [4000000000005] Unable to perform refresh for the following targets:
[----] E, [2017-11-03T17:31:00.487483 #30504:dd5130] ERROR -- : MIQ(ManageIQ::Providers::Openstack::CloudManager::Refresher#refresh)  --- ManageIQ::Providers::Openstack::CloudManager [OSP-12-Overcloud] id [4000000000005]

Comment 4 Marek Aufart 2017-11-09 08:52:47 UTC
As mentioned in Comment #3, the cause was outdated Fog-OpenStack dependency.

This has been already fixed in https://github.com/ManageIQ/manageiq-providers-openstack/pull/129

Comment 6 Ido Ovadia 2017-11-11 23:21:33 UTC
Verified
========
5.9.0.5


Note You need to log in before you can comment on or make changes to this bug.