From 1e9be0c870ac35c5eb78df19ac3f527a13c2df1c Mon Sep 17 00:00:00 2001 From: Tim McCarthy Date: Fri, 28 Feb 2020 18:02:57 -0600 Subject: [PATCH] Added envoy files; added port 8001 to all of the API gateways --- deploy/aro/mobilemarketingapigw/envoy.yaml | 75 ++++++++++ .../mobilemarketingapigw-deploy-template.yml | 6 + deploy/aro/mobileshoppingapigw/envoy.yaml | 139 ++++++++++++++++++ .../mobileshoppingapigw-deploy-template.yml | 6 + deploy/aro/webmarketingapigw/envoy.yaml | 75 ++++++++++ .../webmarketingapigw-deploy-template.yml | 6 + deploy/aro/webshoppingapigw/envoy.yaml | 139 ++++++++++++++++++ .../webshoppingapigw-deploy-template.yml | 6 + 8 files changed, 452 insertions(+) create mode 100644 deploy/aro/mobilemarketingapigw/envoy.yaml create mode 100644 deploy/aro/mobileshoppingapigw/envoy.yaml create mode 100644 deploy/aro/webmarketingapigw/envoy.yaml create mode 100644 deploy/aro/webshoppingapigw/envoy.yaml diff --git a/deploy/aro/mobilemarketingapigw/envoy.yaml b/deploy/aro/mobilemarketingapigw/envoy.yaml new file mode 100644 index 000000000..90c61967d --- /dev/null +++ b/deploy/aro/mobilemarketingapigw/envoy.yaml @@ -0,0 +1,75 @@ +admin: + access_log_path: "/dev/null" + address: + socket_address: + address: 0.0.0.0 + port_value: 8001 +static_resources: + listeners: + - address: + socket_address: + address: 0.0.0.0 + port_value: 8080 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: auto + stat_prefix: ingress_http + route_config: + name: eshop_backend_route + virtual_hosts: + - name: eshop_backend + domains: + - "*" + routes: + - name: "m-short" + match: + prefix: "/m/" + route: + auto_host_rewrite: true + prefix_rewrite: "/marketingapi/" + cluster: marketing + - name: "m-long" + match: + prefix: "/marketingapi/" + route: + auto_host_rewrite: true + cluster: marketing + http_filters: + - name: envoy.router + access_log: + - name: envoy.file_access_log + filter: + not_health_check_filter: {} + config: + json_format: + time: "%START_TIME%" + protocol: "%PROTOCOL%" + duration: "%DURATION%" + request_method: "%REQ(:METHOD)%" + request_host: "%REQ(HOST)%" + path: "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%" + response_flags: "%RESPONSE_FLAGS%" + route_name: "%ROUTE_NAME%" + upstream_host: "%UPSTREAM_HOST%" + upstream_cluster: "%UPSTREAM_CLUSTER%" + upstream_local_address: "%UPSTREAM_LOCAL_ADDRESS%" + path: "/tmp/access.log" + clusters: + - name: marketing + connect_timeout: 0.25s + type: logical_dns + lb_policy: round_robin + hosts: + - socket_address: + address: marketingapi.__OpenShiftProject__.svc:8080 + port_value: 8080 + - name: locations + connect_timeout: 0.25s + type: logical_dns + lb_policy: round_robin + hosts: + - socket_address: + address: locationsapi.__OpenShiftProject__.svc:8080 + port_value: 8080 diff --git a/deploy/aro/mobilemarketingapigw/mobilemarketingapigw-deploy-template.yml b/deploy/aro/mobilemarketingapigw/mobilemarketingapigw-deploy-template.yml index c632812e7..61714d9eb 100644 --- a/deploy/aro/mobilemarketingapigw/mobilemarketingapigw-deploy-template.yml +++ b/deploy/aro/mobilemarketingapigw/mobilemarketingapigw-deploy-template.yml @@ -34,6 +34,8 @@ objects: ports: - containerPort: 8080 protocol: TCP + - containerPort: 8001 + protocol: TCP resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File @@ -66,6 +68,10 @@ objects: port: 8080 protocol: TCP targetPort: 8080 + - name: 8001-tcp + port: 8001 + protocol: TCP + targetPort: 8001 selector: app: ${APPLICATION_NAME} deploymentconfig: ${APPLICATION_NAME} diff --git a/deploy/aro/mobileshoppingapigw/envoy.yaml b/deploy/aro/mobileshoppingapigw/envoy.yaml new file mode 100644 index 000000000..1ae8c45a1 --- /dev/null +++ b/deploy/aro/mobileshoppingapigw/envoy.yaml @@ -0,0 +1,139 @@ +admin: + access_log_path: "/dev/null" + address: + socket_address: + address: 0.0.0.0 + port_value: 8001 +static_resources: + listeners: + - address: + socket_address: + address: 0.0.0.0 + port_value: 80 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: auto + stat_prefix: ingress_http + route_config: + name: eshop_backend_route + virtual_hosts: + - name: eshop_backend + domains: + - "*" + routes: + - name: "c-short" + match: + prefix: "/c/" + route: + auto_host_rewrite: true + prefix_rewrite: "/catalog-api/" + cluster: catalog + - name: "c-long" + match: + prefix: "/catalog-api/" + route: + auto_host_rewrite: true + cluster: catalog + - name: "o-short" + match: + prefix: "/o/" + route: + auto_host_rewrite: true + prefix_rewrite: "/ordering-api/" + cluster: ordering + - name: "o-long" + match: + prefix: "/ordering-api/" + route: + auto_host_rewrite: true + cluster: ordering + - name: "h-long" + match: + prefix: "/hub/notificationhub" + route: + auto_host_rewrite: true + cluster: signalr-hub + timeout: 300s + - name: "b-short" + match: + prefix: "/b/" + route: + auto_host_rewrite: true + prefix_rewrite: "/basket-api/" + cluster: basket + - name: "b-long" + match: + prefix: "/basket-api/" + route: + auto_host_rewrite: true + cluster: basket + - name: "agg" + match: + prefix: "/" + route: + auto_host_rewrite: true + prefix_rewrite: "/" + cluster: shoppingagg + http_filters: + - name: envoy.router + access_log: + - name: envoy.file_access_log + filter: + not_health_check_filter: {} + config: + json_format: + time: "%START_TIME%" + protocol: "%PROTOCOL%" + duration: "%DURATION%" + request_method: "%REQ(:METHOD)%" + request_host: "%REQ(HOST)%" + path: "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%" + response_flags: "%RESPONSE_FLAGS%" + route_name: "%ROUTE_NAME%" + upstream_host: "%UPSTREAM_HOST%" + upstream_cluster: "%UPSTREAM_CLUSTER%" + upstream_local_address: "%UPSTREAM_LOCAL_ADDRESS%" + path: "/tmp/access.log" + clusters: + - name: shoppingagg + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: webshoppingagg + port_value: 80 + - name: catalog + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: catalog-api + port_value: 80 + - name: basket + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: basket-api + port_value: 80 + - name: ordering + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: ordering-api + port_value: 80 + - name: signalr-hub + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: ordering-signalrhub + port_value: 80 diff --git a/deploy/aro/mobileshoppingapigw/mobileshoppingapigw-deploy-template.yml b/deploy/aro/mobileshoppingapigw/mobileshoppingapigw-deploy-template.yml index 8ba2ce38b..24522979d 100644 --- a/deploy/aro/mobileshoppingapigw/mobileshoppingapigw-deploy-template.yml +++ b/deploy/aro/mobileshoppingapigw/mobileshoppingapigw-deploy-template.yml @@ -34,6 +34,8 @@ objects: ports: - containerPort: 8080 protocol: TCP + - containerPort: 8001 + protocol: TCP resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File @@ -66,6 +68,10 @@ objects: port: 8080 protocol: TCP targetPort: 8080 + - name: 8001-tcp + port: 8001 + protocol: TCP + targetPort: 8001 selector: app: ${APPLICATION_NAME} deploymentconfig: ${APPLICATION_NAME} diff --git a/deploy/aro/webmarketingapigw/envoy.yaml b/deploy/aro/webmarketingapigw/envoy.yaml new file mode 100644 index 000000000..c6f3421de --- /dev/null +++ b/deploy/aro/webmarketingapigw/envoy.yaml @@ -0,0 +1,75 @@ +admin: + access_log_path: "/dev/null" + address: + socket_address: + address: 0.0.0.0 + port_value: 8001 +static_resources: + listeners: + - address: + socket_address: + address: 0.0.0.0 + port_value: 80 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: auto + stat_prefix: ingress_http + route_config: + name: eshop_backend_route + virtual_hosts: + - name: eshop_backend + domains: + - "*" + routes: + - name: "m-short" + match: + prefix: "/m/" + route: + auto_host_rewrite: true + prefix_rewrite: "/marketing-api/" + cluster: marketing + - name: "m-long" + match: + prefix: "/marketing-api/" + route: + auto_host_rewrite: true + cluster: marketing + http_filters: + - name: envoy.router + access_log: + - name: envoy.file_access_log + filter: + not_health_check_filter: {} + config: + json_format: + time: "%START_TIME%" + protocol: "%PROTOCOL%" + duration: "%DURATION%" + request_method: "%REQ(:METHOD)%" + request_host: "%REQ(HOST)%" + path: "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%" + response_flags: "%RESPONSE_FLAGS%" + route_name: "%ROUTE_NAME%" + upstream_host: "%UPSTREAM_HOST%" + upstream_cluster: "%UPSTREAM_CLUSTER%" + upstream_local_address: "%UPSTREAM_LOCAL_ADDRESS%" + path: "/tmp/access.log" + clusters: + - name: marketing + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: marketing-api + port_value: 80 + - name: locations + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: locations-api + port_value: 80 diff --git a/deploy/aro/webmarketingapigw/webmarketingapigw-deploy-template.yml b/deploy/aro/webmarketingapigw/webmarketingapigw-deploy-template.yml index c0a990852..f0bf0266b 100644 --- a/deploy/aro/webmarketingapigw/webmarketingapigw-deploy-template.yml +++ b/deploy/aro/webmarketingapigw/webmarketingapigw-deploy-template.yml @@ -34,6 +34,8 @@ objects: ports: - containerPort: 8080 protocol: TCP + - containerPort: 8001 + protocol: TCP resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File @@ -66,6 +68,10 @@ objects: port: 8080 protocol: TCP targetPort: 8080 + - name: 8001-tcp + port: 8001 + protocol: TCP + targetPort: 8001 selector: app: ${APPLICATION_NAME} deploymentconfig: ${APPLICATION_NAME} diff --git a/deploy/aro/webshoppingapigw/envoy.yaml b/deploy/aro/webshoppingapigw/envoy.yaml new file mode 100644 index 000000000..1ae8c45a1 --- /dev/null +++ b/deploy/aro/webshoppingapigw/envoy.yaml @@ -0,0 +1,139 @@ +admin: + access_log_path: "/dev/null" + address: + socket_address: + address: 0.0.0.0 + port_value: 8001 +static_resources: + listeners: + - address: + socket_address: + address: 0.0.0.0 + port_value: 80 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: auto + stat_prefix: ingress_http + route_config: + name: eshop_backend_route + virtual_hosts: + - name: eshop_backend + domains: + - "*" + routes: + - name: "c-short" + match: + prefix: "/c/" + route: + auto_host_rewrite: true + prefix_rewrite: "/catalog-api/" + cluster: catalog + - name: "c-long" + match: + prefix: "/catalog-api/" + route: + auto_host_rewrite: true + cluster: catalog + - name: "o-short" + match: + prefix: "/o/" + route: + auto_host_rewrite: true + prefix_rewrite: "/ordering-api/" + cluster: ordering + - name: "o-long" + match: + prefix: "/ordering-api/" + route: + auto_host_rewrite: true + cluster: ordering + - name: "h-long" + match: + prefix: "/hub/notificationhub" + route: + auto_host_rewrite: true + cluster: signalr-hub + timeout: 300s + - name: "b-short" + match: + prefix: "/b/" + route: + auto_host_rewrite: true + prefix_rewrite: "/basket-api/" + cluster: basket + - name: "b-long" + match: + prefix: "/basket-api/" + route: + auto_host_rewrite: true + cluster: basket + - name: "agg" + match: + prefix: "/" + route: + auto_host_rewrite: true + prefix_rewrite: "/" + cluster: shoppingagg + http_filters: + - name: envoy.router + access_log: + - name: envoy.file_access_log + filter: + not_health_check_filter: {} + config: + json_format: + time: "%START_TIME%" + protocol: "%PROTOCOL%" + duration: "%DURATION%" + request_method: "%REQ(:METHOD)%" + request_host: "%REQ(HOST)%" + path: "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%" + response_flags: "%RESPONSE_FLAGS%" + route_name: "%ROUTE_NAME%" + upstream_host: "%UPSTREAM_HOST%" + upstream_cluster: "%UPSTREAM_CLUSTER%" + upstream_local_address: "%UPSTREAM_LOCAL_ADDRESS%" + path: "/tmp/access.log" + clusters: + - name: shoppingagg + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: webshoppingagg + port_value: 80 + - name: catalog + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: catalog-api + port_value: 80 + - name: basket + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: basket-api + port_value: 80 + - name: ordering + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: ordering-api + port_value: 80 + - name: signalr-hub + connect_timeout: 0.25s + type: strict_dns + lb_policy: round_robin + hosts: + - socket_address: + address: ordering-signalrhub + port_value: 80 diff --git a/deploy/aro/webshoppingapigw/webshoppingapigw-deploy-template.yml b/deploy/aro/webshoppingapigw/webshoppingapigw-deploy-template.yml index 06216f037..87145927c 100644 --- a/deploy/aro/webshoppingapigw/webshoppingapigw-deploy-template.yml +++ b/deploy/aro/webshoppingapigw/webshoppingapigw-deploy-template.yml @@ -34,6 +34,8 @@ objects: ports: - containerPort: 8080 protocol: TCP + - containerPort: 8001 + protocol: TCP resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File @@ -66,6 +68,10 @@ objects: port: 8080 protocol: TCP targetPort: 8080 + - name: 8001-tcp + port: 8001 + protocol: TCP + targetPort: 8001 selector: app: ${APPLICATION_NAME} deploymentconfig: ${APPLICATION_NAME}