123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- apiVersion: v1
- kind: ConfigMap
- metadata:
- name: envoy-cm-17
- data:
- envoy-yml: |-
- admin:
- access_log_path: /tmp/admin_access.log
- address:
- socket_address:
- protocol: TCP
- address: 127.0.0.1
- port_value: 9901
- static_resources:
- listeners:
- - name: listener_0
- address:
- socket_address:
- protocol: TCP
- address: 0.0.0.0
- port_value: 10000
- 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: ingress_http
- route_config:
- name: local_route
- virtual_hosts:
- - name: local_service
- domains: ["*"]
- routes:
- - match:
- prefix: "/"
- route:
- cluster: service_httpbin
- typed_per_filter_config:
- envoy.filters.http.dynamic_forward_proxy:
- "@type": type.googleapis.com/envoy.extensions.filters.http.dynamic_forward_proxy.v3.PerRouteConfig
- host_rewrite_literal: httpbin.org
- rate_limits:
- - stage: 0
- actions:
- - {destination_cluster: {}}
- http_filters:
- - name: envoy.filters.http.ratelimit
- typed_config:
- "@type": type.googleapis.com/envoy.extensions.filters.http.ratelimit.v3.RateLimit
- domain: foo
- request_type: external
- failure_mode_deny: false
- stage: 0
- rate_limit_service:
- grpc_service:
- envoy_grpc:
- cluster_name: rate_limit_cluster
- timeout: 2s
- transport_api_version: V3
- - name: envoy.filters.http.router
- typed_config:
- "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- clusters:
- - name: service_httpbin
- connect_timeout: 0.5s
- type: LOGICAL_DNS
- # Comment out the following line to test on v6 networks
- dns_lookup_family: V4_ONLY
- lb_policy: ROUND_ROBIN
- load_assignment:
- cluster_name: service_httpbin
- endpoints:
- - lb_endpoints:
- - endpoint:
- address:
- socket_address:
- address: httpbin.org
- port_value: 80
- - name: rate_limit_cluster
- type: STRICT_DNS
- connect_timeout: 10s
- lb_policy: ROUND_ROBIN
- http2_protocol_options: {}
- load_assignment:
- cluster_name: rate_limit_cluster
- endpoints:
- - lb_endpoints:
- - endpoint:
- address:
- socket_address:
- address: sentinel-rls-service
- port_value: 10245
- ---
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: envoy-deployment-basic-17
- labels:
- app: envoy-17
- spec:
- replicas: 1
- selector:
- matchLabels:
- app: envoy-17
- template:
- metadata:
- labels:
- app: envoy-17
- spec:
- containers:
- - name: envoy
- image: envoyproxy/envoy:v1.17.3
- ports:
- - containerPort: 10000
- command: ["envoy"]
- args: ["-c", "/tmp/envoy/envoy.yaml"]
- volumeMounts:
- - name: envoy-config
- mountPath: /tmp/envoy
- volumes:
- - name: envoy-config
- configMap:
- name: envoy-cm-17
- items:
- - key: envoy-yml
- path: envoy.yaml
- ---
- apiVersion: v1
- kind: Service
- metadata:
- name: envoy-service-17
- labels:
- name: envoy-service-17
- spec:
- type: NodePort
- ports:
- - port: 10000
- targetPort: 10000
- protocol: TCP
- selector:
- app: envoy-17
|