SlideShare a Scribd company logo
© 2018 HashiCorp
Consul L7
A multi-cloud service networking platform to
connect and secure any service across any
runtime platform and public or private cloud
1
© 2018 HashiCorp
Agenda
2
1. Background
2. Basic Configuration
3. Traffic Routing
4. Traffic Shifting
5. Multi-Cluster Gateways
6. Service Failover
7. Metrics / Tracing
© 2018 HashiCorp 3
Background
Copyright © 2019 HashiCorp ⁄
The Transition to Multi-Cloud
Copyright © 2019 HashiCorp ⁄ 4
Traditional
Datacenter
“Static”
SYSTEMS OF RECORD SYSTEMS OF ENGAGEMENT
Dedicated
Infrastructure
Modern
Datacenter
“Dynamic”
AWS Azure GCP+ + +Private Cloud +
“Ticket-based” “Self-service”
Copyright © 2018 HashiCorp ⁄Copyright © 2018 HashiCorp ⁄ 5
The Cloud Landscape
DYNAMICSTATIC
Dedicated
vCenter CloudFormation
Resource
Manager
Cloud Deployment
Manager
vCenter
vSphere
EKS / ECS
Lambda
AKS / ACS
Azure Functions
GKE
Cloud Functions
vSphere
Various Hardware Proprietary Proprietary ProprietaryHardware
Identity:
AD/LDAP
Identity:
AWS IAM
Identity:
AzureAD
Identity:
GCP IAM
IP:
Hardware
Private Cloud AWS Azure GCP
Provision
Operations
Secure
Security
Run
Development
Connect
Networking
Copyright © 2018 HashiCorp ⁄Copyright © 2018 HashiCorp ⁄ 6
Cloud Networking With Consul
Connect
Networking
Private Cloud AWS Azure GCP
A Common Cloud Operating Model
USING CONSUL IN DYNAMIC INFRASTRUCTURE 7© 2019 HashiCorp
Market
trend from
monoliths to
microservices Single,
Physical Server
Dynamic Virtual
Machines
Smaller, Ephemeral
Containers
© 2018 HashiCorp
Dynamic Infrastructure
Service-based networking
The shift
from static
to dynamic
networking
Static Infrastructure
Host-based networking
USING CONSUL IN DYNAMIC INFRASTRUCTURE 8
© 2018 HashiCorpUSING CONSUL IN DYNAMIC INFRASTRUCTURE
Dynamic Infrastructure
Service-based networking
The shift
from static
to dynamic
networking
Private datacenters with static IPs, primarily
north-south traffic, protected by perimeter
security and coarse-grained network
segments.
Traditional Approach
▪ Static connectivity between services
▪ A fleet of load balancers to route traffic
▪ Ticket driven processes to update
network middleware
▪ Firewall rule sprawl to constrict access
and insecure flat network zones
Multiple clouds and private datacenters
with dynamic IPs, dominated by east-west
traffic, no clear network perimeters.
Consul Approach
▪ Centralized registry to locate any service
▪ Services discovered and connected with
centralized policies
▪ Network automated in service of
applications
▪ Zero trust network enforced by
identity-based security policies
Static Infrastructure
Host-based networking
9
© 2019 HashiCorpCONSUL PRINCIPLES 10
API Driven
Codify and automate service
definitions, health checks,
service authorization
policies, failover logic, and
more.
1 2 3
Consul
Principles
$ curl http://localhost:500/v1/kv/deployment
[
{
"LockIndex": 1,
"Session": "1c3f5836-4df4-0e26-6697-90dcce",
"Value": "Zm9v",
"Flags": 0,
"Key": "deployment",
"CreateIndex": 13,
"ModifyIndex": 19
}
]
TERMINAL
© 2019 HashiCorpCONSUL PRINCIPLES 11
Run and Connect
Anywhere
Connect services across any
runtime platform and public
or private cloud. Connect
services from Kubernetes to
VMs, Containers to
Serverless functions.
1 2 3
Consul
Principles
© 2019 HashiCorpCONSUL PRINCIPLES 12
Extend and
Integrate
▪ Provision clusters on any
infrastructure.
▪ Connect to services over
TLS via proxy
integrations.
▪ Serve TLS certificates with
pluggable Certificate
Authorities.
1 2 3
Consul
Principles
CHALLENGE SOLUTION RESULTS
Feature: Service Segmentation - Proxies
13© 2019 HashiCorpUSE CASE: SERVICE SEGMENTATION
Sidecar proxy to secure traffic
for any application
Consul provides sidecar proxies running alongside
applications to transparently wraps traffic in TLS and
enforces the intentions.
● No code modification required
● Minimal performance overhead
● Pluggable data plane: Built-in Layer 4 proxy,
native Envoy integration or other third-party
proxy integration
● Operational flexibility, decoupling security
concern from the application itself
© 2018 HashiCorp
Basic Configuration
14
CODE EDITOR
services {
name = "web"
port = 9090
connect {
sidecar_service {
port = 20000
proxy {
local_service_address = "127.0.0.1"
local_service_port = 9090
upstreams {
destination_name = "api"
local_bind_port = 8003
}
upstreams {
CODE EDITOR
Kind = "service-defaults"
Name = "web"
Protocol = "http"
Central Configuration
Centrally manage service mesh configuration
CODE EDITOR
Kind = "service-defaults"
Name = "web"
Protocol = "http"
Central Configuration
Centrally manage service mesh configuration
CODE EDITOR
{
"kind": "service-defaults",
"name": "web",
"protocol": "http"
}
Central Configuration
Centrally manage service mesh configuration
Central Configuration
Types of Configuration Entries
● Proxy Defaults - controls proxy configuration
● Service Defaults - configures defaults for all the instances of a service
● Service Router - defines where to send layer 7 traffic
● Service Splitter - defines how to divide requests for a single HTTP route
● Service Resolver - matches service instances with Consul upstreams
Central Configuration
Process
Traffic Routing
Traffic Routing
Route requests based on HTTP parameters
CODE EDITOR
kind = "service-router"
name = "api"
routes = [
{
match {
http {
path_prefix = "/v1"
}
}
destination {
service = "api-v1"
}
}
]
Traffic Shifting
Traffic Shifting
Percentage based traffic routing
CODE EDITOR
kind = "service-resolver"
name = "api"
subsets = {
v1 = {
filter = "Service.Meta.version == 1"
}
v2 = {
filter = "Service.Meta.version == 2"
}
}
CODE EDITOR
kind = "service-splitter",
name = "api"
splits = [
{
weight = 50,
service_subset = "v1"
},
{
weight = 50,
service_subset = "v2"
}
]
Multi-Cluster Gateways
Multi-Cluster Gateways
Cross cluster / cross cloud service routing
CODE EDITOR
Kind = "service-defaults"
Name = "api"
Protocol = "http"
MeshGateway = {
mode = "local"
}
Multi-Cluster Gateways
Cross cluster / cross cloud service routing
CODE EDITOR
Kind = "service-defaults"
Name = "api"
Protocol = "http"
MeshGateway = {
mode = "remote"
}
Multi-Cluster Gateways
Cross cluster / cross cloud service routing
Service Failover
Service Failover
Cross cluster / cross cloud service failover
CODE EDITOR
kind = "service-resolver"
name = "api"
failover = {
"*" = {
datacenters = ["dc2"]
}
}
Service Failover
Cross cluster / cross cloud service failover
Metrics / Tracing
CODE EDITOR
kind = "proxy-defaults"
name = "global"
config {
envoy_prometheus_bind_addr = "0.0.0.0:9102"
Metrics
Globally configuring Envoy metrics
CODE EDITOR
kind = "proxy-defaults"
name = "global"
config {
envoy_extra_static_clusters_json = {}
Envoy_tracing_json = {}
}
Tracing
Globally configuring Envoy tracing
CODE EDITOR
envoy_extra_static_clusters_json = <<EOL
{
"connect_timeout": "3.000s",
"dns_lookup_family": "V4_ONLY",
"lb_policy": "ROUND_ROBIN",
"load_assignment": {
"cluster_name": "jaeger_9411",
"endpoints": [
{
"lb_endpoints": [
{
"endpoint": {
"address": {
"socket_address": {
"address": "jaeger",
"port_value": 9411,
"protocol": "TCP"
}
}
}
}
]
}
]
},
"name": "jaeger_9411",
"type": "STRICT_DNS"
}
EOL
CODE EDITOR
envoy_tracing_json = <<EOL
{
"http": {
"config": {
"collector_cluster": "jaeger_9411",
"collector_endpoint": "/api/v2/spans"
},
"name": "envoy.zipkin"
}
}
EOL
www.hashicorp.com
hello@hashicorp.com
Thank you
40
nic@hashicorp.com
@sheriffjackson
© 2019 HashiCorp
https://github.com/nicholasjackson/
demo-consul-service-mesh
Examples:
41
© 2019 HashiCorp
https://discuss.hashicorp.com
Community Forum
42

More Related Content

PDF
Commodified IaC using Terraform Cloud
PPTX
Hands-On Terraform Module for AWS Landing Zone at HashiTalks2020
PPTX
Securing AWS Accounts with Hashi Vault
PDF
Multi-Cloud with Nomad and Consul Connect
PDF
Vault 1.5 Overview
PDF
Extending HashiCorp Nomad with Plugins
PPTX
Rein in Your Cloud Costs with Terraform and AWS Lambda
PDF
Vault 1.4 launch webinar
Commodified IaC using Terraform Cloud
Hands-On Terraform Module for AWS Landing Zone at HashiTalks2020
Securing AWS Accounts with Hashi Vault
Multi-Cloud with Nomad and Consul Connect
Vault 1.5 Overview
Extending HashiCorp Nomad with Plugins
Rein in Your Cloud Costs with Terraform and AWS Lambda
Vault 1.4 launch webinar

What's hot (12)

PDF
Rover: Implementing Landing Zone Using Docker Container
PDF
Vault Secrets Via API for the REST of Us
PPTX
Demystifying Terraform 012
PPTX
Secure and Convenient Workflows: Integrating HashiCorp Vault with Pivotal Clo...
PPTX
Delivering Secret Zero: Vault AppRole with Terraform and Chef
PPTX
Hashicorp Vault Open Source vs Enterprise
PDF
How to implement data encryption at rest in compliance with enterprise requir...
PDF
Secure Infrastructure Provisioning with Terraform Cloud, Vault + GitLab CI
PDF
Understanding the New Enterprise Multi-Cloud Backbone for DevOps Engineers
PDF
AWS Study Group - Chapter 01 - Introducing AWS [Solution Architect Associate ...
PDF
Multitenancy on EKS
PDF
Global Azure Bootcamp 2017 - Why I love S2D for MSSQL on Azure
Rover: Implementing Landing Zone Using Docker Container
Vault Secrets Via API for the REST of Us
Demystifying Terraform 012
Secure and Convenient Workflows: Integrating HashiCorp Vault with Pivotal Clo...
Delivering Secret Zero: Vault AppRole with Terraform and Chef
Hashicorp Vault Open Source vs Enterprise
How to implement data encryption at rest in compliance with enterprise requir...
Secure Infrastructure Provisioning with Terraform Cloud, Vault + GitLab CI
Understanding the New Enterprise Multi-Cloud Backbone for DevOps Engineers
AWS Study Group - Chapter 01 - Introducing AWS [Solution Architect Associate ...
Multitenancy on EKS
Global Azure Bootcamp 2017 - Why I love S2D for MSSQL on Azure
Ad

Similar to Consul 1.6: Layer 7 Traffic Management and Mesh Gateways (20)

PDF
Layer 7 Observability and Centralized Configuration with Consul Service Mesh
PDF
Getting Started with Kubernetes and Consul
PDF
MesosCon - Be a microservices hero
PPTX
F5 Meetup presentation automation 2017
PDF
Consul: Service Mesh for Microservices
PPTX
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
PDF
Resilient and Adaptable Systems with Cloud Native APIs
PDF
Unlocking the Cloud Operating Model
PDF
.NET Cloud-Native Bootcamp- Los Angeles
PDF
The Enterprise Service Bus is Dead! Long live the Enterprise Service Bus, Rim...
PPTX
Cloudify 4.6 highlights webinar
PDF
Banv meetup-contrail
PDF
Reference architectures shows a microservices deployed to Kubernetes
PDF
Easy integration of Bluemix services with your applications
PDF
Simplify Cloud Applications using Spring Cloud
PDF
Designing For Multicloud, CF Summit Frankfurt 2016
PPTX
Running your Spring Apps in the Cloud Javaone 2014
PDF
Confluent Operator as Cloud-Native Kafka Operator for Kubernetes
PDF
All About Microservices and OpenSource Microservice Frameworks
PDF
Cohesive Networks Support Docs: VNS3 version 3.5+ API Guide
Layer 7 Observability and Centralized Configuration with Consul Service Mesh
Getting Started with Kubernetes and Consul
MesosCon - Be a microservices hero
F5 Meetup presentation automation 2017
Consul: Service Mesh for Microservices
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
Resilient and Adaptable Systems with Cloud Native APIs
Unlocking the Cloud Operating Model
.NET Cloud-Native Bootcamp- Los Angeles
The Enterprise Service Bus is Dead! Long live the Enterprise Service Bus, Rim...
Cloudify 4.6 highlights webinar
Banv meetup-contrail
Reference architectures shows a microservices deployed to Kubernetes
Easy integration of Bluemix services with your applications
Simplify Cloud Applications using Spring Cloud
Designing For Multicloud, CF Summit Frankfurt 2016
Running your Spring Apps in the Cloud Javaone 2014
Confluent Operator as Cloud-Native Kafka Operator for Kubernetes
All About Microservices and OpenSource Microservice Frameworks
Cohesive Networks Support Docs: VNS3 version 3.5+ API Guide
Ad

More from Mitchell Pronschinske (20)

PDF
Code quality for Terraform
PDF
Dynamic Azure Credentials for Applications and CI/CD Pipelines
PPTX
Migrating from VMs to Kubernetes using HashiCorp Consul Service on Azure
PPTX
Empowering developers and operators through Gitlab and HashiCorp
PPTX
Automate and simplify multi cloud complexity with f5 and hashi corp
PPTX
Using new sentinel features in terraform cloud
PDF
Military Edge Computing with Vault and Consul
PDF
Unlocking the Cloud operating model with GitHub Actions
PDF
Vault 1.4 integrated storage overview
PPTX
Cisco ACI with HashiCorp Terraform (APAC)
PPTX
Governance for Multiple Teams Sharing a Nomad Cluster
PDF
Integrating Terraform and Consul
PPTX
Unlocking the Cloud Operating Model: Deployment
PPTX
Keeping a Secret with HashiCorp Vault
PPTX
Modern Scheduling for Modern Applications with Nomad
PPTX
Moving to a Microservice World: Leveraging Consul on Azure
PPTX
Remote Culture at HashiCorp
PPTX
Rapid Infrastructure in Hybrid Environments
PDF
Understanding Service Mesh on Azure with HashiCorp Consul
PDF
From Terraform OSS to Enterprise
Code quality for Terraform
Dynamic Azure Credentials for Applications and CI/CD Pipelines
Migrating from VMs to Kubernetes using HashiCorp Consul Service on Azure
Empowering developers and operators through Gitlab and HashiCorp
Automate and simplify multi cloud complexity with f5 and hashi corp
Using new sentinel features in terraform cloud
Military Edge Computing with Vault and Consul
Unlocking the Cloud operating model with GitHub Actions
Vault 1.4 integrated storage overview
Cisco ACI with HashiCorp Terraform (APAC)
Governance for Multiple Teams Sharing a Nomad Cluster
Integrating Terraform and Consul
Unlocking the Cloud Operating Model: Deployment
Keeping a Secret with HashiCorp Vault
Modern Scheduling for Modern Applications with Nomad
Moving to a Microservice World: Leveraging Consul on Azure
Remote Culture at HashiCorp
Rapid Infrastructure in Hybrid Environments
Understanding Service Mesh on Azure with HashiCorp Consul
From Terraform OSS to Enterprise

Recently uploaded (20)

PDF
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PDF
AutoCAD Professional Crack 2025 With License Key
PPTX
history of c programming in notes for students .pptx
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Nekopoi APK 2025 free lastest update
PDF
iTop VPN Crack Latest Version Full Key 2025
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PDF
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
PPTX
Computer Software and OS of computer science of grade 11.pptx
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
Patient Appointment Booking in Odoo with online payment
PDF
Design an Analysis of Algorithms II-SECS-1021-03
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
Why Generative AI is the Future of Content, Code & Creativity?
AutoCAD Professional Crack 2025 With License Key
history of c programming in notes for students .pptx
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Nekopoi APK 2025 free lastest update
iTop VPN Crack Latest Version Full Key 2025
Oracle Fusion HCM Cloud Demo for Beginners
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
Computer Software and OS of computer science of grade 11.pptx
Design an Analysis of Algorithms I-SECS-1021-03
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
CHAPTER 2 - PM Management and IT Context
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Monitoring Stack: Grafana, Loki & Promtail
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Patient Appointment Booking in Odoo with online payment
Design an Analysis of Algorithms II-SECS-1021-03

Consul 1.6: Layer 7 Traffic Management and Mesh Gateways

  • 1. © 2018 HashiCorp Consul L7 A multi-cloud service networking platform to connect and secure any service across any runtime platform and public or private cloud 1
  • 2. © 2018 HashiCorp Agenda 2 1. Background 2. Basic Configuration 3. Traffic Routing 4. Traffic Shifting 5. Multi-Cluster Gateways 6. Service Failover 7. Metrics / Tracing
  • 3. © 2018 HashiCorp 3 Background
  • 4. Copyright © 2019 HashiCorp ⁄ The Transition to Multi-Cloud Copyright © 2019 HashiCorp ⁄ 4 Traditional Datacenter “Static” SYSTEMS OF RECORD SYSTEMS OF ENGAGEMENT Dedicated Infrastructure Modern Datacenter “Dynamic” AWS Azure GCP+ + +Private Cloud + “Ticket-based” “Self-service”
  • 5. Copyright © 2018 HashiCorp ⁄Copyright © 2018 HashiCorp ⁄ 5 The Cloud Landscape DYNAMICSTATIC Dedicated vCenter CloudFormation Resource Manager Cloud Deployment Manager vCenter vSphere EKS / ECS Lambda AKS / ACS Azure Functions GKE Cloud Functions vSphere Various Hardware Proprietary Proprietary ProprietaryHardware Identity: AD/LDAP Identity: AWS IAM Identity: AzureAD Identity: GCP IAM IP: Hardware Private Cloud AWS Azure GCP Provision Operations Secure Security Run Development Connect Networking
  • 6. Copyright © 2018 HashiCorp ⁄Copyright © 2018 HashiCorp ⁄ 6 Cloud Networking With Consul Connect Networking Private Cloud AWS Azure GCP A Common Cloud Operating Model
  • 7. USING CONSUL IN DYNAMIC INFRASTRUCTURE 7© 2019 HashiCorp Market trend from monoliths to microservices Single, Physical Server Dynamic Virtual Machines Smaller, Ephemeral Containers
  • 8. © 2018 HashiCorp Dynamic Infrastructure Service-based networking The shift from static to dynamic networking Static Infrastructure Host-based networking USING CONSUL IN DYNAMIC INFRASTRUCTURE 8
  • 9. © 2018 HashiCorpUSING CONSUL IN DYNAMIC INFRASTRUCTURE Dynamic Infrastructure Service-based networking The shift from static to dynamic networking Private datacenters with static IPs, primarily north-south traffic, protected by perimeter security and coarse-grained network segments. Traditional Approach ▪ Static connectivity between services ▪ A fleet of load balancers to route traffic ▪ Ticket driven processes to update network middleware ▪ Firewall rule sprawl to constrict access and insecure flat network zones Multiple clouds and private datacenters with dynamic IPs, dominated by east-west traffic, no clear network perimeters. Consul Approach ▪ Centralized registry to locate any service ▪ Services discovered and connected with centralized policies ▪ Network automated in service of applications ▪ Zero trust network enforced by identity-based security policies Static Infrastructure Host-based networking 9
  • 10. © 2019 HashiCorpCONSUL PRINCIPLES 10 API Driven Codify and automate service definitions, health checks, service authorization policies, failover logic, and more. 1 2 3 Consul Principles $ curl http://localhost:500/v1/kv/deployment [ { "LockIndex": 1, "Session": "1c3f5836-4df4-0e26-6697-90dcce", "Value": "Zm9v", "Flags": 0, "Key": "deployment", "CreateIndex": 13, "ModifyIndex": 19 } ] TERMINAL
  • 11. © 2019 HashiCorpCONSUL PRINCIPLES 11 Run and Connect Anywhere Connect services across any runtime platform and public or private cloud. Connect services from Kubernetes to VMs, Containers to Serverless functions. 1 2 3 Consul Principles
  • 12. © 2019 HashiCorpCONSUL PRINCIPLES 12 Extend and Integrate ▪ Provision clusters on any infrastructure. ▪ Connect to services over TLS via proxy integrations. ▪ Serve TLS certificates with pluggable Certificate Authorities. 1 2 3 Consul Principles
  • 13. CHALLENGE SOLUTION RESULTS Feature: Service Segmentation - Proxies 13© 2019 HashiCorpUSE CASE: SERVICE SEGMENTATION Sidecar proxy to secure traffic for any application Consul provides sidecar proxies running alongside applications to transparently wraps traffic in TLS and enforces the intentions. ● No code modification required ● Minimal performance overhead ● Pluggable data plane: Built-in Layer 4 proxy, native Envoy integration or other third-party proxy integration ● Operational flexibility, decoupling security concern from the application itself
  • 14. © 2018 HashiCorp Basic Configuration 14
  • 15. CODE EDITOR services { name = "web" port = 9090 connect { sidecar_service { port = 20000 proxy { local_service_address = "127.0.0.1" local_service_port = 9090 upstreams { destination_name = "api" local_bind_port = 8003 } upstreams {
  • 16. CODE EDITOR Kind = "service-defaults" Name = "web" Protocol = "http" Central Configuration Centrally manage service mesh configuration
  • 17. CODE EDITOR Kind = "service-defaults" Name = "web" Protocol = "http" Central Configuration Centrally manage service mesh configuration
  • 18. CODE EDITOR { "kind": "service-defaults", "name": "web", "protocol": "http" } Central Configuration Centrally manage service mesh configuration
  • 19. Central Configuration Types of Configuration Entries ● Proxy Defaults - controls proxy configuration ● Service Defaults - configures defaults for all the instances of a service ● Service Router - defines where to send layer 7 traffic ● Service Splitter - defines how to divide requests for a single HTTP route ● Service Resolver - matches service instances with Consul upstreams
  • 22. Traffic Routing Route requests based on HTTP parameters
  • 23. CODE EDITOR kind = "service-router" name = "api" routes = [ { match { http { path_prefix = "/v1" } } destination { service = "api-v1" } } ]
  • 26. CODE EDITOR kind = "service-resolver" name = "api" subsets = { v1 = { filter = "Service.Meta.version == 1" } v2 = { filter = "Service.Meta.version == 2" } }
  • 27. CODE EDITOR kind = "service-splitter", name = "api" splits = [ { weight = 50, service_subset = "v1" }, { weight = 50, service_subset = "v2" } ]
  • 29. Multi-Cluster Gateways Cross cluster / cross cloud service routing
  • 30. CODE EDITOR Kind = "service-defaults" Name = "api" Protocol = "http" MeshGateway = { mode = "local" } Multi-Cluster Gateways Cross cluster / cross cloud service routing
  • 31. CODE EDITOR Kind = "service-defaults" Name = "api" Protocol = "http" MeshGateway = { mode = "remote" } Multi-Cluster Gateways Cross cluster / cross cloud service routing
  • 33. Service Failover Cross cluster / cross cloud service failover
  • 34. CODE EDITOR kind = "service-resolver" name = "api" failover = { "*" = { datacenters = ["dc2"] } } Service Failover Cross cluster / cross cloud service failover
  • 36. CODE EDITOR kind = "proxy-defaults" name = "global" config { envoy_prometheus_bind_addr = "0.0.0.0:9102" Metrics Globally configuring Envoy metrics
  • 37. CODE EDITOR kind = "proxy-defaults" name = "global" config { envoy_extra_static_clusters_json = {} Envoy_tracing_json = {} } Tracing Globally configuring Envoy tracing
  • 38. CODE EDITOR envoy_extra_static_clusters_json = <<EOL { "connect_timeout": "3.000s", "dns_lookup_family": "V4_ONLY", "lb_policy": "ROUND_ROBIN", "load_assignment": { "cluster_name": "jaeger_9411", "endpoints": [ { "lb_endpoints": [ { "endpoint": { "address": { "socket_address": { "address": "jaeger", "port_value": 9411, "protocol": "TCP" } } } } ] } ] }, "name": "jaeger_9411", "type": "STRICT_DNS" } EOL
  • 39. CODE EDITOR envoy_tracing_json = <<EOL { "http": { "config": { "collector_cluster": "jaeger_9411", "collector_endpoint": "/api/v2/spans" }, "name": "envoy.zipkin" } } EOL