Consul
MeshService resource configuration reference
This topic provides full details about the MeshService resource.
Introduction
A MeshService is a resource in the Kubernetes cluster that enables Kubernetes configuration models, such as HTTPRoute and TCPRoute, to reference services that only exist in Consul.
A MeshService represents a service in the Consul service mesh outside the Kubernetes cluster where Consul API Gateway is deployed.
The service represented by the MeshService resource must either be in the same Consul datacenter as the Kubernetes cluster or imported from a peered Consul cluster.
Configuration Model
The following outline shows how to format the configurations in the MeshService object. Click on a property name to view details about the configuration.
Specification
This topic provides details about the configuration parameters.
name
Specifies the name of the service in the Consul service mesh to send traffic to.
- Type: string
- Required: required
peer
Specifies the name of the peered Consul cluster that exported the service. If not specified, Consul defaults to the local datacenter.
You must apply a ServiceResolver for the referenced service. The ServiceResolver configuration entry enables Consul to resolve routes to upstream service instances.
- Type: string
- Required: optional
Example Configuration
The following example creates a mesh service called example-mesh-service. Routes that use example-mesh-service as a backend route traffic to the Consul service in the local datacenter named echo.
meshservice.yaml
apiVersion: api-gateway.consul.hashicorp.com/v1alpha1
kind: MeshService
metadata:
name: example-mesh-service
spec:
name: echo