blob: eaa0a74349ab255ead895e9b4c9d74268497ed64 [file] [log] [blame]
{
"node": {
"id": "{{ .EnvoyConfigOpt.NodeID }}",
"cluster": "mycluster",
"locality": {
"zone": "testzone"
},
"metadata": {
{{ .EnvoyConfigOpt.meta_json_str }}
}
},
"stats_config": {
"use_all_default_tags": false
},
"admin": {
"access_log_path": "{{.AccessLogPath}}",
"address": {
"socket_address": {
"address": "0.0.0.0",
"port_value": {{.Ports.AdminPort}}
}
}
},
"layered_runtime": {
"layers": [
{
"name": "deprecation",
"static_layer": {
"envoy.deprecated_features:envoy.config.listener.v3.Listener.hidden_envoy_deprecated_use_original_dst": true,
"re2.max_program_size.error_level": 1024
}
},
{
"name": "admin",
"admin_layer": {}
}
]
},
"dynamic_resources": {
"lds_config": {
"resource_api_version": "V3",
"ads": {}
},
"cds_config": {
"resource_api_version": "V3",
"ads": {}
},
"ads_config": {
"api_type": "GRPC",
"transport_api_version": "V3",
"grpc_services": {
"envoy_grpc": {
"cluster_name": "xds-grpc"
}
},
"refresh_delay": {
"seconds": 30,
"nanos": 0
}
}
},
"static_resources": {
"listeners": [
{
"name": "http_0.0.0.0_{{.Ports.ServerProxyPort}}",
"address": {
"socket_address": {
"address": "0.0.0.0",
"port_value": {{.Ports.ServerProxyPort}}
}
},
"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": "http",
"route_config": {
"name": "default",
"virtual_hosts": [
{
"name": "backend",
"domains": [
"*"
],
"routes": [
{
"match": {
"prefix": "/"
},
"route": {
"cluster": "service1"
}
}
]
}
]
},
"http_filters": [
{
"name": "envoy.cors"
},
{
"name": "envoy.filters.http.router"
}
]
}
}
]
}
]
},
{
"name": "http_0.0.0.0_{{.Ports.ClientProxyPort}}",
"address": {
"socket_address": {
"address": "0.0.0.0",
"port_value": {{.Ports.ClientProxyPort}}
}
},
"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": "http",
"route_config": {
"name": "default",
"virtual_hosts": [
{
"name": "backend",
"domains": [
"*"
],
"routes": [
{
"match": {
"prefix": "/"
},
"route": {
"cluster": "service2"
}
}
]
}
]
},
"http_filters": [
{
"name": "envoy.cors"
},
{
"name": "envoy.filters.http.router"
}
]
}
}
]
}
]
},
{
"name": "tcpproxy",
"address": {
"socket_address": {
"address": "0.0.0.0",
"port_value": {{.Ports.TCPProxyPort}}
}
},
"filter_chains": [
{
"filters": [
{
"name": "envoy.tcp_proxy",
"typed_config": {
"@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy",
"stat_prefix": "tcpproxy",
"cluster": "service1"
}
}
]
}
]
},
{
"name": "http_proxy_80",
"address": {
"socket_address": {
"address": "0.0.0.0",
"port_value": 17002
}
},
"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",
"codec_type": "AUTO",
"stat_prefix": "http_proxy",
"http_filters": [
{"name": "envoy.filters.http.router"
}
],
"rds": {
"route_config_name": "80",
"config_source": {"resource_api_version": "V3","ads": {}}
},
"http_protocol_options": {
"allow_absolute_url": true
},
"access_log": [
{
"name": "envoy.access_loggers.file",
"typedConfig": {
"@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
"path": "{{.AccessLogPath}}"
}
}
]
}
}
]
}
]
},
{
"name": "http_proxy_all",
"address": {
"socket_address": {
"address": "0.0.0.0",
"port_value": 17003
}
},
"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",
"codec_type": "AUTO",
"stat_prefix": "http_proxy",
"http_filters": [
{"name": "envoy.filters.http.router"
}
],
"rds": {
"route_config_name": "http_proxy",
"config_source": {"resource_api_version": "V3","ads": {}}
},
"http_protocol_options": {
"allow_absolute_url": true
},
"access_log": [
{
"name": "envoy.access_loggers.file",
"typedConfig": {
"@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
"path": "{{.AccessLogPath}}"
}
}
]
}
}
]
}
]
}
],
"clusters": [
{
"name": "xds-grpc",
"type": "STRICT_DNS",
"connect_timeout": {
"seconds": 5,
"nanos": 0
},
"lb_policy": "ROUND_ROBIN",
"load_assignment": {
"cluster_name": "xds-grpc",
"endpoints": [{
"lb_endpoints": [{
"endpoint": {
"address":{
"socket_address": {
"address": "127.0.0.1",
"port_value": {{.Ports.PilotGrpcPort}}
}
}
}
}]
}]
},
"http2_protocol_options": {}
},
{
"name": "service1",
"type": "STRICT_DNS",
"connect_timeout": {
"seconds": 5,
"nanos": 0
},
"lb_policy": "ROUND_ROBIN",
"load_assignment": {
"cluster_name": "service1",
"endpoints": [{
"lb_endpoints": [{
"endpoint": {
"address":{
"socket_address": {
"address": "127.0.0.1",
"port_value": {{.Ports.BackendPort}}
}
}
}
}]
}]
},
"http2_protocol_options": {}
},
{
"name": "service2",
"type": "STRICT_DNS",
"connect_timeout": {
"seconds": 5,
"nanos": 0
},
"lb_policy": "ROUND_ROBIN",
"load_assignment": {
"cluster_name": "service2",
"endpoints": [{
"lb_endpoints": [{
"endpoint": {
"address":{
"socket_address": {
"address": "127.0.0.1",
"port_value": {{.Ports.ServerProxyPort}}
}
}
}
}]
}]
},
"http2_protocol_options": {}
},
]
}
}