Documentation
¶
Overview ¶
Package config is a generated protocol buffer package.
It is generated from these files:
mixer/adapter/kubernetes/config/config.proto
It has these top-level messages:
Params
Index ¶
- Variables
- type Params
- func (*Params) Descriptor() ([]byte, []int)
- func (m *Params) Marshal() (dAtA []byte, err error)
- func (m *Params) MarshalTo(dAtA []byte) (int, error)
- func (*Params) ProtoMessage()
- func (m *Params) Reset()
- func (m *Params) Size() (n int)
- func (this *Params) String() string
- func (m *Params) Unmarshal(dAtA []byte) error
Constants ¶
This section is empty.
Variables ¶
var ( ErrInvalidLengthConfig = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflowConfig = fmt.Errorf("proto: integer overflow") )
Functions ¶
This section is empty.
Types ¶
type Params ¶
type Params struct { // File path to discover kubeconfig. For in-cluster configuration, // this should be left unset. For local configuration, this should // be set to the path of a kubeconfig file that can be used to // reach a kubernetes API server. // // NOTE: The kubernetes adapter will use the value of the env var // KUBECONFIG in the case where it is set (overriding any value configured // through this proto). // // Default: "" (unset) KubeconfigPath string `protobuf:"bytes,1,opt,name=kubeconfig_path,json=kubeconfigPath,proto3" json:"kubeconfig_path,omitempty"` // Controls the resync period of the kubernetes cluster info cache. // The cache will watch for events and every so often completely resync. // This controls how frequently the complete resync occurs. // // Default: 5 minutes CacheRefreshDuration time.Duration `protobuf:"bytes,2,opt,name=cache_refresh_duration,json=cacheRefreshDuration,stdduration" json:"cache_refresh_duration"` // Configures how the UID for the source pod for traffic is identified // in the input map. // // Default: sourceUID SourceUidInputName string `protobuf:"bytes,3,opt,name=source_uid_input_name,json=sourceUidInputName,proto3" json:"source_uid_input_name,omitempty"` // Configures how the UID for the destination pod for traffic is identified // in the input map. // // Default: destinationUID DestinationUidInputName string `` /* 134-byte string literal not displayed */ // Configures how the UID for the origin pod for traffic is identified // in the input map. // // Default: originUID OriginUidInputName string `protobuf:"bytes,5,opt,name=origin_uid_input_name,json=originUidInputName,proto3" json:"origin_uid_input_name,omitempty"` // Configures how the IP for the source pod for traffic is identified // in the input map. // // Default: sourceIP SourceIpInputName string `protobuf:"bytes,20,opt,name=source_ip_input_name,json=sourceIpInputName,proto3" json:"source_ip_input_name,omitempty"` // Configures how the IP for the destination pod for traffic is identified // in the input map. // // Default: destinationIP DestinationIpInputName string `` /* 132-byte string literal not displayed */ // Configures how the IP for the origin pod for traffic is identified // in the input map. // // Default: originIP OriginIpInputName string `protobuf:"bytes,23,opt,name=origin_ip_input_name,json=originIpInputName,proto3" json:"origin_ip_input_name,omitempty"` // Configures the cluster domain name to use for service name normalization. // // Default: svc.cluster.local ClusterDomainName string `protobuf:"bytes,18,opt,name=cluster_domain_name,json=clusterDomainName,proto3" json:"cluster_domain_name,omitempty"` // In order to extract the service associated with a source, destination, or // origin, this adapter relies on pod labels. In particular, it looks for // the value of a specific label, as specified by this parameter. // // Default: app PodLabelForService string `protobuf:"bytes,6,opt,name=pod_label_for_service,json=podLabelForService,proto3" json:"pod_label_for_service,omitempty"` // In order to extract the service associated with a source, destination, or // origin, this adapter relies on pod labels. In particular, it looks for // the value of a specific label for istio component services, as specified // by this parameter. // // Default: istio PodLabelForIstioComponentService string `` /* 166-byte string literal not displayed */ // The prefix used for source pod output value names. // // Default: source SourcePrefix string `protobuf:"bytes,7,opt,name=source_prefix,json=sourcePrefix,proto3" json:"source_prefix,omitempty"` // The prefix used for destination pod output value names. // // Default: destination DestinationPrefix string `protobuf:"bytes,8,opt,name=destination_prefix,json=destinationPrefix,proto3" json:"destination_prefix,omitempty"` // The prefix used for origin pod output value names. // // Default: origin OriginPrefix string `protobuf:"bytes,9,opt,name=origin_prefix,json=originPrefix,proto3" json:"origin_prefix,omitempty"` // The value name for the pod labels output value. // // Default: Labels LabelsValueName string `protobuf:"bytes,10,opt,name=labels_value_name,json=labelsValueName,proto3" json:"labels_value_name,omitempty"` // The value name for the pod name output value. // // Default: PodName PodNameValueName string `protobuf:"bytes,11,opt,name=pod_name_value_name,json=podNameValueName,proto3" json:"pod_name_value_name,omitempty"` // The value name for the pod ip address output value. // // Default: PodIP PodIpValueName string `protobuf:"bytes,12,opt,name=pod_ip_value_name,json=podIpValueName,proto3" json:"pod_ip_value_name,omitempty"` // The value name for the pod host ip address output value. // // Default: HostIP HostIpValueName string `protobuf:"bytes,13,opt,name=host_ip_value_name,json=hostIpValueName,proto3" json:"host_ip_value_name,omitempty"` // The value name for the pod namespace output value. // // Default: Namespace NamespaceValueName string `protobuf:"bytes,14,opt,name=namespace_value_name,json=namespaceValueName,proto3" json:"namespace_value_name,omitempty"` // The value name for the pod service account name output value. // // Default: ServiceAccountName ServiceAccountValueName string `` /* 135-byte string literal not displayed */ // The value name for the service output value. // // Default: Service ServiceValueName string `protobuf:"bytes,16,opt,name=service_value_name,json=serviceValueName,proto3" json:"service_value_name,omitempty"` // Whether or not to execute source and origin value lookup // for Mixer requests when Istio ingress is the destination // service. // // Default: false LookupIngressSourceAndOriginValues bool `` /* 173-byte string literal not displayed */ // Istio ingress service string. This is used to identify the // ingress service in requests. // // Default: "ingress.istio-system.svc.cluster.local" FullyQualifiedIstioIngressServiceName string `` /* 181-byte string literal not displayed */ }
Configuration parameters for the kubernetes adapter. These params control the manner in which the kubernetes adapter discovers and generates values related to pod information.
The adapter works by looking up pod information by UIDs (of the form: "kubernetes://pod.namespace"). It expects that the UIDs will be supplied in an input map for three distinct traffic classes (source, destination, and origin).
For all valid UIDs supplied, this adapter generates a map of output values containing information about the related pods. The generated map is keyed by value names generated by concatenating a pod identifier prefix with a value name. For example, for the pod corresponding to a sourceUID and the output value of pod ip, this adapter will output a map that includes a key of "sourcePodIP" (assuming parameter defaults).
func (*Params) Descriptor ¶
func (*Params) ProtoMessage ¶
func (*Params) ProtoMessage()