I finally found some time to test the script I developed to convert F5 BIG-IP VE images to be supported in VIRL. The script can be found at https://gogs.informatik.hs-fulda.de/srieger/virl-utils-hs-fulda/src/master/create-f5-bigip-image. Currently, you need a VE image >= 11.6 since these images are compatible wtih the VIRL environment (OpenStack with KVM on Ubuntu 14.04). Otherwise, the platform and virtual hardware is not detected correctly, leading to errors with chmand (e.g., also described at lost and found ( for me ? ): install F5 BIG IP 11.3 VE trial on unsupported KVM host Ubuntu 14.04). Sadly, this prohibits using the free trial, which is based on 11.3, but I've started to work on a function to patch platform files etc. So maybe this will be fixed in the near future, though it's unlikely as other network virtualization solutions also offer only >= 11.6 support for the BIG-IP images. Also, the official F5 OpenStack images only support BIG-IP version 11.6 and higher.
To use the script, you need to get a KVM image of the VE from F5 (e.g. version 11.6 or 12.0). in qcow2 formar. Then, you can run the script, e.g. as:
virl@virl1-hsfd:~/HSFD-VIRL/Big-IP-LTM$ sudo -s root@virl1-hsfd:~/HSFD-VIRL/Big-IP-LTM# ./create-f5-big-ip-image.sh BIGIP-18.104.22.168.0.317.qcow2 F5-BIGIP
The image is automatically imported into glance and a default flavor for OpenStack nova (4GB RAM, 2 VCPU) is created. I tested the VE with an additional flavor with 16GB RAM. You need to create a dynamic subtype (e.g., https://gogs.informatik.hs-fulda.de/srieger/virl-utils-hs-fulda/src/master/create-f5-bigip-image/dynamic-subtype-F5-BIGI…) and reimport the subtypes to VM Maestro. Afterwards, you can create a topology with a BIG-IP VE like this:
The script activates serial console output as shown in the screenshot and reads the configuration defined in the node properties in VM Maestro. The configuration is treated as a shell script (see example at https://gogs.informatik.hs-fulda.de/srieger/virl-utils-hs-fulda/src/master/create-f5-bigip-image/minimal-config-F5-BIGIP…).
After starting the simulation, you can login to the BIP-IP node using SSH, serial console or directly configure it through its web interface. This can be done using the flat network to connect to the node (as described in the VIRL documentation) or, e.g., using SSH tunneling from you management node to the HTTPS port of the BIG-IP node. For the topology shown above, I tested for example the following load balancing scenario:
Keep in mind, that the license that you enter to active the BIG-IP VE will be limited to exaclty this VM! It seems like the license is bound to the UUID and MAC address so as soon as you stop the simulation and the VM is terminated, you cannot reuse the license as new simulations will build a new VM with different UUID and MAC address. I'm currently experimenting with exporting the VM configurations from the KVM definition and reinject it in future simulations to be able to reuse the same VM and hence its license for multiple simlations. Also, I'm looking at the scripts that F5 provides to import BIG-IP instances to OpenStack. Somehow, these also seem to require separate licensing for every new instance. Really strange... any suggestions for improvement on this is welcome!