exemple de envoy.yaml pour la réécriture de http et https
Ceci est un premier exemple de travail avec envoy. Je trouve que la documentation est difficile à consulter, c'est pourquoi j'essaierai de suivre mes progrès par des billets de blog peu fréquents sur le sujet.
Le fichier envoy.yaml suivant fonctionne pour moi pour la réécriture http et https vers google :
ressources_statiques :
des auditeurs :
- l'adresse :
adresse_socle :
adresse : 0.0.0.0
valeur_du_port : 80
chaînes de filtres :
- filtres :
- nom : envoy.http_connection_manager
config :
codec_type : auto
stat_prefix : ingress_http
route_config :
nom : local_route
virtual_hosts :
- nom : local_service
domaines : ["*"]
routes :
- match : { préfixe : "/" }
route : { host_rewrite : www.google.com, cluster : service_google }
http_filters :
- nom : envoy.router
- l'adresse :
adresse_socle :
adresse : 0.0.0.0
port_value : 443
chaînes de filtres :
- tls_context :
common_tls_context :
tls_certificats :
- certificate_chain : { filename : "/etc/example-com.crt" }
private_key : { filename : "/etc/example-com.key" }
filtres :
- nom : envoy.http_connection_manager
config :
stat_prefix : ingress_https
route_config :
virtual_hosts :
- nom : default
domaines : ["*"]
routes :
- match : { préfixe : "/" }
route : { host_rewrite : www.google.com, cluster : service_foo }
http_filters :
- nom : envoy.router
clusters :
- nom : service_google
connect_timeout : 0.25s
type : LOGICAL_DNS
dns_lookup_family : V4_ONLY
lb_policy : round_robin
hôtes : [{adresse_socket : {adresse : google.com, valeur_port : 443 }]]
tls_context : { sni : www.google.com }
- nom : service_foo
connect_timeout : 0.25s
type : LOGICAL_DNS
dns_lookup_family : V4_ONLY
lb_policy : round_robin
hôtes : [{adresse_socket : {adresse : google.com, valeur_port : 443 }]]
tls_context : { sni : www.google.com }
admin :
access_log_path : "/tmp/envoy.log"
l'adresse :
adresse_socle :
adresse : 0.0.0.0
valeur_du_port : 9901