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: https://loadbalancing.se/bigipreport-rest/
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.
https://loadbalancing.se/2021/01/05/running-bigipreport-on-docker/
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:
https://loadbalancing.se/2018/04/08/protecting-bigip-report-behind-an-apm-by-shannon-poole/
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
- Do you use a custom port to host the report by any chance? If you check the network tab of Chrome developer tools, do you see any requests heading for the bigipreport server? By default the update check will run every 30 minutes. I will run it myself and get back to you with my findings. /Patrik
- mike_89584NimbostratusHi Patrik Nope - standard port 80 - and no I dont see any requests - how often should they occur? Thanks
- I ran some tests and the update works as intended. It's just not as aggressive as you expect it to be (our environment is big so the script takes a long time to run so we never had need for short intervals). I've updated the script now and hopefully it will work more closely to what you'd expect. :) Thank you for all the feedback and keep it coming! Version 4.0.3 is out now. /Patrik
- mike_89584NimbostratusHi Patrik Thanks for your reply - update installed, and the "updates available" feature now works :) Cheers
- AndyNimbostratusThanks for the guidance, I am running the script at the moment with "$loadbalancerdatamissing = $true" enabled against a single LB, however I am getting no output. I do get the following error when running the script, could this be the issue? PS D:\F5-PS> D:\F5-PS-4.03\Bigipreport-4.0.3.ps1 Exception setting "OutputEncoding": "The handle is invalid. " At D:\F5-PS-4.03\Bigipreport-4.0.3.ps1:342 char:1 + [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [], SetValueInvocationException + FullyQualifiedErrorId : ExceptionWhenSetting
- Hi Andy! What version of Powershell are you using? Which OS is running the script? How are you running the script (directly via the powershell shell: .\bigipreport.ps1 or via explorer, via Powershell ISE, are you pasting it in to a shell or some other way)?
- AndyNimbostratusI am running Major Minor Build Revision ----- ----- ----- -------- 3 0 -1 -1 When i run the script via ISE i get the encoding message, but when via powershell directly (./Bigipreport-4.0.3.ps1) I do not get the error message. However in both cases I get no html or json pages generated.
- Skip ISE and try Powergui. :) Do you have the debug option set to true? If so, can you see that the script goes trough partitions and indexes items? When the script has finished, do you get pool data if you enter "$Global:pools" and hit enter? I would recommend to upgrade powershell to version 4.0 (though that's probably not the issue here it's the version I use to test my "builds").
- Have you added the $loadbalancerdatamissing part yourself btw? Because the script won't output any html or json if that's $true. :) The error you got earlier has been fixed since version 4.0.2. If you altered the script (except the config secion), try to use the original. /Patrik
- AndyNimbostratusI am running the 4.0.3 code with $loadbalancerdatamissing set as default from download. I have run the script against a single LB and I do get output, when I 'scale' this out to the 45 instances I do not get data written out to file. Is there any further debugging I can enable to help determine the root cause of my issue?