F5Networks / f5-azure-arm-templates-v2

Azure Resource Manager Templates for quickly deploying BIG-IP services in Azure
22 stars 45 forks source link

Cannot use template as-is for big-iq due to static values in yaml file #5

Closed JeffGiroux closed 2 years ago

JeffGiroux commented 3 years ago

Describe the bug

The template example for big-iq autoscale deployed as-is (no git clone or modification of URL paths) will result in a failed big-iq licensing. The example for big-iq json template points to the https://raw.githubusercontent.com/F5Networks/f5-azure-arm-templates-v2/master/examples/autoscale/bigip-configurations/runtime-init-conf-bigiq.yaml which has this snippet for BIG-IQ parameters.

        myLicense:
          class: License
          licenseType: licensePool
          bigIqHost: '192.168.1.4'
          bigIqUsername: azureuser
          bigIqPassword: "{{{BIGIQ_PASSWORD}}}"
          licensePool: clpv2
          skuKeyword1: F5-BIG-MSP-BT-1G
          tenant: myTenant
          unitOfMeasure: hourly
          reachable: false
          hypervisor: azure
          overwrite: false

Only one value above is parameterized. Yet, the json template parameters require the following: bigIqLicensePoolName, bigIqTenant, bigIqUtilityKey, and so on.

Expected behavior

Runtime-init example provided yaml file should take in the BIG_IQ values I supply.

Current behavior

The snippet of code block for license in the yaml file has static values for BIG-IQ stuff like tenant name and pool instead of parameters.

Possible solution

Update the supplied example yaml file for big-iq to use parameterized items instead of static values.

old snippet from license block

        myLicense:
          class: License
          licenseType: licensePool
          bigIqHost: '192.168.1.4'
          bigIqUsername: azureuser
          bigIqPassword: "{{{BIGIQ_PASSWORD}}}"
          licensePool: clpv2

new

        myLicense:
          class: License
          licenseType: licensePool
          bigIqHost: "{{{BIGIQ_HOST}}}"
          bigIqUsername: "{{{BIGIQ_USER}}}"
          bigIqPassword: "{{{BIGIQ_PASSWORD}}}"
          licensePool: "{{{BIGIQ_LICENSE_POOL_NAME}}}"
and so on...

Context

Trying to test autoscale with new v2 templates using BIG_IQ for licensing with limited knowledge and limited effort. Having an example to push as-is with limited effort is needed. Yes, we will need a BIG_IQ running. Yes, we need some other basic Azure knowledge. But...the current template provided yaml file is not an accurate example for those that need a little help.

Your Environment

JeffGiroux commented 3 years ago

In addition, the provided DO json file used by the BIG-IQ deployment also has static values in the license block fro BIG-IQ items. These too need to be parameterized so as to take in the values provided by the user when kicking off the ARM json template.

https://github.com/F5Networks/f5-azure-arm-templates-v2/blob/master/examples/autoscale/bigip-configurations/autoscale-do-bigiq.json

example...

        "myLicense": {
            "bigIpPassword": "{{ BIGIP_PASSWORD }}",
            "bigIpUsername": "admin",
            "bigIqHost": "10.0.1.200",
            "bigIqPassword": "{{ BIGIQ_PASSWORD }}",
            "bigIqUsername": "admin",
            "class": "License",
            "licensePool": "myPool",
            "licenseType": "licensePool",
            "reachable": false,
            "skuKeyword1": "key1",
            "skuKeyword2": "key2",
            "tenant": "myTenant",
            "unitOfMeasure": "hourly"
        },

username, tenant, license pool name, etc should all be parameterized just like password

shyawnkarim commented 3 years ago

Thanks for reporting these issues. This is now being tracked internally with ID ESECLDTPLT-2881.

shyawnkarim commented 2 years ago

Closing.

This bug was fixed in Release 2.0.0.0.