Skip to content
This repository has been archived by the owner on Jul 11, 2023. It is now read-only.

Kubernetes probe rewriting doesn't handle multiple containers with the same probe type #3773

Closed
nojnhuh opened this issue Jul 15, 2021 · 8 comments
Labels
kind/bug Something isn't working stale

Comments

@nojnhuh
Copy link
Contributor

nojnhuh commented Jul 15, 2021

Bug description: When a Pod has two containers each with a liveness probe, the osm-injector rewrites both probes to /osm-liveness-probe on port 15901. However, the Envoy cluster configured for liveness probes only contains one endpoint, so probes from the kubelet are all directed only to one of the probes. This may hide probe failures if another container's probe of the same type is succeeding.

Affected area (please mark with X where applicable):

  • Install [ ]
  • SMI Traffic Access Policy [ ]
  • SMI Traffic Specs Policy [ ]
  • SMI Traffic Split Policy [ ]
  • Permissive Traffic Policy [ ]
  • Ingress [ ]
  • Egress [ ]
  • Envoy Control Plane [X]
  • CLI Tool [ ]
  • Metrics [ ]
  • Certificate Management [ ]
  • Sidecar Injection [ ]
  • Logging [ ]
  • Debugging [ ]
  • Tests [ ]
  • Demo [ ]
  • CI System [ ]

Expected behavior: Probes from the kubelet are routed by Envoy to the correct container.

Steps to reproduce the bug (as precisely as possible):
Roughly, create a Pod with two containers, each with a readinessProbe. The first probe fails when the Pod is not injected with a sidecar (as it should) and passes erroneously when it is injected with a sidecar.

Here are copy-paste steps to reproduce (assuming kind is installed). The final kubectl wait should fail, but succeeds:

make build-osm
make kind-up
make docker-push CTR_TAG=latest CTR_REGISTRY=localhost:5000

bin/osm install --set OpenServiceMesh.image.registry=localhost:5000,OpenServiceMesh.image.tag=latest
bin/osm namespace add default

kubectl apply -f- <<'EOF'
apiVersion: v1
kind: ConfigMap
metadata:
  name: nginx-config
data:
  default.conf.template: |
    server {
      listen ${NGINX_PORT};
      location / {
        root /usr/share/nginx/html;
        index index.html index.htm;
      }
    }
---
apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - image: nginx
    name: nginx
    ports:
    - containerPort: 8000
    env:
    - name: NGINX_PORT
      value: "8000"
    volumeMounts:
    - name: config
      mountPath: /etc/nginx/templates
    readinessProbe:
      httpGet:
        path: /fail
        port: 8000
      periodSeconds: 3
  - image: nginx
    name: nginx2
    ports:
    - containerPort: 8001
    env:
    - name: NGINX_PORT
      value: "8001"
    volumeMounts:
    - name: config
      mountPath: /etc/nginx/templates
    readinessProbe:
      httpGet:
        path: /
        port: 8001
      periodSeconds: 3
  volumes:
  - name: config
    configMap:
      name: nginx-config
EOF

kubectl wait --for condition=Ready=false pod/nginx --timeout 60s

You can also inspect the container logs to see only the second container is responding to any probes:

