NextGenController¶
This page documents the behavior of NextGenController. See the Known Issues for more information on features not supported.
NextGenRoute Controller uses extendedConfigMap for extending the native resources (routes/ingress). Routes are extended using ConfigMap in this release. NextGen Routes also adds support for multi-partition, policy CR, and externalDNS CR.
Multiple VIP and Partition support for routes¶
- The current CIS implementation creates a single VIP and partition for all the routes configured. This is implemented to add support for creating multiple VIPs in BIG-IP mapping to route groups created per namespace/namespaceLabel.
- All the routes in the namespace/namespaceLabel are treated as part of one routegroup.
- One virtual server (VIP) is created for each routegroup and maps to each tenant on BIG-IP.
- CIS processes multiple tenant information and still sends the single unified declaration to BIG-IP to avoid multiple posts to BIG-IP.
Note
AS3 post call is formed as mgmt/shared/appsvcs/declare/tenant1,tenant2
.
GSLB support for routes¶
- Prerequisite: You will need AS3 version 3.41.0 or newer to use the EDNS feature.
- For every EDNS resource created, CIS will add a virtual server with a matching domain as the Wide IP pool member.
Policy CR support for routes¶
Policy CR integration with nextGenRoutes extends to many BIG-IP features to the Openshift routes, including SNAT, custom TCP, HTTP and HTTPS profiles, iRules, HTTP2 profile, persistance profile, profileMultiplex, profileL4, logProfiles, WAF, botDefense, firewallPolicy, DOS, allowSourceRange, etc.
Note
Policy CR should be created in a namespace which CIS is monitoring.
WAF precedence¶
WAF can be specified either in route annotations or in policy CR. If specified in both, then WAF in policy CR has more precedence over annotation. However, if the allowOverride field is set to true in the route group in Extended ConfigMap, WAF in route annotation will have more precedence. WAF specified in route annotations configures WAF at LTM Policy, whereas WAF in Policy CR configures WAF at VirtualServer (VIP) Level.
Allow source range precedence¶
Allow source range can be specified either in route annotations or in policy CR. If specified in both, then allow source range in policy CR has more precedence over annotation. However, if the allowOverride field is set to true in the route group in Extended ConfigMap, allow source range in route annotation will have more precedence.
SSL Profiles precedence¶
- SSL can be specified in the route as certificate (spec certs), route annotation as BIG-IP reference/secret, or as default SSL profiles in global ConfigMap.
- If the route is defined with both certificate (spec certs) and SSL annotation, then route annotation will have more precedence, followed by route certificate (spec certs). Default SSL profiles in global ConfigMap will have the least precedence.
- Example of Route with SSL profiles annotation reference to BIG-IP
- Example of Route with SSL profiles annotation reference to secret
- Example of Global ConfigMap with defaultTLS
Support for Health Monitors from pod liveness probe¶
CIS uses the liveness probe of the pods to form the health monitors whenever health annotations not provided in the route annotations.
Legacy vs Next Generation Routes feature comparison¶
Features | Legacy Routes | Next-Gen Routes |
---|---|---|
Insecure | Yes | Yes |
Secure | Yes | Yes |
Health Monitors | Yes | Yes |
WAF | Yes | Yes |
iRules | Yes | Yes |
iRuleList | No | Yes |
Multiple VIP | No | Yes |
Multiple Partition | No | Yes |
SSL Profiles | Yes | Yes |
Load Balancing Method | Yes | Yes |
allow-source-range | Yes | Yes |
URL-rewrite | Yes | Yes |
App-rewrite | Yes | Yes |
A/B Deployment | Yes | Yes |
Policy CR | No | Yes |
See GitHub for more details.
Next Gen Route Guides¶
Note
To provide feedback on Container Ingress Services or this documentation, please file a GitHub Issue.