Bug 1580816

Summary: CloudForms not collecting node level data from OpenShift
Product: Red Hat CloudForms Management Engine Reporter: David Luong <dluong>
Component: ProvidersAssignee: Yaacov Zamir <yzamir>
Status: CLOSED CURRENTRELEASE QA Contact: Einat Pacifici <epacific>
Severity: high Docs Contact:
Priority: high    
Version: 5.9.0CC: cpelland, dluong, gblomqui, jfrey, jhardy, obarenbo, rspagnol, simaishi, snaim, yzamir
Target Milestone: GAKeywords: TestOnly, ZStream
Target Release: 5.10.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 5.10.0.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1591429 (view as bug list) Environment:
Last Closed: 2019-02-11 14:05:19 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: Bug
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: Container Management Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1561041, 1591429    
Attachments:
Description Flags
node-metrics-verification none

Description David Luong 2018-05-21 21:11:00 UTC
Description of problem:
CloudForms not collecting node level data from OpenShift

Version-Release number of selected component (if applicable):
5.9.2

How reproducible:
Always

Steps to Reproduce:
1.  Add OSE provider with Hawkular endpoint
2.  
3.

Actual results:
No node level metrics ever collected.  Dashboard consistently blank.

Expected results:
Node level metrics collected

Additional info:

When collecting metrics through rails, this is what happens:

# vmdb
# bundle exec rails console
irb(main):001:0> node = ContainerNode.find_by(:name => 'testnode-1.example.com')
irb(main):002:0> context = ManageIQ::Providers::Kubernetes::ContainerManager::MetricsCapture::HawkularCaptureContext.new(node, 5.hours.ago, 0.minutes.ago, 30)
irb(main):003:0> context.collect_metrics

ManageIQ::Providers::Kubernetes::ContainerManager::MetricsCapture::NoMetricsFoundError: no gauge metrics found for [testnode-1.example.com]
	from /opt/rh/cfme-gemset/bundler/gems/cfme-providers-kubernetes-90de55ae9833/app/models/manageiq/providers/kubernetes/container_manager/metrics_capture/hawkular_capture_context.rb:135:in `get_metrics_key'
	from /opt/rh/cfme-gemset/bundler/gems/cfme-providers-kubernetes-90de55ae9833/app/models/manageiq/providers/kubernetes/container_manager/metrics_capture/hawkular_capture_context.rb:214:in `block in insert_metrics'
	from /opt/rh/cfme-gemset/bundler/gems/cfme-providers-kubernetes-90de55ae9833/app/models/manageiq/providers/kubernetes/container_manager/metrics_capture/hawkular_capture_context.rb:211:in `each'
	from /opt/rh/cfme-gemset/bundler/gems/cfme-providers-kubernetes-90de55ae9833/app/models/manageiq/providers/kubernetes/container_manager/metrics_capture/hawkular_capture_context.rb:211:in `insert_metrics'
	from /opt/rh/cfme-gemset/bundler/gems/cfme-providers-kubernetes-90de55ae9833/app/models/manageiq/providers/kubernetes/container_manager/metrics_capture/hawkular_capture_context.rb:246:in `collect_metrics_for_object'
	from /opt/rh/cfme-gemset/bundler/gems/cfme-providers-kubernetes-90de55ae9833/app/models/manageiq/providers/kubernetes/container_manager/metrics_capture/hawkular_capture_context.rb:61:in `collect_node_metrics'
	from /opt/rh/cfme-gemset/bundler/gems/cfme-providers-kubernetes-90de55ae9833/app/models/manageiq/providers/kubernetes/container_manager/metrics_capture/capture_context_mixin.rb:27:in `collect_metrics'
	from (irb):5
	from /opt/rh/cfme-gemset/gems/railties-5.0.6/lib/rails/commands/console.rb:65:in `start'
	from /opt/rh/cfme-gemset/gems/railties-5.0.6/lib/rails/commands/console_helper.rb:9:in `start'
	from /opt/rh/cfme-gemset/gems/railties-5.0.6/lib/rails/commands/commands_tasks.rb:78:in `console'
	from /opt/rh/cfme-gemset/gems/railties-5.0.6/lib/rails/commands/commands_tasks.rb:49:in `run_command!'
	from /opt/rh/cfme-gemset/gems/railties-5.0.6/lib/rails/commands.rb:18:in `<top (required)>'
	from bin/rails:4:in `require'
	from bin/rails:4:in `<main>'

However, if running the following, it runs successfully:

irb(main):002:0> context = ManageIQ::Providers::Kubernetes::ContainerManager::MetricsCapture::HawkularLegacyCaptureContext.new(node, 5.hours.ago, 0.minutes.ago, 30)
irb(main):003:0> context.collect_metrics

There are also no relevant error lines for this either in the evm.log.

Comment 3 Yaacov Zamir 2018-05-23 06:06:39 UTC
looks like a dupliacte of:
https://bugzilla.redhat.com/show_bug.cgi?id=1552314

can you check if this is fixed in 5.9.2 ?

Comment 6 Yaacov Zamir 2018-05-23 15:17:53 UTC
^^

Comment 9 Yaacov Zamir 2018-05-24 06:45:17 UTC
Submitted upstream:
https://github.com/ManageIQ/manageiq-providers-kubernetes/pull/257

Comment 10 Yaacov Zamir 2018-05-24 10:07:01 UTC
Merged upstream:
https://github.com/ManageIQ/manageiq-providers-kubernetes/pull/257

Comment 13 Shalom Naim 2018-06-24 10:47:19 UTC
Created attachment 1454127 [details]
node-metrics-verification