mesh_workload.proto

Package : discovery.zephyr.solo.io

Top

mesh_workload.proto

Table of Contents

MeshWorkloadSpec

The MeshWorkload is an abstraction for a workload/client which we have discovered to be part of a given mesh. The Mesh object has references to the MeshWorkloads which belong to it.

Field Type Label Description
kubeController MeshWorkloadSpec.KubeController The controller (e.g. deployment) that owns this workload
mesh core.zephyr.solo.io.ResourceRef The mesh with which this workload is associated
appmesh MeshWorkloadSpec.Appmesh Appmesh specific metadata

MeshWorkloadSpec.Appmesh

Field Type Label Description
virtualNodeName string The value of the env var APPMESH_VIRTUAL_NODE_NAME on the Appmesh envoy proxy container
ports []MeshWorkloadSpec.Appmesh.ContainerPort repeated Needed for declaring Appmesh VirtualNode listeners

MeshWorkloadSpec.Appmesh.ContainerPort

k8s application container ports

Field Type Label Description
port uint32
protocol string

MeshWorkloadSpec.KubeController

Field Type Label Description
kubeControllerRef core.zephyr.solo.io.ResourceRef Resource ref to the underlying kubernetes controller which is managing the pods associated with the workloads. It has the generic name kube_controller as it can represent either a deployment or a daemonset. Or potentially any other kubernetes object which creates injected pods.
labels []MeshWorkloadSpec.KubeController.LabelsEntry repeated these are the labels directly from the pods that this controller owns NB: these are NEITHER the matchLabels nor the labels on the controller itself. we need these to determine which services are backed by this workload, and the service backing is determined by the pod labels.
serviceAccountName string Service account attached to the pods owned by this controller

MeshWorkloadSpec.KubeController.LabelsEntry

Field Type Label Description
key string
value string

MeshWorkloadStatus