global # Drop resource limit checks to mitigate https://issues.redhat.com/browse/OCPBUGS-21803 in HAProxy 2.6. no strict-limits maxconn 50000 nbthread 4 daemon ca-base /etc/ssl crt-base /etc/ssl # TODO: Check if we can get reload to be faster by saving server state. # server-state-file /var/lib/haproxy/run/haproxy.state stats socket /var/lib/haproxy/run/haproxy.sock mode 600 level admin expose-fd listeners stats timeout 2m # Increase the default request size to be comparable to modern cloud load balancers (ALB: 64kb), affects # total memory use when large numbers of connections are open. # In OCP 4.8, this value is adjustable via the IngressController API. # Cluster administrators are still encouraged to use the default values provided below. tune.maxrewrite 8192 tune.bufsize 32768 # Configure the TLS versions we support ssl-default-bind-options ssl-min-ver TLSv1.2 # The default cipher suite can be selected from the three sets recommended by https://wiki.mozilla.org/Security/Server_Side_TLS, # or the user can provide one using the ROUTER_CIPHERS environment variable. # By default when a cipher set is not provided, intermediate is used. # user provided list of ciphers (Colon separated list as seen above) # the env default is not used here since we can't get here with empty ROUTER_CIPHERS tune.ssl.default-dh-param 2048 ssl-default-bind-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384 ssl-default-bind-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256 defaults maxconn 50000 # To configure custom default errors, you can either uncomment the # line below (server ... 127.0.0.1:8080) and point it to your custom # backend service or alternatively, you can send a custom 503 or 404 error. # # server openshift_backend 127.0.0.1:8080 errorfile 503 /var/lib/haproxy/conf/error-page-503.http errorfile 404 /var/lib/haproxy/conf/error-page-404.http timeout connect 5s timeout client 30s timeout client-fin 1s timeout server 30s timeout server-fin 1s timeout http-request 10s timeout http-keep-alive 300s # Long timeout for WebSocket connections. timeout tunnel 1h frontend public bind :80 mode http option idle-close-on-response tcp-request inspect-delay 5s tcp-request content accept if HTTP monitor-uri /_______internal_router_healthz # Mitigate CVE-2023-40225 (Proxy forwards malformed empty Content-Length headers) http-request deny if { hdr_len(content-length) 0 } # Strip off Proxy headers to prevent HTTpoxy (https://httpoxy.org/) http-request del-header Proxy # DNS labels are case insensitive (RFC 4343), we need to convert the hostname into lowercase # before matching, or any requests containing uppercase characters will never match. http-request set-header Host %[req.hdr(Host),lower] # check if we need to redirect/force using https. acl secure_redirect base,map_reg_int(/var/lib/haproxy/conf/os_route_http_redirect.map) -m bool redirect scheme https if secure_redirect use_backend %[base,map_reg(/var/lib/haproxy/conf/os_http_be.map)] default_backend openshift_default # public ssl accepts all connections and isn't checking certificates yet certificates to use will be # determined by the next backend in the chain which may be an app backend (passthrough termination) or a backend # that terminates encryption in this router (edge) frontend public_ssl bind :443 tcp-request inspect-delay 5s tcp-request content accept if { req_ssl_hello_type 1 } # if the connection is SNI and the route is a passthrough don't use the termination backend, just use the tcp backend # for the SNI case, we also need to compare it in case-insensitive mode (by converting it to lowercase) as RFC 4343 says acl sni req.ssl_sni -m found acl sni_passthrough req.ssl_sni,lower,map_reg(/var/lib/haproxy/conf/os_sni_passthrough.map) -m found use_backend %[req.ssl_sni,lower,map_reg(/var/lib/haproxy/conf/os_tcp_be.map)] if sni sni_passthrough # if the route is SNI and NOT passthrough enter the termination flow use_backend be_sni if sni # non SNI requests should enter a default termination backend rather than the custom cert SNI backend since it # will not be able to match a cert to an SNI host default_backend be_no_sni ########################################################################## # TLS SNI # # When using SNI we can terminate encryption with custom certificates. # Certs will be stored in a directory and will be matched with the SNI host header # which must exist in the CN of the certificate. Certificates must be concatenated # as a single file (handled by the plugin writer) per the haproxy documentation. # # Finally, check re-encryption settings and re-encrypt or just pass along the unencrypted # traffic ########################################################################## backend be_sni server fe_sni unix@/var/lib/haproxy/run/haproxy-sni.sock weight 1 send-proxy frontend fe_sni # terminate ssl on edge bind unix@/var/lib/haproxy/run/haproxy-sni.sock ssl crt /var/lib/haproxy/router/certs/default.pem crt-list /var/lib/haproxy/conf/cert_config.map accept-proxy no-alpn mode http option idle-close-on-response # Mitigate CVE-2023-40225 (Proxy forwards malformed empty Content-Length headers) http-request deny if { hdr_len(content-length) 0 } # Strip off Proxy headers to prevent HTTpoxy (https://httpoxy.org/) http-request del-header Proxy # DNS labels are case insensitive (RFC 4343), we need to convert the hostname into lowercase # before matching, or any requests containing uppercase characters will never match. http-request set-header Host %[req.hdr(Host),lower] # map to backend # Search from most specific to general path (host case). # Note: If no match, haproxy uses the default_backend, no other # use_backend directives below this will be processed. use_backend %[base,map_reg(/var/lib/haproxy/conf/os_edge_reencrypt_be.map)] default_backend openshift_default ########################################################################## # END TLS SNI ########################################################################## ########################################################################## # TLS NO SNI # # When we don't have SNI the only thing we can try to do is terminate the encryption # using our wild card certificate. Once that is complete we can either re-encrypt # the traffic or pass it on to the backends ########################################################################## # backend for when sni does not exist, or ssl term needs to happen on the edge backend be_no_sni server fe_no_sni unix@/var/lib/haproxy/run/haproxy-no-sni.sock weight 1 send-proxy frontend fe_no_sni # terminate ssl on edge bind unix@/var/lib/haproxy/run/haproxy-no-sni.sock ssl crt /var/lib/haproxy/router/certs/default.pem accept-proxy no-alpn mode http option idle-close-on-response # Mitigate CVE-2023-40225 (Proxy forwards malformed empty Content-Length headers) http-request deny if { hdr_len(content-length) 0 } # Strip off Proxy headers to prevent HTTpoxy (https://httpoxy.org/) http-request del-header Proxy # DNS labels are case insensitive (RFC 4343), we need to convert the hostname into lowercase # before matching, or any requests containing uppercase characters will never match. http-request set-header Host %[req.hdr(Host),lower] # map to backend # Search from most specific to general path (host case). # Note: If no match, haproxy uses the default_backend, no other # use_backend directives below this will be processed. use_backend %[base,map_reg(/var/lib/haproxy/conf/os_edge_reencrypt_be.map)] default_backend openshift_default ########################################################################## # END TLS NO SNI ########################################################################## backend openshift_default mode http option forwardfor #option http-keep-alive option http-pretend-keepalive ##-------------- app level backends ---------------- # Secure backend, pass through backend be_tcp:openshift-authentication:oauth-openshift balance source hash-type consistent timeout check 5000ms server pod:oauth-openshift-65687bc9c8-h4cd4:oauth-openshift:https:10.128.0.94:6443 10.128.0.94:6443 weight 1 check inter 5000ms server pod:oauth-openshift-65687bc9c8-twgxt:oauth-openshift:https:10.129.0.81:6443 10.129.0.81:6443 weight 1 check inter 5000ms server pod:oauth-openshift-65687bc9c8-w9j4s:oauth-openshift:https:10.130.0.9:6443 10.130.0.9:6443 weight 1 check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openshift-console:console mode http option redispatch option forwardfor balance random timeout server 5m timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 1e2670d92730b515ce3a1bb65da45062 insert indirect nocache httponly secure attr SameSite=None server pod:console-5958979c8-p9l2s:console:https:10.128.0.106:8443 10.128.0.106:8443 cookie 5bcc9bcc4c188e68d21632b77f4c8616 weight 1 ssl verifyhost console.openshift-console.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms server pod:console-5958979c8-mpc88:console:https:10.130.0.49:8443 10.130.0.49:8443 cookie 052d410b160c3ee7b224037bfdfa0d1f weight 1 ssl verifyhost console.openshift-console.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_edge_http:openshift-console:downloads mode http option redispatch option forwardfor balance random timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie a663438294fbd72a8e16964e97c8ecde insert indirect nocache httponly secure attr SameSite=None server pod:downloads-65bb9777fc-bm4pw:downloads:http:10.128.0.85:8080 10.128.0.85:8080 cookie 64c19589daf76bcf25f251d2c3290b5b weight 1 check inter 5000ms server pod:downloads-65bb9777fc-sd822:downloads:http:10.129.0.67:8080 10.129.0.67:8080 cookie dea7711b487b850961c38c0749c401a7 weight 1 check inter 5000ms # Secure backend, pass through backend be_tcp:openshift-ingress-canary:canary balance roundrobin hash-type consistent timeout check 5000ms server pod:ingress-canary-j76rq:ingress-canary:8443-tcp:10.128.0.64:8443 10.128.0.64:8443 weight 1 check inter 5000ms server pod:ingress-canary-2c8tn:ingress-canary:8443-tcp:10.129.0.34:8443 10.129.0.34:8443 weight 1 check inter 5000ms server pod:ingress-canary-fkqvb:ingress-canary:8443-tcp:10.130.0.12:8443 10.130.0.12:8443 weight 1 check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openshift-monitoring:alertmanager-main mode http option redispatch option forwardfor balance random timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 4e2f052a85d89824d1855ef94e095b2b insert indirect nocache httponly secure attr SameSite=None server pod:alertmanager-main-0:alertmanager-main:web:10.129.0.82:9095 10.129.0.82:9095 cookie ba97afbd707e3ce983e5a806fd5631af weight 1 ssl verifyhost alertmanager-main.openshift-monitoring.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms server pod:alertmanager-main-1:alertmanager-main:web:10.130.0.21:9095 10.130.0.21:9095 cookie 1340a52e81407823577d064d9ecc5f5d weight 1 ssl verifyhost alertmanager-main.openshift-monitoring.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openshift-monitoring:prometheus-k8s mode http option redispatch option forwardfor balance random timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 97f6663f1252f61343f526ad937cfc1a insert indirect nocache httponly secure attr SameSite=None server pod:prometheus-k8s-0:prometheus-k8s:web:10.129.0.84:9091 10.129.0.84:9091 cookie 44fba4eff1083ca1bdcf7ae87f0afe9c weight 1 ssl verifyhost prometheus-k8s.openshift-monitoring.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms server pod:prometheus-k8s-1:prometheus-k8s:web:10.130.0.23:9091 10.130.0.23:9091 cookie e2cfcd7711aa114fdb9fa2bc33e3cea0 weight 1 ssl verifyhost prometheus-k8s.openshift-monitoring.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openshift-monitoring:prometheus-k8s-federate mode http option redispatch option forwardfor balance random timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 55cbf826fb5b0c929ec0c03819d877e5 insert indirect nocache httponly secure attr SameSite=None server pod:prometheus-k8s-0:prometheus-k8s:web:10.129.0.84:9091 10.129.0.84:9091 cookie 44fba4eff1083ca1bdcf7ae87f0afe9c weight 1 ssl verifyhost prometheus-k8s.openshift-monitoring.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms server pod:prometheus-k8s-1:prometheus-k8s:web:10.130.0.23:9091 10.130.0.23:9091 cookie e2cfcd7711aa114fdb9fa2bc33e3cea0 weight 1 ssl verifyhost prometheus-k8s.openshift-monitoring.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openshift-monitoring:thanos-querier mode http option redispatch option forwardfor balance random timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie ee4d5f50aeaffc63a5a5fc30a3072a27 insert indirect nocache httponly secure attr SameSite=None server pod:thanos-querier-cc99494f6-ds5gd:thanos-querier:web:10.128.0.89:9091 10.128.0.89:9091 cookie f1bbe4aca23c7554c0bf86f304bb78f8 weight 1 ssl verifyhost thanos-querier.openshift-monitoring.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms server pod:thanos-querier-cc99494f6-kmmxc:thanos-querier:web:10.129.0.71:9091 10.129.0.71:9091 cookie 927cbe11102976f86e4d33304708e43e weight 1 ssl verifyhost thanos-querier.openshift-monitoring.svc verify required ca-file /var/run/configmaps/service-ca/service-ca.crt check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:aodh-public mode http option redispatch option forwardfor balance random timeout server 60s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie a15b0e108dee5709674baee559a4752c insert indirect nocache httponly secure attr SameSite=None server pod:aodh-0:aodh-public:aodh-public:10.128.0.184:8042 10.128.0.184:8042 cookie 5eff55e664b5ca319843e2fcb280aaaf weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:aodh-public.pem # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:cinder-public mode http option redispatch option forwardfor balance random timeout server 60s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 33e2d45401feb6ecb7f87041ac073655 insert indirect nocache httponly secure attr SameSite=None server pod:cinder-46645-api-2:cinder-public:cinder-public:10.128.0.157:8776 10.128.0.157:8776 cookie 115cd10238fdbbd0bee3ae4d3ef5ba83 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:cinder-public.pem check inter 5000ms server pod:cinder-46645-api-0:cinder-public:cinder-public:10.129.0.146:8776 10.129.0.146:8776 cookie 42ac96f9433d027360a4f74de8772907 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:cinder-public.pem check inter 5000ms server pod:cinder-46645-api-1:cinder-public:cinder-public:10.130.0.112:8776 10.130.0.112:8776 cookie be090ab4a7c5d77ad81dd06bbc91e72d weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:cinder-public.pem check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:glance-default-public mode http option redispatch option forwardfor balance random timeout server 60s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie c27908ff53cf87cdb033d6a54ac4cb8e insert indirect nocache httponly secure attr SameSite=None server pod:glance-46645-default-external-api-0:glance-default-public:glance-default-public:10.128.0.169:9292 10.128.0.169:9292 cookie b785efe0765fddafb554593ec59fee59 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:glance-default-public.pem check inter 5000ms server pod:glance-46645-default-external-api-1:glance-default-public:glance-default-public:10.129.0.151:9292 10.129.0.151:9292 cookie fa85b7a8f541588aeafc18079d90bc30 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:glance-default-public.pem check inter 5000ms server pod:glance-46645-default-external-api-2:glance-default-public:glance-default-public:10.130.0.113:9292 10.130.0.113:9292 cookie b5385f7d305986f6c75767bbc8ab346e weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:glance-default-public.pem check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:heat-api-public mode http option redispatch option forwardfor balance random timeout server 600s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie fca5068b2cc9222a9579546247ab94fd insert indirect nocache httponly secure attr SameSite=None server pod:heat-api-888f485ff-gvvzl:heat-api-public:heat-api-public:10.128.0.165:8004 10.128.0.165:8004 cookie dc6fef1c5be01a987186889bfed85de0 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:heat-api-public.pem # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:heat-cfnapi-public mode http option redispatch option forwardfor balance random timeout server 600s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 82fca24613122f4225b1434bce50a48f insert indirect nocache httponly secure attr SameSite=None server pod:heat-cfnapi-6c687bcb45-wwnml:heat-cfnapi-public:heat-cfnapi-public:10.129.0.143:8000 10.129.0.143:8000 cookie 746fc501cc23c5531e940dfc488e5895 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:heat-cfnapi-public.pem # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:ironic-public mode http option redispatch option forwardfor balance random timeout server 60s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 0dca7ebaabe70eef509e843674c09f5f insert indirect nocache httponly secure attr SameSite=None server pod:ironic-66b7ffc58b-797f7:ironic-public:ironic-public:10.130.0.107:6385 10.130.0.107:6385 cookie afdd63569235c3dca132625271c3bdb4 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:ironic-public.pem # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:keystone-public mode http option redispatch option forwardfor balance random timeout server 60s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie b5697f82cf3c19ece8be533395142512 insert indirect nocache httponly secure attr SameSite=None server pod:keystone-5755976884-m54wt:keystone-public:keystone-public:10.128.0.146:5000 10.128.0.146:5000 cookie 025d0b95b24845704416d2fb64f733a1 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:keystone-public.pem check inter 5000ms server pod:keystone-5755976884-tp9vz:keystone-public:keystone-public:10.129.0.130:5000 10.129.0.130:5000 cookie 42e65118d67a10f6fe8a76d417b63e63 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:keystone-public.pem check inter 5000ms server pod:keystone-5755976884-dmt6m:keystone-public:keystone-public:10.130.0.98:5000 10.130.0.98:5000 cookie b10613de447ee79a3452525bef7018c6 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:keystone-public.pem check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:neutron-public mode http option redispatch option forwardfor balance random timeout server 120s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 38cec1d9c789c59243203143f8ef839e insert indirect nocache httponly secure attr SameSite=None server pod:neutron-57bb6bd49-6mtw2:neutron-public:neutron-public:10.128.0.166:9696 10.128.0.166:9696 cookie e9920b6fe7c491a6d6a9d5c10e5e5e9d weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:neutron-public.pem check inter 5000ms server pod:neutron-57bb6bd49-t2th5:neutron-public:neutron-public:10.129.0.139:9696 10.129.0.139:9696 cookie 492ba5548dc6c80c3a1f7a0b34845884 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:neutron-public.pem check inter 5000ms server pod:neutron-57bb6bd49-fl8n6:neutron-public:neutron-public:10.130.0.118:9696 10.130.0.118:9696 cookie 6f99a7c5612c858d4bd8ff048eb86032 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:neutron-public.pem check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:nova-novncproxy-cell1-public mode http option redispatch option forwardfor balance random timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie a73a87c057a3561705860aa1e8d4d32f insert indirect nocache httponly secure attr SameSite=None server pod:nova-cell1-novncproxy-0:nova-novncproxy-cell1-public:nova-novncproxy-cell1-public:10.128.0.181:6080 10.128.0.181:6080 cookie f4f6bf1ee440d0998431617131acc862 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:nova-novncproxy-cell1-public.pem # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:nova-public mode http option redispatch option forwardfor balance random timeout server 60s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 0dc6017b143850df8350099417b4ec9f insert indirect nocache httponly secure attr SameSite=None server pod:nova-api-2:nova-public:nova-public:10.128.0.185:8774 10.128.0.185:8774 cookie 8a5573643693212d127021b03aff88ca weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:nova-public.pem check inter 5000ms server pod:nova-api-0:nova-public:nova-public:10.129.0.176:8774 10.129.0.176:8774 cookie cbdb8089342cad7159fbb27325998fbe weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:nova-public.pem check inter 5000ms server pod:nova-api-1:nova-public:nova-public:10.130.0.129:8774 10.130.0.129:8774 cookie ff16d09a8c8c03afaf7670b4b6292cf8 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:nova-public.pem check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:octavia-public mode http option redispatch option forwardfor balance random timeout server 120s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 8bd08ef9a33f1b163c825e6cba69ceff insert indirect nocache httponly secure attr SameSite=None server pod:octavia-api-c564bc7f-jdbq7:octavia-public:octavia-public:10.129.0.183:9876 10.129.0.183:9876 cookie d45076242a56d677e8ee38e05a24794e weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:octavia-public.pem # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:placement-public mode http option redispatch option forwardfor balance random timeout server 60s timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie a0787c90e7299024e7525b97b3d9ea96 insert indirect nocache httponly secure attr SameSite=None server pod:placement-958c54db4-x58ll:placement-public:placement-public:10.128.0.147:8778 10.128.0.147:8778 cookie 5cbc69b42b98b2bff121654d9af5ba5d weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:placement-public.pem check inter 5000ms server pod:placement-958c54db4-kctqr:placement-public:placement-public:10.129.0.131:8778 10.129.0.131:8778 cookie f22cc66eaeeb8fdc96626ecb2352a2f9 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:placement-public.pem check inter 5000ms server pod:placement-958c54db4-xtfr6:placement-public:placement-public:10.130.0.99:8778 10.130.0.99:8778 cookie d5b45a6e100130b97fd93a1b34795e92 weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:placement-public.pem check inter 5000ms # Plain http backend or backend with TLS terminated at the edge or a # secure backend with re-encryption. backend be_secure:openstack:swift-public mode http option redispatch option forwardfor balance random timeout check 5000ms http-request add-header X-Forwarded-Host %[req.hdr(host)] http-request add-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto http if !{ ssl_fc } http-request add-header X-Forwarded-Proto https if { ssl_fc } http-request add-header X-Forwarded-Proto-Version h2 if { ssl_fc_alpn -i h2 } http-request add-header Forwarded for=%[src];host=%[req.hdr(host)];proto=%[req.hdr(X-Forwarded-Proto)] cookie 8555ec7bc3b761f9a531b621867c3563 insert indirect nocache httponly secure attr SameSite=None server pod:swift-proxy-f85dff564-q5t6l:swift-public:swift-public:10.128.0.161:8080 10.128.0.161:8080 cookie 4a119266f14e8c1df50b022d0174742e weight 1 ssl verify required ca-file /var/lib/haproxy/router/cacerts/openstack:swift-public.pem