package istio.workload

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message Address

workload.proto:45

Address represents a unique address. Address joins two sub-resources, Workload and Service, to support querying by IP address. Address is intended to be able to be looked up on-demand, allowing a client to answer a question like "what is this IP address", similar to a reverse DNS lookup. Each resource will have a mesh-wide unique opaque name, defined in the individual messages. In addition, to support lookup by IP address, they will have *alias* names for each IP the resource represents. There may be multiple aliases for the same resource (examples: service in multiple networks, or a dual-stack workload). Aliases are keyed by network/IP address. Example: "default/1.2.3.4". In some cases, we do not know the IP address of a Workload. For instance, we may simply know that there is a workload behind a gateway, and rely on the gateway to handle the rest. In this case, the key format will be "resource-uid". The resource can be a Pod, WorkloadEntry, etc. These resources cannot be looked up on-demand. In some cases, we do not know the IP address of a Service. These services cannot be used for matching outbound traffic, as we only have L4 attributes to route based on. However, they can be used for Gateways. In this case, the key format will be "network/hostname". These resources cannot be looked up on-demand.

message ApplicationTunnel

workload.proto:324

ApplicationProtocol specifies a workload (application or gateway) can consume tunnel information.

Used in: Workload

enum ApplicationTunnel.Protocol

workload.proto:325

Used in: ApplicationTunnel

message Extension

workload.proto:375

Extension provides a mechanism to attach arbitrary additional configuration to an object.

Used in: Service, Workload

message GatewayAddress

workload.proto:345

GatewayAddress represents the address of a gateway

Used in: Service, Workload

enum IPFamilies

workload.proto:94

Used in: Service

message LoadBalancing

workload.proto:114

Used in: Service

enum LoadBalancing.HealthPolicy

workload.proto:147

Used in: LoadBalancing

enum LoadBalancing.Mode

workload.proto:130

Used in: LoadBalancing

enum LoadBalancing.Scope

workload.proto:115

Used in: LoadBalancing

message Locality

workload.proto:280

Used in: Workload

message NamespacedHostname

workload.proto:367

NamespacedHostname represents a service bound to a specific namespace.

Used in: GatewayAddress

message NetworkAddress

workload.proto:359

NetworkAddress represents an address bound to a specific network.

Used in: GatewayAddress, Service

enum NetworkMode

workload.proto:106

NetworkMode indicates how the addresses of the workload should be treated.

Used in: Workload

message Port

workload.proto:305

Used in: PortList, Service

message PortList

workload.proto:301

PorList represents the ports for a service

Used in: Workload

message Service

workload.proto:58

Service represents a service - a group of workloads that can be accessed together. The xds primary key is "namespace/hostname". Secondary (alias) keys are the unique `network/IP` pairs that the service can be reached at.

Used in: Address

enum TunnelProtocol

workload.proto:313

TunnelProtocol indicates the tunneling protocol for requests.

Used in: Workload

message Workload

workload.proto:166

Workload represents a workload - an endpoint (or collection behind a hostname). The xds primary key is "uid" as defined on the workload below. Secondary (alias) keys are the unique `network/IP` pairs that the workload can be reached at.

Used in: Address

enum WorkloadStatus

workload.proto:286

Used in: Workload

enum WorkloadType

workload.proto:293

Used in: Workload