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
974 Comments
- Lonce
Nimbostratus
Worked when I created a new instance, I'm currently using PowerShell 7.0.1 , just out of curiosity is it possible to run this from a Linux Machine, given that it uses PS 7?
Again thanks for the help 😊
- Neldien_Musni
Nimbostratus
Hello.... not sure if I'm posting to a correct thread but just like to ask if someone already experience the issue below when running bigipreport 5.2.9. I'm getting a lot of these on particularly 1 F5.
Stats:
G:75 LB:152 VS:8962 R:2046 DG:337 P:6473 M:4576 C:4842 ASM:1 T:132.62595958
Issue:
<truncated>
Cannot index into a null array.
At C:\bigipreport-5.2.9\bigipreport-5.2.9.ps1:1280 char:18
+ For($x=0;$x -lt $PoolMembers[$i].count;$x++){
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : NullArray
Cannot index into a null array.
At C:\bigipreport-5.2.9\bigipreport-5.2.9.ps1:1310 char:9
+ $ObjTempPool.description = $PoolDescriptions[$i]
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : NullArray
2020-06-08 16:58:24 Detecting pools referenced by datagroups
2020-06-08 16:58:24 Caching iRules
Exception calling "get_list" with "0" argument(s): "Unknown method "{urn:iControl:LocalLB/VirtualAddressV2}:get_list""
At C:\bigipreport-5.2.9\bigipreport-5.2.9.ps1:1398 char:5
+ [array]$VirtualAddressList = $F5.LocalLBVirtualAddressV2.get_list ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : SoapHeaderException
Exception calling "get_traffic_group" with "1" argument(s): "Unknown method "{urn:iControl:LocalLB/VirtualAddressV2}:get_traffic_group""
At C:\bigipreport-5.2.9\bigipreport-5.2.9.ps1:1399 char:5
+ [array]$VirtualAddressTrafficGroups = $F5.LocalLBVirtualAddressV2 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : SoapHeaderException
2020-06-08 16:58:29 Caching Virtual servers
Exception calling "get_description" with "1" argument(s): "Unknown method "{urn:iControl:LocalLB/VirtualServer}:get_description""
At C:\bigipreport-5.2.9\bigipreport-5.2.9.ps1:1426 char:5
+ [array]$VirtualServerDescriptions = $F5.LocalLBVirtualServer.get_ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : SoapHeaderException
For those running v15, try the Beta. Looks like iControl SOAP might have issues on v15 and the Beta only uses REST.
Kind regards,
Patrik
- TimRiker
Cirrocumulus
I thought I replied to this before, but I can't find it in the poor DevCentral feed.
The Beta version 5.4.1 does not require the snapin and will run on non-windows platforms. I'm testing on Ubuntu LTS. The windows version of powershell seems to be somewhat more efficient at forking processes. Be sure your config file includes forward slashes instead of back slashes, and that it does not include drive references. Relative paths work in both. ../../www/output/ etc.
- Neldien_Musni
Nimbostratus
, I've tried Beta 5.4.0 in windows 10 powershell 7. And it is taking forever polling stats.
After 222 pools in just 1 LB, here is the counter.
PS C:\bigipreport> d: 0, Remaining: 1, Time: 938.0811089. Is that normal polling stats of every pool 1 by 1?
- JustCooLpOOLe
Cirrocumulus
I just upgraded our devices to 14.1.2.6 due to CVE-2020-5902. I'm running version 5.3.1 which worked well on version 13 but not it appears to have issues with connecting to the devices and it is intermittent. I keep getting the error:
The script failed to connect to <ip address>, run the report manually to determine if this was due to a timeout of bad credentials.
<ip address> error: The request failed with HTTP status 401: F5 Authorization Required.
It is the same credentials that it has always had so I'm wondering if there was a change in how authorization goes due to the control plane vulnerability with CVE-2020-5902. I've logged into the GUI with the credentials to verify they work. Any ideas?
Hey Shann
Are you using LDAP login by any chance? If so, look at my post a bit higher up.
Also, have a look at the audit logs/restjavad logs?
Kind regards,
Patrik
- JustCooLpOOLe
Cirrocumulus
I am using an AD account in the config file. I'll look at the logs as well once I get done with these upgrades. Does running those commands cause a reboot for them to take affect?
If I recall correctly, no.
Kind regards,
Patrik
If you don't get the desired effect you could try to restart the nslcd daemon.
bigstart restart nslcd
That will only affect services depending on ldap.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)