Skip to content

chore(deps): update node exporter to 1.12.1 - #9398

Merged
chmill-zz merged 7 commits into
mainfrom
nodeexporter112
Sep 8, 2026
Merged

chore(deps): update node exporter to 1.12.1#9398
chmill-zz merged 7 commits into
mainfrom
nodeexporter112

Conversation

@chmill-zz

@chmill-zz chmill-zz commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Update node-exporter-kubernetes from upstream 1.9.1 to 1.12.1 revision 7 for supported Ubuntu and Azure Linux 3 VHDs; retain upstream collector defaults except the documented MANA workaround.
  • Verify the exact installed package and binary version in VHD content tests.
  • Validate the AKS metric contract, new default collector presence, and successful InfiniBand collection when compatible hardware exists. Do not require optional driver-specific hardware counters universally.
  • Handle the MANA rate EINVAL issue tracked by infiniband collector fails on MANA RDMA devices before device exclusion is applied prometheus/node_exporter#3810: suppress the entire InfiniBand collector on MANA/mixed-HCA nodes pending an upstream fix.

MANA Lifecycle

  • Record observed MANA PCI hardware in /run/node-exporter-mana-observed. This survives exporter restarts and temporary VF absence but resets each boot and does not retain build-VM hardware state.
  • Install a PCI-add udev rule to record late attachment and request a nonblocking try-restart. An inactive exporter is not started; an exporter already running with the suppression flag is not restarted again.
  • E2E logs hardware/collector expectations and asserts that a marked node does not expose an enabled InfiniBand collector.

Local Validation

  • 15 ShellSpec cases passed: PCI IDs, mixed devices, wrong vendor, final argv, VF removal/restart, late attachment, marker-write failure, and redundant-restart avoidance.
  • Node exporter and component Go unit tests passed; all E2E packages compile.
  • Startup ShellCheck passed. Installer ShellCheck passes excluding pre-existing SC2086 findings on package-install error exits.
  • Shell syntax, git diff --check, and udevadm verify passed.
  • All pinned package artifacts were checked for availability during initial preparation.

Candidate Evidence And Remaining Validation

Candidate VHD build 179769249 validated the prior head 4e7085b: 237 passed, 70 skipped, zero failures; node exporter v1.12.1 ran on four MANA OS scenarios with InfiniBand suppressed. This predates the lifecycle corrections in a809912; fresh candidate validation is required.

Earlier assertions that the Ubuntu 20.04 mlx5_ib module-loaded banner proved hardware-counter coverage were too strong. No device inventory or successful branch/scrape evidence established that claim. The separate H100 GPU run used a main-built v1.9.1 VHD; A100 skipped on quota. Prefer existing GPU scenarios with candidate VHDs for additional InfiniBand assurance rather than creating a new expensive manual cluster.

Validate actual udev delivery and eventual exporter arguments on late attachment, including preservation of inactive-service state. Mocked unit tests and udev syntax verification do not replace this integration evidence.

Standalone E2E build 179769254 used main VHDs and failed two VM-running-state timeouts before exporter validation; it is not evidence of a candidate exporter regression.

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Windows Unit Test Results

  3 files   14 suites   56s ⏱️
415 tests 415 ✅ 0 💤 0 ❌
418 runs  418 ✅ 0 💤 0 ❌

Results for commit a6aa6dd.

♻️ This comment has been updated with latest results.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Both new version validators expect a leading v that real node-exporter 1.12.1 output does not contain.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Updates the VHD-cached node exporter and expands validation of package versions, default collectors, and InfiniBand metrics.

Changes:

  • Bumps node-exporter from 1.9.1 to 1.12.1 across supported Ubuntu and Azure Linux 3 images.
  • Adds package/binary version checks to VHD content testing.
  • Adds E2E validation for new collectors and InfiniBand hardware counters.

Package Update Analysis: node-exporter-kubernetes

Version change: 1.9.1 → 1.12.1 (minor update)
OS variants affected: Ubuntu 20.04, 22.04, 24.04, 26.04; Azure Linux 3.0
OS variants NOT updated: None among supported variants

Key upstream changes include:

  • 🟡 New default collectors: bcachefs, kernel_hung, and dmmultipath.
  • 🟡 New InfiniBand hardware-counter metrics and device filtering.
  • 🟡 Behavioral changes to mdadm and filesystem collection.
  • 🟢 New NVMe, NFS, EDAC, CPU-frequency, and network metrics.
  • 🟢 Fixes for diskstats, filesystem, thermal-zone, perf, EDAC, netdev, and mountstats behavior.
  • No upstream security fixes or explicit breaking CLI changes were identified in the official changelog.

VHD size impact: No artifact-size data is available; the additional collectors may cause a modest binary-size increase.
Overall risk: 🟡 Medium—this is a multi-minor runtime update introducing new default collection behavior. Candidate-VHD and InfiniBand validation remain appropriate before merge.

File summaries
File Description
parts/common/components.json Pins node-exporter 1.12.1 packages for supported distributions.
vhdbuilder/packer/test/linux-vhd-content-test.sh Adds package and executable version checks.
e2e/validators.go Detects InfiniBand hardware and invokes collector validation.
e2e/nodeexporter/metrics.go Parses metrics and validates new collectors and hardware counters.
e2e/nodeexporter/metrics_test.go Adds collector-validation unit tests.
Review details
  • Files reviewed: 5/5 changed files
  • Comments generated: 2
  • Review effort level: Balanced

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread e2e/nodeexporter/metrics.go
Comment thread vhdbuilder/packer/test/linux-vhd-content-test.sh
Copilot AI review requested due to automatic review settings September 4, 2026 19:07

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The new MANA startup behavior lacks the repository-required ShellSpec coverage.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 6/6 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread parts/linux/cloud-init/artifacts/node-exporter/node-exporter-startup.sh Outdated
Copilot AI review requested due to automatic review settings September 4, 2026 19:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The hardware-specific InfiniBand path still requires the documented candidate-VHD HPC validation before merge.

Review details
  • Files reviewed: 7/7 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI review requested due to automatic review settings September 4, 2026 19:30

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The runtime dependency jump and MANA workaround require the quota-constrained candidate-VHD HPC validation noted in the PR.

Review details
  • Files reviewed: 7/7 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI review requested due to automatic review settings September 4, 2026 19:39

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The collector upgrade and MANA workaround require final confirmation on quota-constrained InfiniBand hardware.

Review details
  • Files reviewed: 7/7 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI review requested due to automatic review settings September 8, 2026 19:39

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Optional exporter arguments can currently override the mandatory MANA suppression flag.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 8/8 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread parts/linux/cloud-init/artifacts/node-exporter/node-exporter-startup.sh Outdated
Copilot AI review requested due to automatic review settings September 8, 2026 20:34

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Fresh candidate-VHD validation of udev delivery and late MANA attachment remains outstanding.

Review details
  • Files reviewed: 8/8 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

@chmill-zz
chmill-zz merged commit d93ea0c into main Sep 8, 2026
52 checks passed
@chmill-zz
chmill-zz deleted the nodeexporter112 branch September 8, 2026 22:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

components This pull request updates cached components on Linux or Windows VHDs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants