BigIP Report Old

Problem this snippet solves:

This codeshare has been deprecated due to a hosting platform corruption. I have moved code and conversation to a new record (on the same original URL) https://devcentral.f5.com/s/articles/bigip-report

can be Overview

This is a script which will generate a report of the BigIP LTM configuration on all your load balancers making it easy to find information and get a comprehensive overview of virtual servers and pools connected to them.

This information is used to relay information to our NOC and developers to give them insight in where things are located and to be able to plan patching and deploys. I also use it myself as a quick way get information or gather data used as a foundation for RFC’s, ie get a list of all external virtual servers without compression profiles.

The script has been running on 13 pairs of load balancers, indexing over 1200 virtual servers for several years now and the report is widely used across the company and by many companies and governments across the world.

It’s easy to setup and use and only requires guest permissions on your devices.

Demo/Preview

Please note that it takes time to make these so sometimes they’re a bit outdated and they only cover one HA pair. However, they still serve the purpose of showing what you can expect from the report.

Interactive demo

http://loadbalancing.se/bigipreportdemo/

Screen shots

The main report:

The device overview:

Certificate details:

How to use this snippet:

This codeshare has been deprecated due to a hosting platform corruption. I have moved code and conversation to a new record (on the same original URL) https://devcentral.f5.com/s/articles/bigip-report

Installation instructions

BigipReport REST

This is the only branch we’re updating since middle of 2020 and it supports 12.x and upwards (maybe even 11.6).

Download: https://loadbalancing.se/downloads/bigipreport-v5.5.4.zip

Documentation, installation instructions and troubleshooting: BigIPReport (REST) - Balanced

Docker support

This will be the recommended way of running bigipreport in the near future. It’s still undergoing testing but it’s looking really good so far.

BigipReport (Legacy)

Older version of the report that only runs on Windows and is depending on a Powershell plugin originally written by Joe Pruitt (F5).

BigipReport (Stable):

https://loadbalancing.se/downloads/bigipreport-5.3.1.zip

BigipReport (BETA): https://loadbalancing.se/downloads/bigipreport-5.4.0-beta.zip

iControl Snapin: https://loadbalancing.se/downloads/f5-icontrol.zip

Documentation and installation instructions:

https://loadbalancing.se/bigip-report/

Upgrade instructions

Protect the report using APM and active directory

Written by DevCentral member Shann_P:

Got issues/problems/feedback?

Still have issues? Drop a comment below. We usually reply quite fast. Any bugs found, issues detected or ideas contributed makes the report better for everyone, so it’s always appreciated.

---

Also trying out a Discord channel now. You’re welcome to hang out with us there:

Code :

85931,86647,90730

Tested this on version:

13.0

13 Likes

That is awesome, have run it up ourselves as a PoC and will set it up into production. The only thing extra I would like to see ( and will try and get it working ourselves ) is the iRules associated with a Virtual Server and the ability to see that iRule.

Excellent! Thanks for this!

Thanks guys, glad you liked it!

i like this i am newwwwww…

This worked out great for me. My only comment is it wasn’t abundantly clear on how to configure multiple load balancers. The syntax tripped me up since there was no example for multiple. I was trying commas, commas and parentheses… Finally figured out it’s a semi-colon to delimit each load balancer and the parentheses needs to be changed to a curly brace. In case anyone else gets stuck on this… Example: $Global:bigipdict = @{ “172.16.0.1” = “LB1”; “172.16.0.2” = “LB2”; “172.16.0.3” = “LB3” }

Thank you for your comment Andrew, I will make it easier in the next version.

Can this script be adapted to report on “sys db” values? We have a need to reconcile any differences in this information since this falls outside of a sync group.

Yeah, it could. But I’m not sure how this would be presented and/or be beneficial as a permanent part in the report? I believe though that it would be easy to generate a comparison table. Can check it out tomorrow after work.

Here you go: Exports DB Variables in BigIPs - Pastebin.com /Patrik

Hi Patrick, this would work wonders in our environment. I am having issues getting it running…Do you have some simple instructions or quick guide to getting this up and running? I Powershell minimum version 3.0 - Check F5 Powershell Snap-in - Check A web server of your choice - ? You mean an F5 load-balancer of our choice to report from? I am surprised of how long F5 has had Load balalncers, but not a simplified way or guided way, to report configuration settings on them in our environment.. i.e. VIP’s, pools, pool members, nodes, nodes IP, nodes port. Any help is much appreciated. Thanks again, Tony

Oh dear. The project information disappeared 2 months ago or so (devcentral bug) and it seems like I did not restore the installation instructions. Will do that right away!

For some reason I can’t update the snippet. While waiting for the DC superheroes I’ll add the info here. Brace yourself for no formatting at all! Instructions: 1. Copy the content of the Web folder to the root of your Web server. 2. Open the script and configure it. Minimum configuration is $user, pass, bigipdict and reportpath. Report path should point to the root of your web server. I recommend using a separate user for the report generation (Only guest access needed). 3. Run the script. 4. Done! Additional instructions: One thing that I have seen in the comments is that the bigipdict can be a bit tricky to declare. I will simplify that in a later version but for now I’ll add some extra information here: Example: $Global:bigipdict = @{“192.168.100.1” = “mybigip.domain.local”;“192.168.100.11” = “mybigip2.domain.local”;} If you run into problems, just leave feedback in the comment section below. I’ll do my best to help as soon as I can.

Hope that answered your questions Tony!

Thank you very much Patrik! I am now moving forward. For the web server, I am actually working off a Xeon system in the NOC, and want to just use it as the web server, I started up ISS, and have the inetpub folder and all. But I dont have a default.html in my webroot folder.. do I need to just create it? Thanks.. oh here are the first few errors I am getting.. :slight_smile: hopefully it helps… S C:\BigipReport3.8> C:\BigipReport3.8\NewBigIPReport3.8.ps1 Exception setting “OutputEncoding”: "The handle is invalid. " At C:\BigipReport3.8\NewBigIPReport3.8.ps1:291 char:1 + [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:slight_smile: [], SetValueInvocationException + FullyQualifiedErrorId : ExceptionWhenSetting Test-Path : Cannot bind argument to parameter ‘Path’ because it is an empty string. At C:\BigipReport3.8\NewBigIPReport3.8.ps1:363 char:20 + if(Test-Path -Path $Global:NATFilePath){ + ~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidData: (:slight_smile: [Test-Path], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidati EmptyStringNotAllowed,Microsoft.PowerShell.Commands.TestPathComm and Initialize-F5.iControl : Could not initialize connection with supplied information At C:\BigipReport3.8\NewBigIPReport3.8.ps1:802 char:13 + $success = Initialize-F5.iControl -Username $user -Password $pass -HostName $bi … + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : PermissionDenied: (10.8.96.175:String) [Initialize-F5.iControl], Exception + FullyQualifiedErrorId : 2,iControlSnapIn.CmdLet.Global.InitializeiControl

I will make a fresh install myself and test it. :slight_smile:

Good news is that I fixed it. Bad news is that I can’t update the file on devcentral! Will report to the DC guys.

Ok, you can try this link until they have fixed the problem with the forum: http://www.filedropper.com/bigipreport39 First time using file dropper for me so download and scan it at virustotal or something first. :slight_smile: /Patrik

Sorry mate, I keep chasing them but no news yet.

Chased them again just now.