MetaData support for per app declaration
Is your feature request related to a problem? Please describe.
In CIS, we group multiple ingress, routes and configMap resources into a single AS3 declaration and post it to the BIGIP. But we do not have any mappings that which K8s resources are posted on which tenant/app. As CIS is a stateless application it's not possible for CIS to keep the state that which AS3 tenant/app declaration belongs to which K8s resource.
Describe the solution you'd like
We would like to have a metadata support implemented in per app based declaration where we can set multiple key-value pairs in metadata.
Metadata may look like this:
metadata: {"foo-ingress": "ingress", "bar-vs-cr": "virtualServer", "echo-transport-server": "transportServer"}
Describe alternatives you've considered
Currently there is no alternatives we have. We store the k8s resource and tenant mapping in memory, but there is no mapping of k8s resource to AS3 application.
Thanks for reaching out. Created AUTOTOOL-3745 and added to internal product backlog.
@vklohiya thanks for creating this. Do we still need the metadata if CIS could POST to
example
POST https://<IP>/mgmt/shared/appsvcs/declare/ocp/applications
{
"App_1": {
"class": "Application",
"Service_2": {
"class": "Service_HTTP",
"virtualAddresses": ["10.1.1.1"],
"virtualPort": 80,
"pool": "Pool_1"
} ,
"Pool_1": {
"class": "Pool",
"members": [
{
"servicePort": 80,
"serverAddresses": ["10.10.1.1", "10.10.1.2"]
}
]
}
}
}
Not sure if we still need metadata
Yes @mdditt2000 , it would be required as multiple routes/virtual-server crd can be mapped to single AS3 app.