% kubectl logs nginx -c nginx
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
20-envsubst-on-templates.sh: Running envsubst on /etc/nginx/templates/..2021_07_15_17_11_32.677037255/default.conf.template to /etc/nginx/conf.d/..2021_07_15_17_11_32.677037255/default.conf
20-envsubst-on-templates.sh: Running envsubst on /etc/nginx/templates/default.conf.template to /etc/nginx/conf.d/default.conf
20-envsubst-on-templates.sh: Running envsubst on /etc/nginx/templates/..data/default.conf.template to /etc/nginx/conf.d/..data/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2021/07/15 17:11:36 [notice] 1#1: using the "epoll" event method
2021/07/15 17:11:36 [notice] 1#1: nginx/1.21.1
2021/07/15 17:11:36 [notice] 1#1: built by gcc 8.3.0 (Debian 8.3.0-6)
2021/07/15 17:11:36 [notice] 1#1: OS: Linux 5.10.25-linuxkit
2021/07/15 17:11:36 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2021/07/15 17:11:36 [notice] 1#1: start worker processes
2021/07/15 17:11:36 [notice] 1#1: start worker process 43
2021/07/15 17:11:36 [notice] 1#1: start worker process 44
2021/07/15 17:11:36 [notice] 1#1: start worker process 45
2021/07/15 17:11:36 [notice] 1#1: start worker process 46
2021/07/15 17:11:36 [notice] 1#1: start worker process 47
2021/07/15 17:11:36 [notice] 1#1: start worker process 48
% kubectl logs nginx -c nginx2
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
20-envsubst-on-templates.sh: Running envsubst on /etc/nginx/templates/..2021_07_15_17_11_32.677037255/default.conf.template to /etc/nginx/conf.d/..2021_07_15_17_11_32.677037255/default.conf
20-envsubst-on-templates.sh: Running envsubst on /etc/nginx/templates/default.conf.template to /etc/nginx/conf.d/default.conf
20-envsubst-on-templates.sh: Running envsubst on /etc/nginx/templates/..data/default.conf.template to /etc/nginx/conf.d/..data/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2021/07/15 17:11:37 [notice] 1#1: using the "epoll" event method
2021/07/15 17:11:37 [notice] 1#1: nginx/1.21.1
2021/07/15 17:11:37 [notice] 1#1: built by gcc 8.3.0 (Debian 8.3.0-6)
2021/07/15 17:11:37 [notice] 1#1: OS: Linux 5.10.25-linuxkit
2021/07/15 17:11:37 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2021/07/15 17:11:37 [notice] 1#1: start worker processes
2021/07/15 17:11:37 [notice] 1#1: start worker process 43
2021/07/15 17:11:37 [notice] 1#1: start worker process 44
2021/07/15 17:11:37 [notice] 1#1: start worker process 45
2021/07/15 17:11:37 [notice] 1#1: start worker process 46
2021/07/15 17:11:37 [notice] 1#1: start worker process 47
2021/07/15 17:11:37 [notice] 1#1: start worker process 48
127.0.0.1 - - [15/Jul/2021:17:11:39 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:40 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:41 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:41 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:44 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:44 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:47 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:47 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:50 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
127.0.0.1 - - [15/Jul/2021:17:11:50 +0000] "GET / HTTP/1.1" 200 612 "-" "kube-probe/1.21" "-"
The full envoy config for the pod:
{
 "configs": [
  {
   "@type": "type.googleapis.com/envoy.admin.v3.BootstrapConfigDump",
   "bootstrap": {
    "node": {
     "id": "6a277a24-2e1a-4cec-b28c-a50878fe9401.sidecar.default.default.cluster.local",
     "hidden_envoy_deprecated_build_version": "98c1c9e9a40804b93b074badad1cdf284b47d58b/1.18.3/Clean/RELEASE/BoringSSL",
     "user_agent_name": "envoy",
     "user_agent_build_version": {
      "version": {
       "major_number": 1,
       "minor_number": 18,
       "patch": 3
      },
      "metadata": {
       "revision.status": "Clean",
       "revision.sha": "98c1c9e9a40804b93b074badad1cdf284b47d58b",
       "ssl.version": "BoringSSL",
       "build.type": "RELEASE"
      }
     },
     "extensions": [
      {
       "name": "envoy.filters.listener.http_inspector",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.filters.listener.original_dst",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.filters.listener.original_src",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.filters.listener.proxy_protocol",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.filters.listener.tls_inspector",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.listener.http_inspector",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.listener.original_dst",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.listener.original_src",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.listener.proxy_protocol",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.listener.tls_inspector",
       "category": "envoy.filters.listener"
      },
      {
       "name": "envoy.transport_sockets.alts",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "envoy.transport_sockets.quic",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "envoy.transport_sockets.raw_buffer",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "envoy.transport_sockets.starttls",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "envoy.transport_sockets.tap",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "envoy.transport_sockets.tls",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "raw_buffer",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "starttls",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "tls",
       "category": "envoy.transport_sockets.downstream"
      },
      {
       "name": "envoy.matching.matchers.consistent_hashing",
       "category": "envoy.matching.input_matchers"
      },
      {
       "name": "auto",
       "category": "envoy.thrift_proxy.protocols"
      },
      {
       "name": "binary",
       "category": "envoy.thrift_proxy.protocols"
      },
      {
       "name": "binary/non-strict",
       "category": "envoy.thrift_proxy.protocols"
      },
      {
       "name": "compact",
       "category": "envoy.thrift_proxy.protocols"
      },
      {
       "name": "twitter",
       "category": "envoy.thrift_proxy.protocols"
      },
      {
       "name": "envoy.buffer",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.cors",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.csrf",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.ext_authz",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.ext_proc",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.fault",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.adaptive_concurrency",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.admission_control",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.aws_lambda",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.aws_request_signing",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.buffer",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.cache",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.cdn_loop",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.composite",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.compressor",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.cors",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.csrf",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.decompressor",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.dynamic_forward_proxy",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.dynamo",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.ext_authz",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.ext_proc",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.fault",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.grpc_http1_bridge",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.grpc_http1_reverse_bridge",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.grpc_json_transcoder",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.grpc_stats",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.grpc_web",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.gzip",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.header_to_metadata",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.health_check",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.ip_tagging",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.jwt_authn",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.local_ratelimit",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.lua",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.oauth2",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.on_demand",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.original_src",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.ratelimit",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.rbac",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.router",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.squash",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.tap",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.filters.http.wasm",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.grpc_http1_bridge",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.grpc_json_transcoder",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.grpc_web",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.gzip",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.health_check",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.http_dynamo_filter",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.ip_tagging",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.local_rate_limit",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.lua",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.rate_limit",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.router",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.squash",
       "category": "envoy.filters.http"
      },
      {
       "name": "match-wrapper",
       "category": "envoy.filters.http"
      },
      {
       "name": "envoy.bootstrap.wasm",
       "category": "envoy.bootstrap"
      },
      {
       "name": "envoy.extensions.network.socket_interface.default_socket_interface",
       "category": "envoy.bootstrap"
      },
      {
       "name": "envoy.dog_statsd",
       "category": "envoy.stats_sinks"
      },
      {
       "name": "envoy.metrics_service",
       "category": "envoy.stats_sinks"
      },
      {
       "name": "envoy.stat_sinks.dog_statsd",
       "category": "envoy.stats_sinks"
      },
      {
       "name": "envoy.stat_sinks.hystrix",
       "category": "envoy.stats_sinks"
      },
      {
       "name": "envoy.stat_sinks.metrics_service",
       "category": "envoy.stats_sinks"
      },
      {
       "name": "envoy.stat_sinks.statsd",
       "category": "envoy.stats_sinks"
      },
      {
       "name": "envoy.stat_sinks.wasm",
       "category": "envoy.stats_sinks"
      },
      {
       "name": "envoy.statsd",
       "category": "envoy.stats_sinks"
      },
      {
       "name": "envoy.compression.brotli.compressor",
       "category": "envoy.compression.compressor"
      },
      {
       "name": "envoy.compression.gzip.compressor",
       "category": "envoy.compression.compressor"
      },
      {
       "name": "envoy.matching.common_inputs.environment_variable",
       "category": "envoy.matching.common_inputs"
      },
      {
       "name": "dubbo.hessian2",
       "category": "envoy.dubbo_proxy.serializers"
      },
      {
       "name": "envoy.retry_host_predicates.omit_canary_hosts",
       "category": "envoy.retry_host_predicates"
      },
      {
       "name": "envoy.retry_host_predicates.omit_host_metadata",
       "category": "envoy.retry_host_predicates"
      },
      {
       "name": "envoy.retry_host_predicates.previous_hosts",
       "category": "envoy.retry_host_predicates"
      },
      {
       "name": "envoy.health_checkers.redis",
       "category": "envoy.health_checkers"
      },
      {
       "name": "envoy.dynamic.ot",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.lightstep",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.tracers.datadog",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.tracers.dynamic_ot",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.tracers.lightstep",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.tracers.opencensus",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.tracers.skywalking",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.tracers.xray",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.tracers.zipkin",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.zipkin",
       "category": "envoy.tracers"
      },
      {
       "name": "envoy.cluster.eds",
       "category": "envoy.clusters"
      },
      {
       "name": "envoy.cluster.logical_dns",
       "category": "envoy.clusters"
      },
      {
       "name": "envoy.cluster.original_dst",
       "category": "envoy.clusters"
      },
      {
       "name": "envoy.cluster.static",
       "category": "envoy.clusters"
      },
      {
       "name": "envoy.cluster.strict_dns",
       "category": "envoy.clusters"
      },
      {
       "name": "envoy.clusters.aggregate",
       "category": "envoy.clusters"
      },
      {
       "name": "envoy.clusters.dynamic_forward_proxy",
       "category": "envoy.clusters"
      },
      {
       "name": "envoy.clusters.redis",
       "category": "envoy.clusters"
      },
      {
       "name": "dubbo",
       "category": "envoy.dubbo_proxy.protocols"
      },
      {
       "name": "request-headers",
       "category": "envoy.matching.http.input"
      },
      {
       "name": "request-trailers",
       "category": "envoy.matching.http.input"
      },
      {
       "name": "response-headers",
       "category": "envoy.matching.http.input"
      },
      {
       "name": "response-trailers",
       "category": "envoy.matching.http.input"
      },
      {
       "name": "envoy.filters.thrift.rate_limit",
       "category": "envoy.thrift_proxy.filters"
      },
      {
       "name": "envoy.filters.thrift.router",
       "category": "envoy.thrift_proxy.filters"
      },
      {
       "name": "envoy.filters.connection_pools.tcp.generic",
       "category": "envoy.upstreams"
      },
      {
       "name": "envoy.client_ssl_auth",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.echo",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.ext_authz",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.client_ssl_auth",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.direct_response",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.dubbo_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.echo",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.ext_authz",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.http_connection_manager",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.kafka_broker",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.local_ratelimit",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.mongo_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.mysql_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.postgres_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.ratelimit",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.rbac",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.redis_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.rocketmq_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.sni_cluster",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.sni_dynamic_forward_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.tcp_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.thrift_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.wasm",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.filters.network.zookeeper_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.http_connection_manager",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.mongo_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.ratelimit",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.redis_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.tcp_proxy",
       "category": "envoy.filters.network"
      },
      {
       "name": "envoy.access_loggers.file",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.access_loggers.http_grpc",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.access_loggers.open_telemetry",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.access_loggers.stderr",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.access_loggers.stdout",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.access_loggers.tcp_grpc",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.access_loggers.wasm",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.file_access_log",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.http_grpc_access_log",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.open_telemetry_access_log",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.stderr_access_log",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.stdout_access_log",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.tcp_grpc_access_log",
       "category": "envoy.access_loggers"
      },
      {
       "name": "envoy.wasm_access_log",
       "category": "envoy.access_loggers"
      },
      {
       "name": "composite-action",
       "category": "envoy.matching.action"
      },
      {
       "name": "skip",
       "category": "envoy.matching.action"
      },
      {
       "name": "envoy.wasm.runtime.null",
       "category": "envoy.wasm.runtime"
      },
      {
       "name": "envoy.wasm.runtime.v8",
       "category": "envoy.wasm.runtime"
      },
      {
       "name": "envoy.tls.cert_validator.default",
       "category": "envoy.tls.cert_validator"
      },
      {
       "name": "envoy.tls.cert_validator.spiffe",
       "category": "envoy.tls.cert_validator"
      },
      {
       "name": "envoy.extensions.http.cache.simple",
       "category": "envoy.http.cache"
      },
      {
       "name": "envoy.filters.dubbo.router",
       "category": "envoy.dubbo_proxy.filters"
      },
      {
       "name": "envoy.watchdog.abort_action",
       "category": "envoy.guarddog_actions"
      },
      {
       "name": "envoy.watchdog.profile_action",
       "category": "envoy.guarddog_actions"
      },
      {
       "name": "envoy.filters.udp.dns_filter",
       "category": "envoy.filters.udp_listener"
      },
      {
       "name": "envoy.filters.udp_listener.udp_proxy",
       "category": "envoy.filters.udp_listener"
      },
      {
       "name": "auto",
       "category": "envoy.thrift_proxy.transports"
      },
      {
       "name": "framed",
       "category": "envoy.thrift_proxy.transports"
      },
      {
       "name": "header",
       "category": "envoy.thrift_proxy.transports"
      },
      {
       "name": "unframed",
       "category": "envoy.thrift_proxy.transports"
      },
      {
       "name": "envoy.request_id.uuid",
       "category": "envoy.request_id"
      },
      {
       "name": "envoy.compression.brotli.decompressor",
       "category": "envoy.compression.decompressor"
      },
      {
       "name": "envoy.compression.gzip.decompressor",
       "category": "envoy.compression.decompressor"
      },
      {
       "name": "envoy.grpc_credentials.aws_iam",
       "category": "envoy.grpc_credentials"
      },
      {
       "name": "envoy.grpc_credentials.default",
       "category": "envoy.grpc_credentials"
      },
      {
       "name": "envoy.grpc_credentials.file_based_metadata",
       "category": "envoy.grpc_credentials"
      },
      {
       "name": "default",
       "category": "envoy.dubbo_proxy.route_matchers"
      },
      {
       "name": "envoy.rate_limit_descriptors.expr",
       "category": "envoy.rate_limit_descriptors"
      },
      {
       "name": "envoy.ip",
       "category": "envoy.resolvers"
      },
      {
       "name": "envoy.internal_redirect_predicates.allow_listed_routes",
       "category": "envoy.internal_redirect_predicates"
      },
      {
       "name": "envoy.internal_redirect_predicates.previous_routes",
       "category": "envoy.internal_redirect_predicates"
      },
      {
       "name": "envoy.internal_redirect_predicates.safe_cross_scheme",
       "category": "envoy.internal_redirect_predicates"
      },
      {
       "name": "envoy.resource_monitors.fixed_heap",
       "category": "envoy.resource_monitors"
      },
      {
       "name": "envoy.resource_monitors.injected_resource",
       "category": "envoy.resource_monitors"
      },
      {
       "name": "envoy.retry_priorities.previous_priorities",
       "category": "envoy.retry_priorities"
      },
      {
       "name": "preserve_case",
       "category": "envoy.http.stateful_header_formatters"
      },
      {
       "name": "envoy.transport_sockets.alts",
       "category": "envoy.transport_sockets.upstream"
      },
      {
       "name": "envoy.transport_sockets.quic",
       "category": "envoy.transport_sockets.upstream"
      },
      {
       "name": "envoy.transport_sockets.raw_buffer",
       "category": "envoy.transport_sockets.upstream"
      },
      {
       "name": "envoy.transport_sockets.tap",
       "category": "envoy.transport_sockets.upstream"
      },
      {
       "name": "envoy.transport_sockets.tls",
       "category": "envoy.transport_sockets.upstream"
      },
      {
       "name": "envoy.transport_sockets.upstream_proxy_protocol",
       "category": "envoy.transport_sockets.upstream"
      },
      {
       "name": "raw_buffer",
       "category": "envoy.transport_sockets.upstream"
      },
      {
       "name": "tls",
       "category": "envoy.transport_sockets.upstream"
      },
      {
       "name": "envoy.extensions.upstreams.http.v3.HttpProtocolOptions",
       "category": "envoy.upstream_options"
      },
      {
       "name": "envoy.upstreams.http.http_protocol_options",
       "category": "envoy.upstream_options"
      }
     ]
    },
    "static_resources": {
     "listeners": [
      {
       "name": "readiness_listener",
       "address": {
        "socket_address": {
         "address": "0.0.0.0",
         "port_value": 15902
        }
       },
       "filter_chains": [
        {
         "filters": [
          {
           "name": "envoy.filters.network.http_connection_manager",
           "typed_config": {
            "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
            "stat_prefix": "health_probes_http",
            "route_config": {
             "name": "local_route",
             "virtual_hosts": [
              {
               "name": "local_service",
               "domains": [
                "*"
               ],
               "routes": [
                {
                 "match": {
                  "prefix": "/osm-readiness-probe"
                 },
                 "route": {
                  "cluster": "readiness_cluster",
                  "prefix_rewrite": "/"
                 }
                }
               ]
              }
             ]
            },
            "http_filters": [
             {
              "name": "envoy.filters.http.router"
             }
            ],
            "access_log": [
             {
              "name": "envoy.access_loggers.stream",
              "typed_config": {
               "@type": "type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog",
               "log_format": {
                "json_format": {
                 "response_code_details": "%RESPONSE_CODE_DETAILS%",
                 "requested_server_name": "%REQUESTED_SERVER_NAME%",
                 "bytes_sent": "%BYTES_SENT%",
                 "start_time": "%START_TIME%",
                 "response_code": "%RESPONSE_CODE%",
                 "time_to_first_byte": "%RESPONSE_DURATION%",
                 "duration": "%DURATION%",
                 "user_agent": "%REQ(USER-AGENT)%",
                 "request_id": "%REQ(X-REQUEST-ID)%",
                 "authority": "%REQ(:AUTHORITY)%",
                 "x_forwarded_for": "%REQ(X-FORWARDED-FOR)%",
                 "method": "%REQ(:METHOD)%",
                 "upstream_service_time": "%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%",
                 "upstream_cluster": "%UPSTREAM_CLUSTER%",
                 "upstream_host": "%UPSTREAM_HOST%",
                 "path": "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%",
                 "response_flags": "%RESPONSE_FLAGS%",
                 "protocol": "%PROTOCOL%",
                 "bytes_received": "%BYTES_RECEIVED%"
                }
               }
              }
             }
            ]
           }
          }
         ]
        }
       ]
      }
     ],
     "clusters": [
      {
       "name": "osm-controller",
       "type": "LOGICAL_DNS",
       "connect_timeout": "0.250s",
       "transport_socket": {
        "name": "envoy.transport_sockets.tls",
        "typed_config": {
         "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext",
         "common_tls_context": {
          "tls_params": {
           "tls_minimum_protocol_version": "TLSv1_2",
           "tls_maximum_protocol_version": "TLSv1_3"
          },
          "tls_certificates": [
           {
            "certificate_chain": {
             "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVIakNDQXdhZ0F3SUJBZ0lRZDJBQ09VekdGcldWOUVMZWZwRGJQekFOQmdrcWhraUc5dzBCQVFzRkFEQnEKTVFzd0NRWURWUVFHRXdKVlV6RUxNQWtHQTFVRUJ4TUNRMEV4R2pBWUJnTlZCQW9URVU5d1pXNGdVMlZ5ZG1sagpaU0JOWlhOb01USXdNQVlEVlFRREV5bFBjR1Z1SUZObGNuWnBZMlVnVFdWemFDQkRaWEowYVdacFkyRjBhVzl1CklFRjFkR2h2Y21sMGVUQWVGdzB5TVRBM01UVXhOekV4TXpKYUZ3MHpNVEEzTVRNeE56RXhNekphTUhFeEdqQVkKQmdOVkJBb1RFVTl3Wlc0Z1UyVnlkbWxqWlNCTlpYTm9NVk13VVFZRFZRUURFMG8yWVRJM04yRXlOQzB5WlRGaApMVFJqWldNdFlqSTRZeTFoTlRBNE56aG1aVGswTURFdWMybGtaV05oY2k1a1pXWmhkV3gwTG1SbFptRjFiSFF1ClkyeDFjM1JsY2k1c2IyTmhiRENDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFNbFUKWkxEd1ZONkFpNkxrNDBOUmtPQVdSRjBTbW1OaE5IV2VDRkZkaGluaGdqaDRqK3psVkVEcEtsZDdqNVp4RU1taApPTTB6ZmkrQ3Q0cHdCcjBmaTdyam90U1kyQnVNYzdJcVd6NlEzZ3pHRGtXOCtmdGdYQzlIM3FXbjdIOTBUa21WCmdFZTBTNnJ1OFJWaVRTT3dXR05MRm1SbGtHWWtDV0xFSVBZeWpBM1FiL3lneEJPT1BNZElVaUpiUHVTMnl0eWgKWExLMlhQR2JBUWEwcFQrY1dYbG9TTDErQXQzaWJKaXplODJPQmtCblJqSWMvSDI0MFBkcGNnZ1poSjJBd1hsdAphTEYrQk5jRWVpWGdYSlZYWTdJaVRHL3BTOHpiWWR3TXJqN2MreVNFMUFEWWg5Y1lLRUFWZWxjNENkVDlNWEZ3CjlacUpJbnh6L1prTGRNMXl3VGtDQXdFQUFhT0J1RENCdFRBT0JnTlZIUThCQWY4RUJBTUNCYUF3SFFZRFZSMGwKQkJZd0ZBWUlLd1lCQlFVSEF3SUdDQ3NHQVFVRkJ3TUJNQXdHQTFVZEV3RUIvd1FDTUFBd0h3WURWUjBqQkJndwpGb0FVNGVjNlhackZaR0trVzI3Y2VCUHFFOTNDbHZjd1ZRWURWUjBSQkU0d1RJSktObUV5TnpkaE1qUXRNbVV4CllTMDBZMlZqTFdJeU9HTXRZVFV3T0RjNFptVTVOREF4TG5OcFpHVmpZWEl1WkdWbVlYVnNkQzVrWldaaGRXeDAKTG1Oc2RYTjBaWEl1Ykc5allXd3dEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBR05sM1dSMzhIbzZaMitKUUVhZQpuS2tXc3psbUQ4SUo4dDJhTWU3VFgybVVxSXZ2YnNibUVmRVVEYnVPbzloRzl4NlBYSTBhTFdTdVorajJESXhBClMybStCZjJjNlFXeEdIbStCOVJqNTFIcHM1MHdqY0czQUJOanIrZkY1Y1puNXZlZXV0OGVWVHpLTFVsT1hQTGkKdjM2Z2h1SXM3ZnpPY0tyQ2d5N3ZwK0hJUjVrWC9SQVZCMTE4VWdYMHd1Q0t4R09MU1BNVnUvN0Y3R1JWaDR0ZwppQ2RNdnNhVjcwcy9jR20xWExyaFBPNjBlYXlKRXdCTEFyTE9qemo3NVNYbVh4Q05IY3I5Q3orWWk4MHpSMVBECkFtQTBOa2cweXdvNFI4MExLOEZTK3FVSnJPZm5aSWtXQWNwZFZBTjBqdTdtMnB3ZmtIZitxWFpOeXNOdlZ6MzEKaCtrPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
            },
            "private_key": {
             "inline_bytes": "W3JlZGFjdGVkXQ=="
            }
           }
          ],
          "validation_context": {
           "trusted_ca": {
            "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURvRENDQW9pZ0F3SUJBZ0lRRHZvOTRTdzFoNldsZ1FWMVMxUzRsakFOQmdrcWhraUc5dzBCQVFzRkFEQnEKTVFzd0NRWURWUVFHRXdKVlV6RUxNQWtHQTFVRUJ4TUNRMEV4R2pBWUJnTlZCQW9URVU5d1pXNGdVMlZ5ZG1sagpaU0JOWlhOb01USXdNQVlEVlFRREV5bFBjR1Z1SUZObGNuWnBZMlVnVFdWemFDQkRaWEowYVdacFkyRjBhVzl1CklFRjFkR2h2Y21sMGVUQWVGdzB5TVRBM01UVXhOekE0TVRsYUZ3MHpNVEEzTVRNeE56QTRNVGxhTUdveEN6QUoKQmdOVkJBWVRBbFZUTVFzd0NRWURWUVFIRXdKRFFURWFNQmdHQTFVRUNoTVJUM0JsYmlCVFpYSjJhV05sSUUxbApjMmd4TWpBd0JnTlZCQU1US1U5d1pXNGdVMlZ5ZG1salpTQk5aWE5vSUVObGNuUnBabWxqWVhScGIyNGdRWFYwCmFHOXlhWFI1TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUF4YU9FU2I0K2lHVncKVThFVGt6NVNnblpZR1ZGYlhzdlUyZi80ZmF0QWk4aUt2NVI3Zi9qTjhtaWlaR0NnVmJJM2FGZHd4OVVrbzdhVgpXcFlJendyQ3FubWdQcVk1dVhWaEFqai9SRS9Bd0lHbk1ZeVdPVGdVR1Q0blRPYjZlYlJZT0xwTE9KNzZHMncyCit1TUpkaWhkOXBDYnJNTlZlVTAyRWhScTJ4SnMzZWJ6OGJobmdJaEc5V1FNa0xnaVVpT0E3Y2ZDTVRhY0xXUUIKV3FOZHNTQUJvMUt6ZEZjNnJnUDFtdlZZTzJJeWFLYzJsakE2SWhqM3hyd0s5bEhZdW50WmdXU1hDS05WVFRKVApKRHRFQ0UvNGwwZkgrdlFTQVZ1MVpTN1dBRGRlWVVnZjd0SHpnS2ZqRUtZTURzQVlXZG90eGY5TFdPTy93Y2xMCmNZbytZYkNRY3dJREFRQUJvMEl3UURBT0JnTlZIUThCQWY4RUJBTUNBUVl3RHdZRFZSMFRBUUgvQkFVd0F3RUIKL3pBZEJnTlZIUTRFRmdRVTRlYzZYWnJGWkdLa1cyN2NlQlBxRTkzQ2x2Y3dEUVlKS29aSWh2Y05BUUVMQlFBRApnZ0VCQUxJL2VQQ0QwT3B6cG5lalNNQm8vSG1RS05BYysrRERLdTVRT2JRMGs3Y1dYVk1VWUUzZmM1enY2VVo2CnpGZ0hjS3lKSmFFSXJCZGVhZXhEazFSalFZS3hrRjZERHNMUFg3V3JiM1poa2pGZnVVMndNSHhTRktzRXJDSkUKY2h2ME9LOVFZVkZucG9UY2srOXY0bmU4ZVpFdG8wNHNSWThZV1J5V0QzSUUrUDI0YnNHNDF6VzZIR2x0WWhoTApCRkJNSzVjdEwvKyttNjJ0a1o5MjdPdVB4bWhlV2hKeEFJQ1Rva1hrN3dCVmxPL0JKZ3FlbTBmcDYxMTdKKzdtClhkd1MyaVE4eGd0cHhuKzlOQXVkUHNCek1VRnY1NzNRM2xDRkQ0cW5LUUV5d2MyQVlrZjc4Tll0RFpUR2xnbWkKZE9jbUpnTlFDUEh1WEJXdWxxMW5hQ1FpUVhnPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
           }
          },
          "alpn_protocols": [
           "h2"
          ]
         }
        }
       },
       "load_assignment": {
        "cluster_name": "osm-controller",
        "endpoints": [
         {
          "lb_endpoints": [
           {
            "endpoint": {
             "address": {
              "socket_address": {
               "address": "osm-controller.osm-system.svc.cluster.local",
               "port_value": 15128
              }
             }
            }
           }
          ]
         }
        ]
       },
       "typed_extension_protocol_options": {
        "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": {
         "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions",
         "explicit_http_config": {
          "http2_protocol_options": {}
         }
        }
       }
      },
      {
       "name": "readiness_cluster",
       "type": "STATIC",
       "connect_timeout": "1s",
       "load_assignment": {
        "cluster_name": "readiness_cluster",
        "endpoints": [
         {
          "lb_endpoints": [
           {
            "endpoint": {
             "address": {
              "socket_address": {
               "address": "0.0.0.0",
               "port_value": 8001
              }
             }
            }
           }
          ]
         }
        ]
       }
      }
     ]
    },
    "dynamic_resources": {
     "lds_config": {
      "ads": {},
      "resource_api_version": "V3"
     },
     "cds_config": {
      "ads": {},
      "resource_api_version": "V3"
     },
     "ads_config": {
      "api_type": "GRPC",
      "grpc_services": [
       {
        "envoy_grpc": {
         "cluster_name": "osm-controller"
        }
       }
      ],
      "set_node_on_first_message_only": true,
      "transport_api_version": "V3"
     }
    },
    "admin": {
     "address": {
      "socket_address": {
       "address": "127.0.0.1",
       "port_value": 15000
      }
     },
     "access_log": [
      {
       "name": "envoy.access_loggers.stream",
       "typed_config": {
        "@type": "type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog"
       }
      }
     ]
    }
   },
   "last_updated": "2021-07-15T17:11:38.625Z"
  },
  {
   "@type": "type.googleapis.com/envoy.admin.v3.ClustersConfigDump",
   "static_clusters": [
    {
     "cluster": {
      "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster",
      "name": "osm-controller",
      "type": "LOGICAL_DNS",
      "connect_timeout": "0.250s",
      "transport_socket": {
       "name": "envoy.transport_sockets.tls",
       "typed_config": {
        "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext",
        "common_tls_context": {
         "tls_params": {
          "tls_minimum_protocol_version": "TLSv1_2",
          "tls_maximum_protocol_version": "TLSv1_3"
         },
         "tls_certificates": [
          {
           "certificate_chain": {
            "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVIakNDQXdhZ0F3SUJBZ0lRZDJBQ09VekdGcldWOUVMZWZwRGJQekFOQmdrcWhraUc5dzBCQVFzRkFEQnEKTVFzd0NRWURWUVFHRXdKVlV6RUxNQWtHQTFVRUJ4TUNRMEV4R2pBWUJnTlZCQW9URVU5d1pXNGdVMlZ5ZG1sagpaU0JOWlhOb01USXdNQVlEVlFRREV5bFBjR1Z1SUZObGNuWnBZMlVnVFdWemFDQkRaWEowYVdacFkyRjBhVzl1CklFRjFkR2h2Y21sMGVUQWVGdzB5TVRBM01UVXhOekV4TXpKYUZ3MHpNVEEzTVRNeE56RXhNekphTUhFeEdqQVkKQmdOVkJBb1RFVTl3Wlc0Z1UyVnlkbWxqWlNCTlpYTm9NVk13VVFZRFZRUURFMG8yWVRJM04yRXlOQzB5WlRGaApMVFJqWldNdFlqSTRZeTFoTlRBNE56aG1aVGswTURFdWMybGtaV05oY2k1a1pXWmhkV3gwTG1SbFptRjFiSFF1ClkyeDFjM1JsY2k1c2IyTmhiRENDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFNbFUKWkxEd1ZONkFpNkxrNDBOUmtPQVdSRjBTbW1OaE5IV2VDRkZkaGluaGdqaDRqK3psVkVEcEtsZDdqNVp4RU1taApPTTB6ZmkrQ3Q0cHdCcjBmaTdyam90U1kyQnVNYzdJcVd6NlEzZ3pHRGtXOCtmdGdYQzlIM3FXbjdIOTBUa21WCmdFZTBTNnJ1OFJWaVRTT3dXR05MRm1SbGtHWWtDV0xFSVBZeWpBM1FiL3lneEJPT1BNZElVaUpiUHVTMnl0eWgKWExLMlhQR2JBUWEwcFQrY1dYbG9TTDErQXQzaWJKaXplODJPQmtCblJqSWMvSDI0MFBkcGNnZ1poSjJBd1hsdAphTEYrQk5jRWVpWGdYSlZYWTdJaVRHL3BTOHpiWWR3TXJqN2MreVNFMUFEWWg5Y1lLRUFWZWxjNENkVDlNWEZ3CjlacUpJbnh6L1prTGRNMXl3VGtDQXdFQUFhT0J1RENCdFRBT0JnTlZIUThCQWY4RUJBTUNCYUF3SFFZRFZSMGwKQkJZd0ZBWUlLd1lCQlFVSEF3SUdDQ3NHQVFVRkJ3TUJNQXdHQTFVZEV3RUIvd1FDTUFBd0h3WURWUjBqQkJndwpGb0FVNGVjNlhackZaR0trVzI3Y2VCUHFFOTNDbHZjd1ZRWURWUjBSQkU0d1RJSktObUV5TnpkaE1qUXRNbVV4CllTMDBZMlZqTFdJeU9HTXRZVFV3T0RjNFptVTVOREF4TG5OcFpHVmpZWEl1WkdWbVlYVnNkQzVrWldaaGRXeDAKTG1Oc2RYTjBaWEl1Ykc5allXd3dEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBR05sM1dSMzhIbzZaMitKUUVhZQpuS2tXc3psbUQ4SUo4dDJhTWU3VFgybVVxSXZ2YnNibUVmRVVEYnVPbzloRzl4NlBYSTBhTFdTdVorajJESXhBClMybStCZjJjNlFXeEdIbStCOVJqNTFIcHM1MHdqY0czQUJOanIrZkY1Y1puNXZlZXV0OGVWVHpLTFVsT1hQTGkKdjM2Z2h1SXM3ZnpPY0tyQ2d5N3ZwK0hJUjVrWC9SQVZCMTE4VWdYMHd1Q0t4R09MU1BNVnUvN0Y3R1JWaDR0ZwppQ2RNdnNhVjcwcy9jR20xWExyaFBPNjBlYXlKRXdCTEFyTE9qemo3NVNYbVh4Q05IY3I5Q3orWWk4MHpSMVBECkFtQTBOa2cweXdvNFI4MExLOEZTK3FVSnJPZm5aSWtXQWNwZFZBTjBqdTdtMnB3ZmtIZitxWFpOeXNOdlZ6MzEKaCtrPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
           },
           "private_key": {
            "inline_bytes": "W3JlZGFjdGVkXQ=="
           }
          }
         ],
         "validation_context": {
          "trusted_ca": {
           "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURvRENDQW9pZ0F3SUJBZ0lRRHZvOTRTdzFoNldsZ1FWMVMxUzRsakFOQmdrcWhraUc5dzBCQVFzRkFEQnEKTVFzd0NRWURWUVFHRXdKVlV6RUxNQWtHQTFVRUJ4TUNRMEV4R2pBWUJnTlZCQW9URVU5d1pXNGdVMlZ5ZG1sagpaU0JOWlhOb01USXdNQVlEVlFRREV5bFBjR1Z1SUZObGNuWnBZMlVnVFdWemFDQkRaWEowYVdacFkyRjBhVzl1CklFRjFkR2h2Y21sMGVUQWVGdzB5TVRBM01UVXhOekE0TVRsYUZ3MHpNVEEzTVRNeE56QTRNVGxhTUdveEN6QUoKQmdOVkJBWVRBbFZUTVFzd0NRWURWUVFIRXdKRFFURWFNQmdHQTFVRUNoTVJUM0JsYmlCVFpYSjJhV05sSUUxbApjMmd4TWpBd0JnTlZCQU1US1U5d1pXNGdVMlZ5ZG1salpTQk5aWE5vSUVObGNuUnBabWxqWVhScGIyNGdRWFYwCmFHOXlhWFI1TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUF4YU9FU2I0K2lHVncKVThFVGt6NVNnblpZR1ZGYlhzdlUyZi80ZmF0QWk4aUt2NVI3Zi9qTjhtaWlaR0NnVmJJM2FGZHd4OVVrbzdhVgpXcFlJendyQ3FubWdQcVk1dVhWaEFqai9SRS9Bd0lHbk1ZeVdPVGdVR1Q0blRPYjZlYlJZT0xwTE9KNzZHMncyCit1TUpkaWhkOXBDYnJNTlZlVTAyRWhScTJ4SnMzZWJ6OGJobmdJaEc5V1FNa0xnaVVpT0E3Y2ZDTVRhY0xXUUIKV3FOZHNTQUJvMUt6ZEZjNnJnUDFtdlZZTzJJeWFLYzJsakE2SWhqM3hyd0s5bEhZdW50WmdXU1hDS05WVFRKVApKRHRFQ0UvNGwwZkgrdlFTQVZ1MVpTN1dBRGRlWVVnZjd0SHpnS2ZqRUtZTURzQVlXZG90eGY5TFdPTy93Y2xMCmNZbytZYkNRY3dJREFRQUJvMEl3UURBT0JnTlZIUThCQWY4RUJBTUNBUVl3RHdZRFZSMFRBUUgvQkFVd0F3RUIKL3pBZEJnTlZIUTRFRmdRVTRlYzZYWnJGWkdLa1cyN2NlQlBxRTkzQ2x2Y3dEUVlKS29aSWh2Y05BUUVMQlFBRApnZ0VCQUxJL2VQQ0QwT3B6cG5lalNNQm8vSG1RS05BYysrRERLdTVRT2JRMGs3Y1dYVk1VWUUzZmM1enY2VVo2CnpGZ0hjS3lKSmFFSXJCZGVhZXhEazFSalFZS3hrRjZERHNMUFg3V3JiM1poa2pGZnVVMndNSHhTRktzRXJDSkUKY2h2ME9LOVFZVkZucG9UY2srOXY0bmU4ZVpFdG8wNHNSWThZV1J5V0QzSUUrUDI0YnNHNDF6VzZIR2x0WWhoTApCRkJNSzVjdEwvKyttNjJ0a1o5MjdPdVB4bWhlV2hKeEFJQ1Rva1hrN3dCVmxPL0JKZ3FlbTBmcDYxMTdKKzdtClhkd1MyaVE4eGd0cHhuKzlOQXVkUHNCek1VRnY1NzNRM2xDRkQ0cW5LUUV5d2MyQVlrZjc4Tll0RFpUR2xnbWkKZE9jbUpnTlFDUEh1WEJXdWxxMW5hQ1FpUVhnPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
          }
         },
         "alpn_protocols": [
          "h2"
         ]
        }
       }
      },
      "load_assignment": {
       "cluster_name": "osm-controller",
       "endpoints": [
        {
         "lb_endpoints": [
          {
           "endpoint": {
            "address": {
             "socket_address": {
              "address": "osm-controller.osm-system.svc.cluster.local",
              "port_value": 15128
             }
            }
           }
          }
         ]
        }
       ]
      },
      "typed_extension_protocol_options": {
       "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": {
        "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions",
        "explicit_http_config": {
         "http2_protocol_options": {}
        }
       }
      }
     },
     "last_updated": "2021-07-15T17:11:38.629Z"
    },
    {
     "cluster": {
      "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster",
      "name": "readiness_cluster",
      "type": "STATIC",
      "connect_timeout": "1s",
      "load_assignment": {
       "cluster_name": "readiness_cluster",
       "endpoints": [
        {
         "lb_endpoints": [
          {
           "endpoint": {
            "address": {
             "socket_address": {
              "address": "0.0.0.0",
              "port_value": 8001
             }
            }
           }
          }
         ]
        }
       ]
      }
     },
     "last_updated": "2021-07-15T17:11:38.629Z"
    }
   ]
  },
  {
   "@type": "type.googleapis.com/envoy.admin.v3.ListenersConfigDump",
   "static_listeners": [
    {
     "listener": {
      "@type": "type.googleapis.com/envoy.config.listener.v3.Listener",
      "name": "readiness_listener",
      "address": {
       "socket_address": {
        "address": "0.0.0.0",
        "port_value": 15902
       }
      },
      "filter_chains": [
       {
        "filters": [
         {
          "name": "envoy.filters.network.http_connection_manager",
          "typed_config": {
           "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
           "stat_prefix": "health_probes_http",
           "route_config": {
            "name": "local_route",
            "virtual_hosts": [
             {
              "name": "local_service",
              "domains": [
               "*"
              ],
              "routes": [
               {
                "match": {
                 "prefix": "/osm-readiness-probe"
                },
                "route": {
                 "cluster": "readiness_cluster",
                 "prefix_rewrite": "/"
                }
               }
              ]
             }
            ]
           },
           "http_filters": [
            {
             "name": "envoy.filters.http.router"
            }
           ],
           "access_log": [
            {
             "name": "envoy.access_loggers.stream",
             "typed_config": {
              "@type": "type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog",
              "log_format": {
               "json_format": {
                "response_code_details": "%RESPONSE_CODE_DETAILS%",
                "requested_server_name": "%REQUESTED_SERVER_NAME%",
                "bytes_sent": "%BYTES_SENT%",
                "start_time": "%START_TIME%",
                "response_code": "%RESPONSE_CODE%",
                "time_to_first_byte": "%RESPONSE_DURATION%",
                "duration": "%DURATION%",
                "user_agent": "%REQ(USER-AGENT)%",
                "request_id": "%REQ(X-REQUEST-ID)%",
                "authority": "%REQ(:AUTHORITY)%",
                "x_forwarded_for": "%REQ(X-FORWARDED-FOR)%",
                "method": "%REQ(:METHOD)%",
                "upstream_service_time": "%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%",
                "upstream_cluster": "%UPSTREAM_CLUSTER%",
                "upstream_host": "%UPSTREAM_HOST%",
                "path": "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%",
                "response_flags": "%RESPONSE_FLAGS%",
                "protocol": "%PROTOCOL%",
                "bytes_received": "%BYTES_RECEIVED%"
               }
              }
             }
            }
           ]
          }
         }
        ]
       }
      ]
     },
     "last_updated": "2021-07-15T17:11:38.633Z"
    }
   ]
  },
  {
   "@type": "type.googleapis.com/envoy.admin.v3.ScopedRoutesConfigDump"
  },
  {
   "@type": "type.googleapis.com/envoy.admin.v3.RoutesConfigDump",
   "static_route_configs": [
    {
     "route_config": {
      "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration",
      "name": "local_route",
      "virtual_hosts": [
       {
        "name": "local_service",
        "domains": [
         "*"
        ],
        "routes": [
         {
          "match": {
           "prefix": "/osm-readiness-probe"
          },
          "route": {
           "cluster": "readiness_cluster",
           "prefix_rewrite": "/"
          }
         }
        ]
       }
      ]
     },
     "last_updated": "2021-07-15T17:11:38.632Z"
    }
   ]
  },
  {
   "@type": "type.googleapis.com/envoy.admin.v3.SecretsConfigDump"
  }
 ]
}

How was OSM installed?: as above, CLI and default install besides images built from source

Anything else we need to know?:

Environment:

  • OSM version (use osm version):
Version: dev; Commit: 1c692076bd76ade640832259b7719dbda0cebd19; Date: 
  • Kubernetes version (use kubectl version):
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.2", GitCommit:"092fbfbf53427de67cac1e9fa54aaa09a28371d7", GitTreeState:"clean", BuildDate:"2021-06-16T12:52:14Z", GoVersion:"go1.16.5", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1", GitCommit:"5e58841cce77d4bc13713ad2b91fa0d961e69192", GitTreeState:"clean", BuildDate:"2021-05-21T23:01:33Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/amd64"}
  • Size of cluster (number of worker nodes in the cluster): 1
  • Others:
