When migrating from a Dedicated Load Balancer (DLB) to CloudHub 2.0’s ingress load balancer, review this feature mapping.
| Feature |
CloudHub DLB |
CloudHub 2.0 Ingress |
SSL/TLS termination |
SSL termination happens at the DLB layer. |
SSL termination happens at the ingress load balancer layer. |
Certificate management |
Upload PEM-encoded certificates and private keys manually. Limited CA certificate support. |
Default TLS context with wildcard certificates created automatically. Custom vanity domains supported with your own TLS context. Dynamic certificate management with in-place updates without redeployment. |
URL rewriting |
Configured at the DLB level using mapping rules. |
Configured at the application level using domains and endpoints for per-app configuration. |
Mutual TLS (mTLS) |
DLB handles mTLS at the infrastructure level, performing client certificate validation and forwarding certificate information to apps through HTTP headers. An optional mode performs client certificate validation but still passes the request through if the check fails. Accepts certificate files in PEM format only. |
Native mTLS with TLS contexts and truststores. Configure mTLS at the private space level with centralized management. Supports forward SSL. Upload truststore files in PEM and JKS formats. Optional mTLS mode is not supported — client certificate validation either passes or the request is rejected. |
Protocols |
HTTP, HTTPS, TCP, WebSockets (ws and wss) |
HTTP, HTTPS, TCP. TCP traffic is supported only on newly created private spaces. Upgraded private spaces do not support TCP traffic. If you require TCP, create a new private space. |
Logging |
No DLB log support. |
Download ingress traffic logs from Runtime Manager. |
High availability |
Up to four load balancer units. |
Auto-scales to accommodate traffic. Replicas are automatically distributed across two or more availability zones (AZs). |
Routing Capabilities Comparison
DLB uses mapping rules to route requests. CloudHub 2.0 uses endpoint and path configuration for each app. This table maps the DLB routing model to the CloudHub 2.0 equivalent.
| Routing Capability |
CloudHub DLB (Mapping Rules) |
CloudHub 2.0 (Endpoints & Paths) |
Path-based routing |
Mapping rules define an Input Path (supports patterns with {variables}), a Target App, and an Output Path (literal only). The first matching rule wins (priority-ordered). Example: /api/v1/ → my-app with output /. |
Each application configures its own endpoints with a Path (where clients reach the app) and a Path Rewrite (the base path the HTTP Listener expects). Configured per-app in the Ingress tab. No global priority ordering needed — each app owns its endpoint. |
Host-based routing |
DLB uses certificate endpoints (CN or SANs) to match hosts. A wildcard certificate (*.example.com) combined with a {subdomain} variable in the mapping rule routes api.example.com to the api app. |
CloudHub 2.0 uses Domains configured via TLS contexts at the private space level. Each app selects its domain from a dropdown and specifies a subdomain. Supports the app-name placeholder to auto-resolve. Multiple endpoints per app are supported. |
URL rewriting |
Configured at DLB level. Input Path defines the client-facing path; Output Path defines what is passed to the app. Patterns only in Input Path; Output Path is always literal. |
Configured at app level via Path and Path Rewrite fields. Path is the client-facing URL; Path Rewrite is the internal path for the HTTP Listener. |
Multi-app routing on one domain |
Single DLB can route to multiple apps via ordered mapping rules on the same SSL endpoint. Pattern variables ({app}, {layera}, {domaina}) enable dynamic routing. |
Each app registers its own endpoint(s) on shared domains. No global rule list — each app’s endpoint is independent. Use unique paths or subdomains to differentiate. |
Protocol selection |
Mapping rules specify upstream protocol per rule: http (port 8091), https (port 8092), ws (8091), wss (8092). |
CloudHub 2.0 apps listen on port 8081 for both HTTP and HTTPS. Protocol is determined by TLS context configuration, not per-rule. WebSocket support via HTTP/HTTPS endpoints. |
Wildcard matching |
Pattern variables ({variable}) in Input Path match a-z0-9.&?-_ (no slashes). Priority order controls which rule matches. |
Subdomain placeholders (app-name, business-group-id, environment-id) provide dynamic matching. No regex or custom variable patterns. |
Migration considerations.
-
DLB mapping rules are centralized in one ordered list per SSL endpoint. CloudHub 2.0 endpoints are distributed because each app manages its own routing. This removes priority conflicts but requires each app to have unique endpoint definitions.
-
DLB’s flexible regex-like patterns ({variable}) don’t have a direct equivalent in CloudHub 2.0. Apps that rely on dynamic path-to-app-name routing must be reconfigured with explicit per-app endpoints.
-
CloudHub 2.0 Path Rewrite supports static per-app mappings, addressing the DLB Output Path limitation that patterns aren’t supported.
-
CloudHub 2.0 supports ingress URIs up to 4 KB. Before migrating, identify clients that send request paths or query strings larger than 4 KB and redesign those requests. See Limits in CloudHub 2.0.
Certificate Migration
The VPC upgrade tool migrates DLB configurations to the new private space on a best-effort basis only. Due to architectural differences between the CloudHub 1.0 DLB and the CloudHub 2.0 ingress controller, automated migration of certificates and vanity domains isn’t guaranteed.
|
|
Applying certificate changes in the CloudHub 2.0 private space doesn’t impact your live CloudHub 1.0 environment. The two environments are isolated; your existing DLB continues to handle traffic normally until you manually update your DNS CNAME records to point to the new ingress endpoint.
|
To manually migrate DLB certificates to your CloudHub 2.0 private space.
-
Inventory your DLB certificates.
-
In Runtime Manager, go to CloudHub > Load Balancers.
-
Record all certificates, vanity domains, and Subject Alternative Names (SANs).
-
Identify incompatible TLS ciphers.
CloudHub 2.0 doesn’t support TLS 1.1 ciphers. You can’t migrate the following ciphers.
-
ECDHE-ECDSA-AES128-SHA1
-
ECDHE-ECDSA-AES256-SHA1
-
ECDHE-RSA-AES128-SHA1
-
ECDHE-RSA-AES256-SHA1
If your DLB uses any of these ciphers, reissue certificates with TLS 1.2+ compatible ciphers before migrating.
-
Upload certificates to the private space.
-
In Runtime Manager, go to your private space and select Domains & TLS.
-
Manually upload your server certificates and private keys.
|
|
DLB requires a full certificate chain that includes intermediate and root certificates in a single file. For the CloudHub 2.0 private space, split intermediate and root certificates into a separate file and upload it as the CA Path Certificate.
|
-
Verify SANs.
-
Create TLS contexts.
Allowlist and Denylist Migration
When migrating from a DLB to CloudHub 2.0 ingress, your allowlist rules translate to private space firewall rules. CloudHub 2.0 firewall rules are allow-only — there’s no deny rule equivalent.
-
DLB allowlist: Map IP addresses and CIDRs permitted to reach the DLB to ingress firewall rules on the private space.
-
DLB denylist: CloudHub 2.0 has no deny rule equivalent. Allow only the required CIDRs, or block traffic upstream with a WAF or Flex Gateway policy.
To migrate access control rules.
-
Export the current DLB allowlist.
-
Create firewall rules in the private space.
-
Add infrastructure CIDR ranges.
If your CloudHub 2.0 applications need to communicate with applications still on CloudHub 1.0, add the following CIDR ranges to the DLB allowlist.
-
100.64.0.0/16
-
100.66.0.0/16
-
100.67.0.0/16
-
100.68.0.0/16
These ranges enable cross-platform communication during phased migration.
Logging and Monitoring Comparison
| Aspect |
CloudHub DLB |
CloudHub 2.0 Ingress |
Access logs |
No DLB access log support. Logging limited to application-level logs. |
Ingress traffic logs available for download from Runtime Manager. Logs include request source IP, response codes, and latency data. |
Log access |
N/A |
In Runtime Manager, go to your private space > Logs to download ingress traffic logs. |
Application logs |
Available via Runtime Manager or Log4j integration. |
Available via Runtime Manager or Log4j integration. See Integrating with Your Logging System Using Log4j. |
Monitoring |
Custom alerts based on application metrics. |
Anypoint Monitoring with built-in dashboards. Custom alerts on ingress-level and application-level metrics. |
Network Topology Differences
Table 1. Hybrid Migration State
| Layer |
CloudHub 1.0 VPC |
CloudHub 2.0 Private Space |
Internet ingress |
External clients send HTTPS traffic on port 443 to the Dedicated Load Balancer (DLB). |
External clients send HTTPS traffic on port 443 to the ingress load balancer. |
Load balancing and routing |
The DLB terminates TLS and applies ordered mapping rules. |
The ingress load balancer terminates TLS and routes requests by domain and path. |
Application runtime |
Workers receive HTTP or HTTPS traffic on ports 8091 and 8092. |
Replicas receive traffic on port 8081. |
Connectivity during migration |
Workers accept inbound calls from CloudHub 2.0 over the 100.64.0.0/16, 100.66.0.0/16, 100.67.0.0/16, and 100.68.0.0/16 ranges, provided those ranges are added to the DLB allowlist. |
Replicas can call CloudHub 1.0 workers through the DLB using those same ranges, and connect to on-premises or AWS systems through the Transit Gateway using the private space CIDR. |
Outbound traffic |
Workers reach backend systems through the VPC network and Transit Gateway. |
Replicas use the NAT Gateway when backend systems require outbound static IP addresses. |
Backend connectivity |
Both environments connect to backend systems, such as databases and SaaS APIs, through the Transit Gateway. |
Traffic Paths During Hybrid Migration
-
CloudHub 1.0 path: External client → DLB → CloudHub worker → Transit Gateway → backend system.
-
CloudHub 2.0 path: External client → ingress load balancer → CloudHub 2.0 replica → Transit Gateway or NAT Gateway → backend system.
-
Cross-platform path: A CloudHub 2.0 replica can call a CloudHub 1.0 worker through the DLB when the 100.64.0.0/16, 100.66.0.0/16, 100.67.0.0/16, and 100.68.0.0/16 ranges are added to the DLB allowlist. These ranges don’t support CloudHub 1.0 reaching CloudHub 2.0, and a private space can’t use them as its own CIDR.
Table 2. Traffic Flow: DLB and Ingress Controller
| Stage |
CloudHub 1.0 Path |
CloudHub 2.0 Path |
DNS resolution |
The client requests myapp.example.com, which resolves to [lb-name].lb.anypointdns.net. |
The client requests myapp.example.com, which resolves to [space-id].[region].cloudhub.io. |
TLS and routing |
The DLB terminates TLS and evaluates its mapping rules. |
The ingress load balancer terminates TLS and matches the configured domain and path. |
Application request |
The DLB sends HTTP traffic to the CloudHub worker on port 8091. |
The ingress load balancer sends HTTP traffic to the CloudHub 2.0 replica on port 8081. |
Traffic Switching During Migration
CloudHub 2.0 provides two ways to cut over traffic. Choose one, don’t mix them for the same application.
-
Gradual, DLB-managed switch: Keep the DNS CNAME pointed at the DLB and use the traffic-switching API or UI to shift a percentage of traffic between the CloudHub 1.0 worker and the CloudHub 2.0 ingress load balancer, which then routes to the CloudHub 2.0 replica. The DLB and the CloudHub 2.0 private space it targets must support this split; see Step 4: Validate and Switch Traffic.
-
Full DNS cutover: Repoint the CNAME for myapp.example.com directly from the DLB to the CloudHub 2.0 ingress endpoint. The DLB and SLB can’t route to apps in a migrated private space, so this is an all-or-nothing switch rather than a gradual one.