F5Networks / f5-aws-cloudformation-v2

AWS Cloudformation Templates for quickly deploying BIG-IP services in AWS
12 stars 21 forks source link

License regkey parameter missing for BYOL license type #13

Closed JeffGiroux closed 2 years ago

JeffGiroux commented 2 years ago

Do you already have an issue opened with F5 support?

No

Description

User wants to deploy BYOL license type. Current example does not ask for a license regkey. There is nothing in runtime init example yaml files for a rendered regkey. The example yaml files have hard coded reg keys of AAAAA-BBBBB-CCCCC-DDDDD-EEEE.

Template

https://github.com/F5Networks/f5-aws-cloudformation-v2/tree/main/examples/quickstart

Severity Level

2

JeffGiroux commented 2 years ago

Suggest to make a license REG_KEY runtime parameter. Also need to modify parameters in parent template to accept reg key parameter.

runtime init config example

          My_License:
            class: License
            licenseType: regKey
            regKey: '{{{REG_KEY}}}'

quickstart-parameters.json

  {
    "ParameterKey": "regKey",
    "ParameterValue": ""
  },
JeffGiroux commented 2 years ago

After further README digging, it appears the README has general guidance for BYOL. I would prefer to see my suggestions implemented for new parameter regKey and runtime init rendered variables.

Reason, the snippet of README below for a BYOL deploy requires the end user to customize a file. In nearly all situations, I agree that the users should...and probably have to modify the template and/or runtime init config file to their environment and onboarding requirements. However for a quick as-is deployment or quick PoC where modifications are not needed, it is much easier to deploy a BYOL with rendered regKey parameter versus the solution below from README. I say this because not everyone has an easily customized "location reachable by the BIG-IP at deploy time".

Here's the part of README I just found...where it is guidance how to use BYOL. I agree with this guidance. However, I also think it can be simplified by not hard coding the regkey and instead using a rendered parameter value.

parameters...

| licenseType | No | Specifies licence type used for BIG-IP VE. Default is payg. If select byol, see additional configuration notes. |

other configuration notes...

To deploy a **BYOL** instance:

  1. Edit/modify the Declarative Onboarding (DO) declaration in a corresponding `byol` runtime-init config file with the new `regKey` value. 

Example:
```yaml
          My_License:
            class: License
            licenseType: regKey
            regKey: AAAAA-BBBBB-CCCCC-DDDDD-EEEEEEE
  1. Publish/host the customized runtime-init config file at a location reachable by the BIG-IP at deploy time (for example: git, S3, etc.).
  2. Update the bigIpRuntimeInitConfig input parameter to reference the new URL of the updated configuration.
  3. Update the licenseType input parameter to use byol or bigIpCustomImageId input parameter to a valid byol image.
shyawnkarim commented 2 years ago

Thanks for your suggestion. A separate BYOL Quickstart template would make things easier for users who are trying things out. This enhancement is now being tracked with internal ID, ESECLDTPLT-2992.

shyawnkarim commented 2 years ago

@JeffGiroux, our team discussed this idea and the consensus was not to add this since it would create more management overhead/clutter. Do you think better documentation around how to customize a template would help?

JeffGiroux commented 2 years ago

You have extra docs in the README already explaining this. It's ok as long as docs explain options.