F5Networks / f5-appsvcs-templates

F5 BIG-IP Application Service Templates (FAST)
Apache License 2.0
32 stars 13 forks source link

FAST Templates removing IP address parameter #119

Closed jjwojcik closed 1 year ago

jjwojcik commented 1 year ago

Environment

Summary

The default HTTP and IIS fast templates would normally have a parameter for the IP address of the Application's virtual servers. The option is shown right below the Application name and above the port when DNS is not provisioned. Provisioning DNS on the device adds the capability to fill in the WideIP name, but it appears that the WideIP is a required field now for the virtual_address parameter to be a part of the template. Also appears on earlier versions like 1.22.

Steps To Reproduce

List the steps to reproduce the behavior: 1) Verify that Virtual Address is an option on the HTTP template to deploy a new application 2) Provision DNS to Nominal 3) Attempt to create a new application using the HTTP template. The Virtual Address parameter is not shown. 4) Adding a WideIP name allows you to see the Virtual Address parameter at the top again. 5) Clearing the WideIP name removes the parameter again

Expected Behavior

Adding the WideIP should be optional behavior on the HTTP application template if DNS is available. Adding a WideIP should not be required to enter a user specified IP address for the application.

Actual Behavior

It appears that the user is unable to specify an IP address for the application via the GUI when a WideIP is not specified and DNS is provisioned.

Using curl and the API calls I was able to deploy an application with a specific virtual_address using the template, but reconfiguration via the GUI removes the custom IP address.

DNS Not Provisioned Template looks normal image

DNS Provisioned and using the default HTTP template with no WideIP name image

Add a WideIP Name at the bottom of the template image

DNS Provisioned with a WideIP Name specified, the box appears again image

jjwojcik commented 1 year ago

Upon further looking at it when DNS is provisioned and a WideIP name is filled out the VIP IP box shows up, but it does not appear to have the value in the input at the bottom nor does it change the rendered output. It looks like DNS provisioning just removes that value from the template.

joelkeener commented 1 year ago

Thank you for reporting this issue. It is preventing an HTTP template deployment on a device provisioned with GTM unless the DNS FQDN is provided for the Wide IP.

If you do provide the FQDN and then the Virtual Address, a new GSLB_Domain and GLSB_Pool is created, and the Virtual Address would appear in both the GLSB_Pool as the fallbackIP and in the Service_HTTPS as the only Virtual Address. Is that what you are seeing?

I currently have a fix I am discussing with the Project Manager and some version of it should become available soon. Will you want a temporary EHF or patched RPM, or would you rather opt to wait for FAST v1.24 to be publicly released?

jjwojcik commented 1 year ago

So even filling in the name didn't actually fix it for us. We tried that using a temporary name and the template showed us the IP address field again, but when we went to deploy the inputs/render at the bottom showed that it was ignoring the IP address we entered.

We can wait for 1.24 as using the API lets us deploy for now, but moving forwards we would want the GUI functionality back.

Thank you.

jjwojcik commented 1 year ago

Oh and the issue also showed up in the IIS Template as well. That makes sense to me since it looks like they're referencing the same libraries underneath.

shyawnkarim commented 1 year ago

This issue is being tracked internally with ID, EC-65.

joelkeener commented 1 year ago

In the next release of FAST, v.1.24.0, there will be two additional templates that have DNS WideIP settings that fix this issue you have reported. The DNS FQDN will display at the top of the form, right after the virtual address - which you can see and set before the FQDN has a value. If you deploy one of the new HTTP with Wide IP or IIS with Wide IP templates without setting the FQDN, it will work, but it will also create an unused GSLB_Pool -- which is why we had to create two new templates just for the Wide IP.

Additionally, you can now use IPAM to configure the virtual address and fallbackIP in the two new templates.

If you have deployed applications with the old templates, they will be converted to the new Wide IP version automatically in this new version as well.

shyawnkarim commented 1 year ago

Closing.

This issue was resolved with Release 1.24.0.