Jefferson Almeida created AMBARI-26661:
------------------------------------------
Summary: Telemetry scrape targets never appear on a freshly
installed cluster
Key: AMBARI-26661
URL: https://issues.apache.org/jira/browse/AMBARI-26661
Project: Ambari
Issue Type: Bug
Components: ambari-server, metrics
Affects Versions: 3.1.0
Environment: Rocky Linux 9
Reporter: Jefferson Almeida
Fix For: 3.1.0
On a freshly installed cluster, VMAGENT never receives component scrape targets
for
HDFS/YARN/HBase. The per-host telemetry assignment stays empty until something
unrelated forces a recompile — a cluster config change, or an ambari-server
restart.
Root cause: TelemetryHolder's only per-component subscription is
ServiceComponentInstalledEvent. ServiceComponentHostImpl publishes that event
from
the code path that first persists the host component row, while its desired
state is
still INIT. TelemetryAssignmentCompiler.compileCluster() skips any component
whose
state is not installed, and isInstalled() accepts only INSTALLED, STARTING,
STARTED,
STOPPING, UPGRADING, DISABLED and UNKNOWN — INIT is not among them. So the first
assignment compiled for a host contains no component targets, and nothing
revisits it
on the normal install/start path: handleEvent(), which processes the real state
transitions, refreshes HostLevelParamsHolder but never TelemetryHolder.
Steps to reproduce:
1. Install a new cluster with VICTORIAMETRICS plus HDFS/YARN/HBase.
2. Once all components are STARTED, inspect the VMAGENT scrape targets (or the
telemetry assignment sent to the agent) — no component targets are present.
3. Change any cluster config, or restart ambari-server, and the targets appear.
Expected: component scrape targets are present once the components reach an
installed
state, without any unrelated action.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]