import "istio.io/istio/pilot/pkg/serviceregistry/kube"
conversion.go deregister.go register.go
const ( // IngressClassAnnotation is the annotation on ingress resources for the class of controllers // responsible for it IngressClassAnnotation = "kubernetes.io/ingress.class" // TODO: move to API // The value for this annotation is a set of key value pairs (node labels) // that can be used to select a subset of nodes from the pool of k8s nodes // It is used for multi-cluster scenario, and with nodePort type gateway service. NodeSelectorAnnotation = "traffic.istio.io/nodeSelector" )
func DeRegisterEndpoint(client kubernetes.Interface, namespace string, svcName string, ip string) error
DeRegisterEndpoint removes the endpoint (and the service if it already exists) from Kubernetes. It creates or updates as needed.
func ExternalNameServiceInstances(k8sSvc *coreV1.Service, svc *model.Service) []*model.ServiceInstance
KeyFunc is the internal API key function that returns "namespace"/"name" or "name" if "namespace" is empty
PodTLSMode returns the tls mode associated with the pod if pod has been injected with sidecar
func RegisterEndpoint(client kubernetes.Interface, namespace string, svcName string, ip string, portsList []NamedPort, labels []string, annotations []string) error
RegisterEndpoint registers the endpoint (and the service if it doesn't already exists). It creates or updates as needed. When creating it adds the optional labels.
SecureNamingSAN creates the secure naming used for SAN verification from pod metadata
ServiceHostname produces FQDN for a k8s service
SplitKey returns namespace and name
NamedPort defines the Port and Name tuple needed for services and endpoints.
Str2NamedPort parses a proto:port string into a namePort struct.
Path | Synopsis |
---|---|
controller |
Package kube imports 17 packages (graph) and is imported by 6 packages. Updated 2021-01-25. Refresh now. Tools for package owners.