From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 3B31E1FF17E for ; Thu, 30 Oct 2025 16:53:10 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id C20CB174; Thu, 30 Oct 2025 16:53:44 +0100 (CET) Message-ID: <5d263988-9cc3-4e82-8269-2526ba748712@proxmox.com> Date: Thu, 30 Oct 2025 16:53:10 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: pve-devel@lists.proxmox.com References: <20250904114206.193052-1-g.goller@proxmox.com> Content-Language: en-US From: Stefan Hanreich In-Reply-To: <20250904114206.193052-1-g.goller@proxmox.com> X-SPAM-LEVEL: Spam detection results: 0 AWL 0.714 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_MSPIKE_H2 0.001 Average reputation (+2) SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] superseded: [PATCH manager/network/proxmox{-ve-rs, -perl-rs} v4 00/13] Add fabric status view X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" https://lore.proxmox.com/pve-devel/20251030154851.540408-1-s.hanreich@proxmox.com/T/#t On 9/4/25 1:42 PM, Gabriel Goller wrote: > This patch series adds fabric status monitoring to the UI by adding the fabric > status into pvestatd, making it visible in the SDN view and node resources. > > There is also a new FabricContentView visible when clicking on the fabrics in > the node resource tree. There you can see the routes distributed by the fabric > and the neighbors of the current node. These statistics are retrieved using > separate api calls and are not stored in pvestatd. > > The fabric status is "ok" when at least one route exists. > > Route and neighbor data comes from FRR via `vtysh` commands. Since routes and > neighbors often lack fabric association, we match them by the interface name: > we retrieve interfaces configured for the fabric on the current node (by > reading and parsing the running-config), then match against e.g. a routes > outgoing interface. > > Changelog: > v3, thanks @Stefan: > * read running-config instead of written config > * rebase > > v2, thanks @Wobu: > * moved the conversion functions and return types to another module > * removed some allocations > > v1, thanks @Stefan: > * moved the frr deserialization structs to proxmox-frr > * fixed typo in documentation > > proxmox-ve-rs: > > Gabriel Goller (3): > frr: make room for deserialization structs > frr: add deserialization types for openfabric and ospf > ve-config: add helper function to iterate over all nodes in all > fabrics > > proxmox-frr/Cargo.toml | 1 + > proxmox-frr/debian/control | 4 + > proxmox-frr/src/de/mod.rs | 104 ++++++++++ > proxmox-frr/src/de/openfabric.rs | 42 ++++ > proxmox-frr/src/de/ospf.rs | 57 ++++++ > proxmox-frr/src/lib.rs | 243 +----------------------- > proxmox-frr/src/ser/mod.rs | 241 +++++++++++++++++++++++ > proxmox-frr/src/{ => ser}/openfabric.rs | 4 +- > proxmox-frr/src/{ => ser}/ospf.rs | 2 +- > proxmox-frr/src/{ => ser}/route_map.rs | 0 > proxmox-frr/src/{ => ser}/serializer.rs | 2 +- > proxmox-ve-config/src/sdn/fabric/frr.rs | 170 +++++++++-------- > proxmox-ve-config/src/sdn/fabric/mod.rs | 5 + > proxmox-ve-config/src/sdn/frr.rs | 2 +- > proxmox-ve-config/tests/fabric/main.rs | 2 +- > 15 files changed, 554 insertions(+), 325 deletions(-) > create mode 100644 proxmox-frr/src/de/mod.rs > create mode 100644 proxmox-frr/src/de/openfabric.rs > create mode 100644 proxmox-frr/src/de/ospf.rs > create mode 100644 proxmox-frr/src/ser/mod.rs > rename proxmox-frr/src/{ => ser}/openfabric.rs (97%) > rename proxmox-frr/src/{ => ser}/ospf.rs (99%) > rename proxmox-frr/src/{ => ser}/route_map.rs (100%) > rename proxmox-frr/src/{ => ser}/serializer.rs (99%) > > > proxmox-perl-rs: > > Gabriel Goller (4): > pve: fabrics: update proxmox-frr import path > fabrics: add function to get status of fabric > fabrics: add function to get all routes distributed by the fabrics > fabrics: add function to get all neighbors of the fabric > > pve-rs/src/bindings/sdn/fabrics.rs | 163 +++++++++++++- > pve-rs/src/lib.rs | 2 + > pve-rs/src/sdn/mod.rs | 3 + > pve-rs/src/sdn/status.rs | 339 +++++++++++++++++++++++++++++ > 4 files changed, 506 insertions(+), 1 deletion(-) > create mode 100644 pve-rs/src/sdn/mod.rs > create mode 100644 pve-rs/src/sdn/status.rs > > > pve-network: > > Gabriel Goller (3): > fabrics: add fabrics status to SDN::status function > fabrics: add api endpoint to return fabrics routes > fabrics: add api endpoint to return fabric neighbors > > src/PVE/API2/Network/SDN/Fabrics.pm | 117 +++++++++++++++++++++- > src/PVE/API2/Network/SDN/Zones/Content.pm | 2 +- > src/PVE/API2/Network/SDN/Zones/Status.pm | 2 +- > src/PVE/Network/SDN.pm | 6 +- > src/test/debug/statuscheck.pl | 3 +- > 5 files changed, 124 insertions(+), 6 deletions(-) > > > pve-manager: > > Gabriel Goller (3): > pvestatd: add fabrics status to pvestatd > fabrics: add resource view for fabrics > permissions: differentiate between zone and fabric paths > > PVE/API2/Cluster.pm | 73 ++++++++++++--- > PVE/Service/pvestatd.pm | 12 ++- > www/manager6/Makefile | 1 + > www/manager6/data/PermPathStore.js | 9 +- > www/manager6/sdn/Browser.js | 120 ++++++++++++++++++++----- > www/manager6/sdn/FabricsContentView.js | 91 +++++++++++++++++++ > www/manager6/sdn/StatusView.js | 2 +- > 7 files changed, 267 insertions(+), 41 deletions(-) > create mode 100644 www/manager6/sdn/FabricsContentView.js > > > Summary over all repositories: > 31 files changed, 1451 insertions(+), 373 deletions(-) > _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel