Skip to content

sonic-exporter to gnmic migration - #670

Open
Sven-Ric wants to merge 24 commits into
masterfrom
gnmic-migration
Open

sonic-exporter to gnmic migration#670
Sven-Ric wants to merge 24 commits into
masterfrom
gnmic-migration

Conversation

@Sven-Ric

@Sven-Ric Sven-Ric commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Description

The stordis monsoon sonic-exporter has been deprecated (https://github.com/STORDIS/monsoon) This role deploys gnmic to collect the same metrics and export them under the same names as the sonic-exporter.

Used AI-Tools ✨

Fable 5 was used to explore multiple to find commonalities and differences between gnmi implementations in community and enterprise SONiC. Confirmed by Hand.

Release Notes

Required Actions

The monsoon sonic-exporter was superseded and will be removed in a future release. Use gNMI instead.
More information about the migration can be found in the gnmic [README](https://github.com/metal-stack/metal-roles/blob/master/partition/roles/monitoring/gnmic/README.md).

@metal-robot metal-robot Bot added the area: deployment Affects the deployment area. label Jul 15, 2026
@Sven-Ric
Sven-Ric marked this pull request as ready for review July 16, 2026 11:03
@Sven-Ric
Sven-Ric requested review from a team as code owners July 16, 2026 11:03
@Sven-Ric
Sven-Ric requested a review from vknabel July 16, 2026 11:03

@simcod simcod 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.

Great, thank you for this valuable contribution!

It would be great, to add a migration guide as we have in place for alloy/promtail. How about providing an option to remove the sonic-exporter?

Depending on the migration, we should also add an Action Required or Noteworthy section in the pull request description.

Comment thread partition/roles/monitoring/bgp-metrics/README.md
Comment thread partition/roles/monitoring/gnmic/README.md
Comment thread partition/roles/monitoring/prometheus/defaults/main.yaml
Comment thread partition/roles/monitoring/node-exporter/defaults/main.yaml

@ma-hartma ma-hartma 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.

This looks quite good already. @simcod and I took a look at it together and I also got some comments.

Comment thread partition/roles/monitoring/bgp-metrics/templates/bgp-metrics.py.j2
Comment thread partition/roles/monitoring/gnmic/defaults/main.yaml
Comment thread partition/roles/monitoring/gnmic/files/lldp-neighbors.star Outdated
Comment thread partition/roles/monitoring/gnmic/files/lldp-neighbors.star
Comment thread partition/roles/monitoring/gnmic/files/sonic-metrics.star
Comment thread partition/roles/monitoring/gnmic/files/sonic-metrics.star
Comment thread partition/roles/monitoring/gnmic/tasks/main.yaml
@github-project-automation github-project-automation Bot moved this to In Progress in Development Jul 16, 2026
@simcod simcod added the triage This should be talked about in the next planning. label Jul 16, 2026
@ma-hartma ma-hartma added the requires docs update For merging this pull request, an update in metal-stack.io/docs is required. label Jul 21, 2026
@ma-hartma

Copy link
Copy Markdown
Contributor

Please also update https://metal-stack.io/docs/next/monitoring, it mentions sonic-exporter multiple times.


- name: Set port list
ansible.builtin.set_fact:
monitoring_gnmic_ports: "{{ (monitoring_gnmic_port_json.stdout | from_json).keys() | select('match', '^Ethernet[0-9]+$') | list }}"

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.

maybe adjust this select to match all ports starting with Eth so different naming schemes are supported as well.

Comment thread partition/roles/monitoring/gnmic/README.md Outdated
@simcod simcod removed the triage This should be talked about in the next planning. label Jul 27, 2026
@Gerrit91
Gerrit91 requested a review from ma-hartma July 27, 2026 14:49

@ma-hartma ma-hartma 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.

Thanks for implementing all the changes. This looks really good now.
I only see this comment left, but I think it is optional and up to you @Sven-Ric #670 (comment).

As we will deprecate the sonic-exporter in future, we could even say it is an "Action Required" instead of a "Noteworthy".

One final request: Please update the website monitoring section as soon as possible.

@ma-hartma ma-hartma 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.

Sorry, found one last thing.

@@ -0,0 +1,36 @@
---
monitoring_gnmic_image_name: "ghcr.io/openconfig/gnmic"

@ma-hartma ma-hartma Jul 27, 2026

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.

Please move the image tag and name to the release vector. Open an own PR in metal-stack/releases and reference the values.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: deployment Affects the deployment area. requires docs update For merging this pull request, an update in metal-stack.io/docs is required.

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

5 participants