Registered Service
Tetrate Service Express (TSE) utilizes many of the same components as the Tetrate Service Bridge(TSB) product but has the several distinctions. Go to Comparing TSE and TSB for more details.
Services in the registry represent logically a service that can be running in different compute platforms and different locations. The same service could be running on different Kubernetes clusters at the same time, on VMS, etc. A service in the registry represents an aggregated and logical view for all those individual services, and provides high-level features such as aggregated metrics.
Port
Port exposed by a service. Registration RPC will complete the instances field by assigning the physical services FQNs.
Field | Description | Validation Rule |
---|---|---|
number | uint32 | uint32 = { |
name | string | – |
serviceDeployments | List of string | – |
Service
A service in the registry that represents an aggregated and logical view for all those individual services, and provides high-level features such as aggregated metrics.
Field | Description | Validation Rule |
---|---|---|
fqn | string | – |
displayName | string | – |
etag | string | – |
description | string | – |
shortName | string | string = { |
hostnames | List of string | – |
ports | List of tetrateio.api.tsb.registry.v2.Port | – |
subsets | List of string | – |
serviceType | tetrateio.api.tsb.registry.v2.ServiceType | enum = { |
externalAddresses | List of string | – |
state | tetrateio.api.tsb.registry.v2.State | enum = { |
metrics | List of tetrateio.api.tsb.registry.v2.Service.MetricConfig
This is only available for Observed and Controlled services. | – |
serviceDeployments | List of tetrateio.api.tsb.registry.v2.Service.ServiceDeployment | – |
subsetDeployments | List of tetrateio.api.tsb.registry.v2.Subset | – |
canonicalName | string | – |
spiffeIds | List of string | – |
MetricConfig
Configuration for metric aggregation
Field | Description | Validation Rule |
---|---|---|
name | string | – |
description | string | – |
aggregationKey | string | – |
type | tetrateio.api.tsb.registry.v2.Service.MetricConfig.MetricType | – |
serviceDeployment | string | – |
parentMetric | string | – |
ServiceDeployment
ServiceDeployment represents the physical service in a cluster.
Field | Description | Validation Rule |
---|---|---|
fqn | string | – |
source | string | – |
Subset
Subset exposed by a service. Registration RPC will complete the instances field by assigning the physical services FQNs.
Field | Description | Validation Rule |
---|---|---|
name | string | – |
serviceDeployments | List of string | – |
MetricType
MetricType denotes the relation of a metrics with a physical service instance.
Field | Number | Description |
---|---|---|
INVALID | 0 | |
SINGLE_INSTANCE | 1 | A single instance metric config belongs to an specific physical service instance. |
SUBSET | 2 | A subset metric config represents subsets across clusters or hostnames across clusters. |
GLOBAL | 3 | A global metric config represents all the physical services. |
ENDPOINT | 4 | An endpoint metric config represents an endpoint across clusters. |
ENDPOINT_INSTANCE | 5 | An endpoint instance metric config represents an endpoint in a specific cluster. |
ServiceType
ServiceType denotes the exposition of a service in the mesh.
Field | Number | Description |
---|---|---|
INVALID_TYPE | 0 | |
INTERNAL | 1 | A regular service that is not directly exposed to the outside world. |
LOADBALANCER | 2 | A load balancer service running only the proxy as the workload. |
MESH_EXTERNAL | 3 | A mesh external service. |
State
State denotes how deep is the knowledge of a service by the mesh. Meaning that if a service can be controlled, observed or none of these.
Field | Number | Description |
---|---|---|
INVALID_STATE | 0 | |
EXTERNAL | 1 | An external service is a service that is known, but that cannot be observed (we can't get metrics for it) and cannot be controlled. |
OBSERVED | 2 | An observed service is a known service that we can have metrics for. For example, a service running the Skywalking agents. |
CONTROLLED | 3 | A controlled service is a service that is part of the mesh and has a proxy we can configure. |