@nojnhuh nojnhuh added the kind/bug Something isn't working label Jul 15, 2021
@github-actions
Copy link

This issue will be closed due to a long period of inactivity. If you would like this issue to remain open then please comment or update.

@github-actions github-actions bot added the stale label Feb 12, 2022
@github-actions
Copy link

Issue closed due to inactivity.

@jaellio jaellio removed the stale label Mar 3, 2022
@jaellio
Copy link
Contributor

jaellio commented Mar 3, 2022

#4558 resolves part of this issue.

Supported Scenario:

  • N probes of the same type if N-1 or N probes use TcpSocket actions

@github-actions
Copy link

github-actions bot commented May 3, 2022

This issue will be closed due to a long period of inactivity. If you would like this issue to remain open then please comment or update.

@github-actions github-actions bot added the stale label May 3, 2022
@github-actions
Copy link

Issue closed due to inactivity.

@github-actions
Copy link

Issue closed due to inactivity.

@keithmattix keithmattix reopened this Sep 17, 2022
@github-actions
Copy link

Issue closed due to inactivity.

@keithmattix keithmattix reopened this Sep 25, 2022
@github-actions
Copy link

github-actions bot commented Oct 3, 2022

Issue closed due to inactivity.

@github-actions github-actions bot closed this as completed Oct 3, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
kind/bug Something isn't working stale
Projects
None yet
Development

No branches or pull requests

4 participants