F5Networks / f5-appsvcs-templates

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

FAST template for AWS deployments #9

Closed vbojko closed 4 years ago

vbojko commented 4 years ago

Is your feature request related to a problem? Please describe.

Deploying services with AS3 still requires me to create a secondary IP on my interface, create an EIP and match both. I would like to see FAST doing it for me in the background, so I can focus on the application.

Describe the solution you'd like

Describe alternatives you've considered

CFT or ansible playbooks

Additional context

zinkem5 commented 4 years ago

Could you describe your workflow?

From my reading, this may be an appropriate feature for DO or AS3 that could be utilized by a FAST template.

CFTs may be the best solution in the short term for onboarding a box with EIPs.

vbojko commented 4 years ago

The workflow is:

Service is up and runnig

This is not a feature for DO, because you do not add a secondary selfIP, you create a VIP on BIG-IP. This is not a feature for AS3, because AS3 AS3 focusses exclusively on BIG-IP Service deployment.

zinkem5 commented 4 years ago

Hi @vbojko ,

FAST as it exists right now is primarily a templating system for AS3 applications. Future versions of the FAST RPM will have the ability to make templated calls to other HTTP endpoints besides AS3.

Orchestration like you describe is currently not in the scope of this project.

Typically interactions with cloud platforms happen on the BIG-IP through something called cloud-libs, this is utilized by AS3 to enable features such as service discovery. Additionally, we have many supported cloud formation templates that can be used to set up infrastructure in the cloud: https://github.com/F5Networks/f5-aws-cloudformation

We are looking at future products which will include the ability to orchestrate across multiple APIs, but as of today cloud interactions should be mediated by DO or AS3, or some outside orchestration software like Ansible or Terraform.

Additionally, a custom orchestration pipeline could be built with JavaScript, or as part of a CI/CD pipeline by using the f5-fast-core NPM module found here: https://www.npmjs.com/package/@f5devcentral/f5-fast-core

Thanks, Matt