Documentation ¶
Overview ¶
Package v2 contains API Schema definitions for the maistra v2 API group +k8s:deepcopy-gen=package,register +groupName=maistra.io
Index ¶
- Constants
- Variables
- type AddonsConfig
- type Affinity
- type AutoScalerConfig
- type CertManagerCertificateAuthorityConfig
- type CertificateAuthorityConfig
- type CertificateAuthorityType
- type ClusterIngressGatewayConfig
- type CommonContainerConfig
- type CommonDeploymentRuntimeConfig
- type CommonPodRuntimeConfig
- type ComponentIngressConfig
- type ComponentLogLevels
- type ComponentPersistenceConfig
- type ComponentRuntimeConfig
- type ComponentServiceConfig
- type ContainerConfig
- type ControlPlaneCertProviderType
- type ControlPlaneClusterConfig
- type ControlPlaneComponentName
- type ControlPlaneRuntimeConfig
- type ControlPlaneSecurityConfig
- type ControlPlaneSpec
- func (in *ControlPlaneSpec) DeepCopy() *ControlPlaneSpec
- func (in *ControlPlaneSpec) DeepCopyInto(out *ControlPlaneSpec)
- func (s ControlPlaneSpec) IsClusterScoped() (bool, error)
- func (s ControlPlaneSpec) IsGrafanaEnabled() bool
- func (s ControlPlaneSpec) IsJaegerEnabled() bool
- func (s ControlPlaneSpec) IsKialiEnabled() bool
- func (s ControlPlaneSpec) IsPrometheusEnabled() bool
- type ControlPlaneStatus
- type ControlPlaneTLSConfig
- type CustomCertificateAuthorityConfig
- type DataPlaneSecurityConfig
- type DatadogTracerConfig
- type DefaultRuntimeConfig
- type DeploymentRuntimeConfig
- type EgressGatewayConfig
- type Enablement
- type EnvoyComponent
- type EnvoyServiceClientTLSSettings
- type EnvoyServiceTCPKeepalive
- type GatewayConfig
- type GatewayServiceConfig
- type GatewayVolume
- type GatewaysConfig
- type GeneralConfig
- type GrafanaAddonConfig
- type GrafanaConfig
- type GrafanaInstallConfig
- type GrafanaSecurityConfig
- type IdentityConfig
- type IdentityConfigType
- type IngressGatewayConfig
- type IstioCertificateSignerType
- type IstioPrivateKeyCertificateSignerConfig
- type IstioSelfSignedCertificateSignerConfig
- type IstiodCertificateAuthorityConfig
- type JaegerAddonConfig
- type JaegerElasticsearchStorageConfig
- type JaegerIngressConfig
- type JaegerInstallConfig
- type JaegerMemoryStorageConfig
- type JaegerStorageConfig
- type JaegerStorageType
- type KialiAddonConfig
- type KialiDashboardConfig
- type KialiDeploymentConfig
- type KialiInstallConfig
- type LightstepTracerConfig
- type LogLevel
- type LoggingConfig
- type MeshEndpointConfig
- type MeshExpansionConfig
- type MeshGatewayConfig
- type MeshNetworkConfig
- type MetadataConfig
- type MixerPolicyAdaptersConfig
- type MixerPolicyConfig
- type MixerTelemetryAdaptersConfig
- type MixerTelemetryConfig
- type MixerTelemetryStdioConfig
- type MultiClusterConfig
- type OpenShiftRouteConfig
- type PodAntiAffinity
- type PodAntiAffinityTerm
- type PodDisruptionBudget
- type PodRuntimeConfig
- type PolicyConfig
- type PolicyType
- type PrometheusAddonConfig
- type PrometheusInstallConfig
- type ProxyAccessLoggingConfig
- type ProxyConfig
- type ProxyDNSConfig
- type ProxyEnvoyServiceConfig
- type ProxyFileAccessLogConfig
- type ProxyInboundTrafficControlConfig
- type ProxyInitContainerConfig
- type ProxyInjectionConfig
- type ProxyLoggingConfig
- type ProxyNetworkAutoProtocolDetectionConfig
- type ProxyNetworkInitConfig
- type ProxyNetworkInitType
- type ProxyNetworkInterceptionMode
- type ProxyNetworkProtocolConfig
- type ProxyNetworkingConfig
- type ProxyOutboundTrafficControlConfig
- type ProxyOutboundTrafficPolicy
- type ProxyReadinessConfig
- type ProxyRuntimeConfig
- type ProxyTrafficControlConfig
- type ReadinessMap
- type ReadinessStatus
- type RemotePolicyConfig
- type RemoteTelemetryConfig
- type RouterModeType
- type SecretDiscoveryService
- type SecurityConfig
- type ServiceMeshControlPlane
- type ServiceMeshControlPlaneList
- type StackdriverAccessLogTelemetryConfig
- type StackdriverAddonConfig
- type StackdriverAuthConfig
- type StackdriverTelemetryConfig
- type StackdriverTracerConfig
- type TelemetryBatchingConfig
- type TelemetryConfig
- type TelemetryLoadSheddingConfig
- type TelemetryType
- type ThirdPartyIdentityConfig
- type ThreeScaleAddonConfig
- type ThreeScaleBackendConfig
- type ThreeScaleClientConfig
- type ThreeScaleGRPCConfig
- type ThreeScaleMetricsConfig
- type ThreeScaleSystemConfig
- type TracerType
- type TracingConfig
- type TrustConfig
- type VolumeConfig
- type ZipkinTracerConfig
Constants ¶
const ( // APIGroup for maistr.io APIGroup = "maistra.io" // APIVersion for v2 APIVersion = "v2" )
const ( ControlPlaneModeKey = "controlPlaneMode" ControlPlaneModeValueClusterScoped = "ClusterScoped" ControlPlaneModeValueMultiTenant = "MultiTenant" )
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: APIGroup, Version: APIVersion} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
var ControlPlaneComponentNames = []ControlPlaneComponentName{ ControlPlaneComponentNameSecurity, ControlPlaneComponentNameGalley, ControlPlaneComponentNamePilot, ControlPlaneComponentNameMixer, ControlPlaneComponentNameMixerPolicy, ControlPlaneComponentNameMixerTelemetry, ControlPlaneComponentNameGlobalOauthProxy, ControlPlaneComponentNameSidecarInjectoryWebhook, ControlPlaneComponentNameTracing, ControlPlaneComponentNameTracingJaeger, ControlPlaneComponentNameTracingJaegerElasticsearch, ControlPlaneComponentNameTracingJaegerAgent, ControlPlaneComponentNameTracingJaegerAllInOne, ControlPlaneComponentNameTracingJaegerCollector, ControlPlaneComponentNameTracingJaegerQuery, ControlPlaneComponentNamePrometheus, ControlPlaneComponentNameKiali, ControlPlaneComponentNameGrafana, ControlPlaneComponentNameThreeScale, ControlPlaneComponentNameWASMCacher, ControlPlaneComponentNameRateLimiting, }
ControlPlaneComponentNames - supported runtime components
Functions ¶
This section is empty.
Types ¶
type AddonsConfig ¶
type AddonsConfig struct { // Prometheus configures Prometheus specific addon capabilities Prometheus *PrometheusAddonConfig `json:"prometheus,omitempty"` // Stackdriver configures Stackdriver specific addon capabilities Stackdriver *StackdriverAddonConfig `json:"stackdriver,omitempty"` // Jaeger configures Jaeger specific addon capabilities Jaeger *JaegerAddonConfig `json:"jaeger,omitempty"` // Grafana configures a grafana instance to use with the mesh // .Values.grafana.enabled, true if not null // +optional Grafana *GrafanaAddonConfig `json:"grafana,omitempty"` // Kiali configures a kiali instance to use with the mesh // .Values.kiali.enabled, true if not null // +optional Kiali *KialiAddonConfig `json:"kiali,omitempty"` // ThreeScale configures the 3scale adapter // +optional ThreeScale *ThreeScaleAddonConfig `json:"3scale,omitempty"` }
AddonsConfig configures additional features for use with the mesh
func (*AddonsConfig) DeepCopy ¶
func (in *AddonsConfig) DeepCopy() *AddonsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonsConfig.
func (*AddonsConfig) DeepCopyInto ¶
func (in *AddonsConfig) DeepCopyInto(out *AddonsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Affinity ¶
type Affinity struct { // +optional NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty"` // +optional PodAffinity *corev1.PodAffinity `json:"podAffinity,omitempty"` // XXX: use corev1.PodAntiAffinity instead, the only things not supported are namespaces and weighting // +optional PodAntiAffinity PodAntiAffinity `json:"podAntiAffinity,omitempty"` }
Affinity is the structure used by Istio for specifying Pod affinity XXX: istio does not support full corev1.Affinity settings, hence the special types here.
func (*Affinity) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Affinity.
func (*Affinity) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoScalerConfig ¶
type AutoScalerConfig struct { Enablement `json:",inline"` // lower limit for the number of pods that can be set by the autoscaler, default 1. // +optional MinReplicas *int32 `json:"minReplicas,omitempty"` // upper limit for the number of pods that can be set by the autoscaler; cannot be smaller than MinReplicas. // +optional MaxReplicas *int32 `json:"maxReplicas,omitempty"` // target average CPU utilization (represented as a percentage of requested CPU) over all the pods; // if not specified the default autoscaling policy will be used. // +optional TargetCPUUtilizationPercentage *int32 `json:"targetCPUUtilizationPercentage,omitempty"` }
AutoScalerConfig is used to configure autoscaling for a deployment
func (*AutoScalerConfig) DeepCopy ¶
func (in *AutoScalerConfig) DeepCopy() *AutoScalerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScalerConfig.
func (*AutoScalerConfig) DeepCopyInto ¶
func (in *AutoScalerConfig) DeepCopyInto(out *AutoScalerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertManagerCertificateAuthorityConfig ¶
type CertManagerCertificateAuthorityConfig struct { // Address is the grpc address for an Istio compatible certificate authority endpoint. // .Values.global.caAddress Address string `json:"address,omitempty"` PilotCertSecretName string `json:"pilotSecretName,omitempty"` RootCAConfigMapName string `json:"rootCAConfigMapName,omitempty"` }
func (*CertManagerCertificateAuthorityConfig) DeepCopy ¶
func (in *CertManagerCertificateAuthorityConfig) DeepCopy() *CertManagerCertificateAuthorityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertManagerCertificateAuthorityConfig.
func (*CertManagerCertificateAuthorityConfig) DeepCopyInto ¶
func (in *CertManagerCertificateAuthorityConfig) DeepCopyInto(out *CertManagerCertificateAuthorityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertificateAuthorityConfig ¶
type CertificateAuthorityConfig struct { // Type is the certificate authority to use. Type CertificateAuthorityType `json:"type,omitempty"` // Istiod is the configuration for Istio's internal certificate authority implementation. // each of these produces a CAEndpoint, i.e. CA_ADDR // +optional Istiod *IstiodCertificateAuthorityConfig `json:"istiod,omitempty"` // Custom is the configuration for a custom certificate authority. // +optional Custom *CustomCertificateAuthorityConfig `json:"custom,omitempty"` CertManager *CertManagerCertificateAuthorityConfig `json:"cert-manager,omitempty"` }
CertificateAuthorityConfig configures the certificate authority implementation used by the control plane.
func (*CertificateAuthorityConfig) DeepCopy ¶
func (in *CertificateAuthorityConfig) DeepCopy() *CertificateAuthorityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateAuthorityConfig.
func (*CertificateAuthorityConfig) DeepCopyInto ¶
func (in *CertificateAuthorityConfig) DeepCopyInto(out *CertificateAuthorityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertificateAuthorityType ¶
type CertificateAuthorityType string
CertificateAuthorityType represents the type of CertificateAuthority implementation.
const ( // CertificateAuthorityTypeIstiod represents Istio's internal certificate authority implementation CertificateAuthorityTypeIstiod CertificateAuthorityType = "Istiod" // CertificateAuthorityTypeCustom represents a custom certificate authority implementation CertificateAuthorityTypeCustom CertificateAuthorityType = "Custom" // CertificateAuthorityTypeCertManager represents a cert-manager istio-csr certificate authority implementation CertificateAuthorityTypeCertManager CertificateAuthorityType = "cert-manager" )
type ClusterIngressGatewayConfig ¶
type ClusterIngressGatewayConfig struct { IngressGatewayConfig `json:",inline"` // .Values.global.k8sIngress.enabled // implies the following: // .Values.global.k8sIngress.gatewayName will match the ingress gateway // .Values.global.k8sIngress.enableHttps will be true if gateway service exposes port 443 // XXX: not sure whether or not this is specific to multicluster, mesh expansion, or both // +optional IngressEnabled *bool `json:"ingress,omitempty"` // MeshExpansionPorts define the port set used with multi-cluster/mesh expansion // +optional MeshExpansionPorts []corev1.ServicePort `json:"meshExpansionPorts,omitempty"` // RouteConfig specifies whether to create an OpenShift Route for istio-ingressgateway deployment // +optional RouteConfig *Enablement `json:"routeConfig,omitempty"` }
ClusterIngressGatewayConfig represents gateway configuration for cluster ingress
func (*ClusterIngressGatewayConfig) DeepCopy ¶
func (in *ClusterIngressGatewayConfig) DeepCopy() *ClusterIngressGatewayConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterIngressGatewayConfig.
func (*ClusterIngressGatewayConfig) DeepCopyInto ¶
func (in *ClusterIngressGatewayConfig) DeepCopyInto(out *ClusterIngressGatewayConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CommonContainerConfig ¶
type CommonContainerConfig struct { // +optional ImageRegistry string `json:"imageRegistry,omitempty"` // +optional ImageTag string `json:"imageTag,omitempty"` // +optional ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` // +optional ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` // +optional Resources *corev1.ResourceRequirements `json:"resources,omitempty"` }
CommonContainerConfig represents container settings common to both defaults and component specific configuration.
func (*CommonContainerConfig) DeepCopy ¶
func (in *CommonContainerConfig) DeepCopy() *CommonContainerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonContainerConfig.
func (*CommonContainerConfig) DeepCopyInto ¶
func (in *CommonContainerConfig) DeepCopyInto(out *CommonContainerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CommonDeploymentRuntimeConfig ¶
type CommonDeploymentRuntimeConfig struct { // .Values.global.podDisruptionBudget.enabled, if not null // XXX: this is currently a global setting, not per component. perhaps // this should only be available on the defaults? // +optional PodDisruption *PodDisruptionBudget `json:"podDisruption,omitempty"` }
CommonDeploymentRuntimeConfig represents deployment settings common to both default and component specific settings
func (*CommonDeploymentRuntimeConfig) DeepCopy ¶
func (in *CommonDeploymentRuntimeConfig) DeepCopy() *CommonDeploymentRuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonDeploymentRuntimeConfig.
func (*CommonDeploymentRuntimeConfig) DeepCopyInto ¶
func (in *CommonDeploymentRuntimeConfig) DeepCopyInto(out *CommonDeploymentRuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CommonPodRuntimeConfig ¶
type CommonPodRuntimeConfig struct { // NodeSelector is a selector which must be true for the pod to fit on a node. // Selector which must match a node's labels for the pod to be scheduled on that node. // More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ // +optional // .Values.nodeSelector NodeSelector map[string]string `json:"nodeSelector,omitempty"` // If specified, the pod's tolerations. // +optional // .Values.tolerations Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // .Values.global.priorityClassName // XXX: currently, this is only a global setting. maybe only allow setting in global runtime defaults? // +optional PriorityClassName string `json:"priorityClassName,omitempty"` }
CommonPodRuntimeConfig represents pod settings common to both defaults and component specific configuration
func (*CommonPodRuntimeConfig) DeepCopy ¶
func (in *CommonPodRuntimeConfig) DeepCopy() *CommonPodRuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonPodRuntimeConfig.
func (*CommonPodRuntimeConfig) DeepCopyInto ¶
func (in *CommonPodRuntimeConfig) DeepCopyInto(out *CommonPodRuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentIngressConfig ¶
type ComponentIngressConfig struct { Enablement `json:",inline"` // Metadata represents additional metadata to be applied to the ingress/route. // +optional Metadata *MetadataConfig `json:"metadata,omitempty"` // Hosts represents a list of host names to configure. Note, OpenShift route // only supports a single host name per route. An empty host name implies // a default host name for the Route. // XXX: is a host name required for k8s Ingress? // +optional Hosts []string `json:"hosts,omitempty"` // ContextPath represents the context path to the service. // +optional ContextPath string `json:"contextPath,omitempty"` // TLS is used to configure TLS for the Ingress/Route // XXX: should this be something like RawExtension, as the configuration differs between Route and Ingress? // +optional TLS *v1.HelmValues `json:"tls,omitempty"` }
ComponentIngressConfig is used to customize a k8s Ingress or OpenShift Route for the service associated with a component.
func (*ComponentIngressConfig) DeepCopy ¶
func (in *ComponentIngressConfig) DeepCopy() *ComponentIngressConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentIngressConfig.
func (*ComponentIngressConfig) DeepCopyInto ¶
func (in *ComponentIngressConfig) DeepCopyInto(out *ComponentIngressConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentLogLevels ¶
type ComponentLogLevels map[EnvoyComponent]LogLevel
ComponentLogLevels represent various logging levels, e.g. trace, debug, etc.
func (ComponentLogLevels) DeepCopy ¶
func (in ComponentLogLevels) DeepCopy() ComponentLogLevels
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentLogLevels.
func (ComponentLogLevels) DeepCopyInto ¶
func (in ComponentLogLevels) DeepCopyInto(out *ComponentLogLevels)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentPersistenceConfig ¶
type ComponentPersistenceConfig struct { Enablement `json:",inline"` // StorageClassName for the PersistentVolumeClaim // +optional StorageClassName string `json:"storageClassName,omitempty"` // AccessMode for the PersistentVolumeClaim // +optional AccessMode corev1.PersistentVolumeAccessMode `json:"accessMode,omitempty"` // Resources to request for the PersistentVolumeClaim // +optional Resources *corev1.ResourceRequirements `json:"capacity,omitempty"` }
ComponentPersistenceConfig is used to configure persistence for a component.
func (*ComponentPersistenceConfig) DeepCopy ¶
func (in *ComponentPersistenceConfig) DeepCopy() *ComponentPersistenceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentPersistenceConfig.
func (*ComponentPersistenceConfig) DeepCopyInto ¶
func (in *ComponentPersistenceConfig) DeepCopyInto(out *ComponentPersistenceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentRuntimeConfig ¶
type ComponentRuntimeConfig struct { // Deployment specific overrides // +optional Deployment *DeploymentRuntimeConfig `json:"deployment,omitempty"` // Pod specific overrides // +optional Pod *PodRuntimeConfig `json:"pod,omitempty"` // .Values.*.resource, imagePullPolicy, etc. // +optional Container *ContainerConfig `json:"container,omitempty"` }
ComponentRuntimeConfig allows for partial customization of a component's runtime configuration (Deployment, PodTemplate, auto scaling, pod disruption, etc.)
func (*ComponentRuntimeConfig) DeepCopy ¶
func (in *ComponentRuntimeConfig) DeepCopy() *ComponentRuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentRuntimeConfig.
func (*ComponentRuntimeConfig) DeepCopyInto ¶
func (in *ComponentRuntimeConfig) DeepCopyInto(out *ComponentRuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentServiceConfig ¶
type ComponentServiceConfig struct { // Metadata represents additional annotations/labels to be applied to the // component's service. // +optional Metadata *MetadataConfig `json:"metadata,omitempty"` // NodePort specifies a NodePort for the component's Service. // .Values.<component>.service.nodePort.port, ...enabled is true if not null // +optional NodePort *int32 `json:"nodePort,omitempty"` // Ingress specifies details for accessing the component's service through // a k8s Ingress or OpenShift Route. // +optional Ingress *ComponentIngressConfig `json:"ingress,omitempty"` }
ComponentServiceConfig is used to customize the service associated with a component.
func (*ComponentServiceConfig) DeepCopy ¶
func (in *ComponentServiceConfig) DeepCopy() *ComponentServiceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentServiceConfig.
func (*ComponentServiceConfig) DeepCopyInto ¶
func (in *ComponentServiceConfig) DeepCopyInto(out *ComponentServiceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerConfig ¶
type ContainerConfig struct { CommonContainerConfig `json:",inline"` // +optional Image string `json:"imageName,omitempty"` // +optional Env map[string]string `json:"env,omitempty"` }
ContainerConfig to be applied to containers in a pod, in a deployment
func (*ContainerConfig) DeepCopy ¶
func (in *ContainerConfig) DeepCopy() *ContainerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerConfig.
func (*ContainerConfig) DeepCopyInto ¶
func (in *ContainerConfig) DeepCopyInto(out *ContainerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneCertProviderType ¶
type ControlPlaneCertProviderType string
ControlPlaneCertProviderType represents the provider used to generate serving certificates for the control plane.
const ( // ControlPlaneCertProviderTypeIstiod identifies istiod as the provider generating the serving certifications. ControlPlaneCertProviderTypeIstiod ControlPlaneCertProviderType = "Istiod" // ControlPlaneCertProviderTypeKubernetes identifies Kubernetes as the provider generating the serving certificates. ControlPlaneCertProviderTypeKubernetes ControlPlaneCertProviderType = "Kubernetes" // ControlPlaneCertProviderTypeCustom identifies a custom provider has generated the serving certificates. // XXX: Not quite sure what this means. Presumably, the key and cert chain have been mounted specially ControlPlaneCertProviderTypeCustom ControlPlaneCertProviderType = "Custom" )
type ControlPlaneClusterConfig ¶
type ControlPlaneClusterConfig struct { // .Values.global.multiCluster.clusterName, defaults to Kubernetes // +optional Name string `json:"name,omitempty"` // .Values.global.network // XXX: not sure what the difference is between this and cluster name // +optional Network string `json:"network,omitempty"` // .Values.global.multiCluster.enabled, if not null // +optional MultiCluster *MultiClusterConfig `json:"multiCluster,omitempty"` // .Values.global.meshExpansion.enabled, if not null // XXX: it's not clear whether or not there is any overlap with MultiCluster, // i.e. does MultiCluster require mesh expansion ports to be configured on // the ingress gateway? // +optional MeshExpansion *MeshExpansionConfig `json:"meshExpansion,omitempty"` }
ControlPlaneClusterConfig configures aspects related to clustering.
func (*ControlPlaneClusterConfig) DeepCopy ¶
func (in *ControlPlaneClusterConfig) DeepCopy() *ControlPlaneClusterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneClusterConfig.
func (*ControlPlaneClusterConfig) DeepCopyInto ¶
func (in *ControlPlaneClusterConfig) DeepCopyInto(out *ControlPlaneClusterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneComponentName ¶
type ControlPlaneComponentName string
ControlPlaneComponentName simple type for control plane component names
const ( // ControlPlaneComponentNameSecurity - security (citadel) ControlPlaneComponentNameSecurity ControlPlaneComponentName = "security" // ControlPlaneComponentNameGalley - galley ControlPlaneComponentNameGalley ControlPlaneComponentName = "galley" // ControlPlaneComponentNamePilot - pilot ControlPlaneComponentNamePilot ControlPlaneComponentName = "pilot" // ControlPlaneComponentNameMixer - mixer ControlPlaneComponentNameMixer ControlPlaneComponentName = "mixer" // ControlPlaneComponentNameMixerPolicy - mixer.policy ControlPlaneComponentNameMixerPolicy ControlPlaneComponentName = "mixer.policy" // ControlPlaneComponentNameMixerTelemetry - mixer.telemetry ControlPlaneComponentNameMixerTelemetry ControlPlaneComponentName = "mixer.telemetry" // ControlPlaneComponentNameGlobalOauthProxy - global.oauthproxy ControlPlaneComponentNameGlobalOauthProxy ControlPlaneComponentName = "global.oauthproxy" // ControlPlaneComponentNameSidecarInjectoryWebhook - sidecarInjectorWebhook ControlPlaneComponentNameSidecarInjectoryWebhook ControlPlaneComponentName = "sidecarInjectorWebhook" // ControlPlaneComponentNameTracing - tracing ControlPlaneComponentNameTracing ControlPlaneComponentName = "tracing" // ControlPlaneComponentNameTracingJaeger - tracing.jaeger ControlPlaneComponentNameTracingJaeger ControlPlaneComponentName = "tracing.jaeger" // ControlPlaneComponentNameTracingJaegerElasticsearch - tracing.jaeger.elasticsearch ControlPlaneComponentNameTracingJaegerElasticsearch ControlPlaneComponentName = "tracing.jaeger.elasticsearch" // ControlPlaneComponentNameTracingJaegerAgent - tracing.jaeger.agent ControlPlaneComponentNameTracingJaegerAgent ControlPlaneComponentName = "tracing.jaeger.agent" // ControlPlaneComponentNameTracingJaegerAllInOne - tracing.jaeger.allInOne ControlPlaneComponentNameTracingJaegerAllInOne ControlPlaneComponentName = "tracing.jaeger.allInOne" // ControlPlaneComponentNameTracingJaegerCollector - tracing.jaeger.collector ControlPlaneComponentNameTracingJaegerCollector ControlPlaneComponentName = "tracing.jaeger.collector" // ControlPlaneComponentNameTracingJaegerQuery - tracing.jaeger.query ControlPlaneComponentNameTracingJaegerQuery ControlPlaneComponentName = "tracing.jaeger.query" // ControlPlaneComponentNamePrometheus - prometheus ControlPlaneComponentNamePrometheus ControlPlaneComponentName = "prometheus" // ControlPlaneComponentNameKiali - kiali ControlPlaneComponentNameKiali ControlPlaneComponentName = "kiali" // ControlPlaneComponentNameGrafana - grafana ControlPlaneComponentNameGrafana ControlPlaneComponentName = "grafana" // ControlPlaneComponentNameThreeScale - 3scale ControlPlaneComponentNameThreeScale ControlPlaneComponentName = "3scale" // ControlPlaneComponentNameWASMCacher - wasm-extensions cacher ControlPlaneComponentNameWASMCacher ControlPlaneComponentName = "wasmExtensions.cacher" // ControlPlaneComponentNameRateLimiting - rateLimiting ControlPlaneComponentNameRateLimiting ControlPlaneComponentName = "rateLimiting.rls" )
type ControlPlaneRuntimeConfig ¶
type ControlPlaneRuntimeConfig struct { // Components allows specifying execution parameters for specific control plane // componets. The key of the map is the component name to which the settings // should be applied. // +optional Components map[ControlPlaneComponentName]*ComponentRuntimeConfig `json:"components,omitempty"` // Defaults will be merged into specific component config. // .Values.global.defaultResources, e.g. // +optional Defaults *DefaultRuntimeConfig `json:"defaults,omitempty"` }
ControlPlaneRuntimeConfig configures execution parameters for control plane componets.
func (*ControlPlaneRuntimeConfig) DeepCopy ¶
func (in *ControlPlaneRuntimeConfig) DeepCopy() *ControlPlaneRuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneRuntimeConfig.
func (*ControlPlaneRuntimeConfig) DeepCopyInto ¶
func (in *ControlPlaneRuntimeConfig) DeepCopyInto(out *ControlPlaneRuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneSecurityConfig ¶
type ControlPlaneSecurityConfig struct { // Enable mutual TLS for the control plane components. // .Values.global.controlPlaneSecurityEnabled // +optional MTLS *bool `json:"mtls,omitempty"` // CertProvider is the certificate authority used to generate the serving // certificates for the control plane components. // .Values.global.pilotCertProvider // Provider used to generate serving certs for istiod (pilot) // +optional CertProvider ControlPlaneCertProviderType `json:"certProvider,omitempty"` // TLS configures aspects of TLS listeners created by control plane components. // +optional TLS *ControlPlaneTLSConfig `json:"tls,omitempty"` }
ControlPlaneSecurityConfig is the mutual TLS configuration specific to the control plane.
func (*ControlPlaneSecurityConfig) DeepCopy ¶
func (in *ControlPlaneSecurityConfig) DeepCopy() *ControlPlaneSecurityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneSecurityConfig.
func (*ControlPlaneSecurityConfig) DeepCopyInto ¶
func (in *ControlPlaneSecurityConfig) DeepCopyInto(out *ControlPlaneSecurityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneSpec ¶
type ControlPlaneSpec struct { // Profiles selects the profile to use for default values. Defaults to // "default" when not set. // +optional Profiles []string `json:"profiles,omitempty"` // Version specifies what Maistra version of the control plane to install. // When creating a new ServiceMeshControlPlane with an empty version, the // admission webhook sets the version to the current version. // +optional Version string `json:"version,omitempty"` // Cluster is the general configuration of the cluster (cluster name, // network name, multi-cluster, mesh expansion, etc.) // +optional Cluster *ControlPlaneClusterConfig `json:"cluster,omitempty"` // General represents general control plane configuration that does not // logically fit in another area. // +optional General *GeneralConfig `json:"general,omitempty"` // Policy configures policy checking for the control plane. // .Values.policy.enabled, true if not null // +optional Policy *PolicyConfig `json:"policy,omitempty"` // Proxy configures the default behavior for sidecars. Many values were // previously exposed through .Values.global.proxy // +optional Proxy *ProxyConfig `json:"proxy,omitempty"` // Security configures aspects of security for the control plane. // +optional Security *SecurityConfig `json:"security,omitempty"` // Telemetry configures telemetry for the mesh. // .Values.mixer.telemetry.enabled, true if not null. 1.6, .Values.telemetry.enabled // +optional Telemetry *TelemetryConfig `json:"telemetry,omitempty"` // Tracing configures tracing for the mesh. // +optional Tracing *TracingConfig `json:"tracing,omitempty"` // Gateways configures gateways for the mesh // .Values.gateways.* // +optional Gateways *GatewaysConfig `json:"gateways,omitempty"` // Runtime configuration for pilot (and galley, etc., pre 2.0) // +optional Runtime *ControlPlaneRuntimeConfig `json:"runtime,omitempty"` // Addons is used to configure additional features beyond core control plane // components, e.g. visualization, metric storage, etc. // +optional Addons *AddonsConfig `json:"addons,omitempty"` // TechPreview contains switches for features that are not GA yet. // +optional TechPreview *v1.HelmValues `json:"techPreview,omitempty"` }
ControlPlaneSpec represents the configuration for installing a control plane
func (*ControlPlaneSpec) DeepCopy ¶
func (in *ControlPlaneSpec) DeepCopy() *ControlPlaneSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneSpec.
func (*ControlPlaneSpec) DeepCopyInto ¶
func (in *ControlPlaneSpec) DeepCopyInto(out *ControlPlaneSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ControlPlaneSpec) IsClusterScoped ¶
func (s ControlPlaneSpec) IsClusterScoped() (bool, error)
func (ControlPlaneSpec) IsGrafanaEnabled ¶
func (s ControlPlaneSpec) IsGrafanaEnabled() bool
func (ControlPlaneSpec) IsJaegerEnabled ¶
func (s ControlPlaneSpec) IsJaegerEnabled() bool
func (ControlPlaneSpec) IsKialiEnabled ¶
func (s ControlPlaneSpec) IsKialiEnabled() bool
func (ControlPlaneSpec) IsPrometheusEnabled ¶
func (s ControlPlaneSpec) IsPrometheusEnabled() bool
type ControlPlaneStatus ¶
type ControlPlaneStatus struct { status.StatusBase `json:",inline"` // INSERT ADDITIONAL SPEC FIELDS - desired state of cluster // Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file status.StatusType `json:",inline"` // The generation observed by the controller during the most recent // reconciliation. The information in the status pertains to this particular // generation of the object. ObservedGeneration int64 `json:"observedGeneration,omitempty"` // The version of the operator that last processed this resource. OperatorVersion string `json:"operatorVersion,omitempty"` // The version of the charts that were last processed for this resource. ChartVersion string `json:"chartVersion,omitempty"` // The list of components comprising the control plane and their statuses. status.ComponentStatusList `json:",inline"` // The readiness status of components & owned resources Readiness ReadinessStatus `json:"readiness"` // The resulting specification of the configuration options after all profiles // have been applied. // +optional AppliedSpec ControlPlaneSpec `json:"appliedSpec,omitempty"` // The resulting values.yaml used to generate the charts. // +optional AppliedValues v1.ControlPlaneSpec `json:"appliedValues,omitempty"` }
ControlPlaneStatus defines the observed state of ServiceMeshControlPlane ControlPlaneStatus represents the current state of a ServiceMeshControlPlane.
func (*ControlPlaneStatus) DeepCopy ¶
func (in *ControlPlaneStatus) DeepCopy() *ControlPlaneStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneStatus.
func (*ControlPlaneStatus) DeepCopyInto ¶
func (in *ControlPlaneStatus) DeepCopyInto(out *ControlPlaneStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlPlaneStatus) GetReconciledVersion ¶
func (s *ControlPlaneStatus) GetReconciledVersion() string
GetReconciledVersion returns the reconciled version, or a default for older resources
type ControlPlaneTLSConfig ¶
type ControlPlaneTLSConfig struct { // CipherSuites configures the cipher suites that are available for use by // TLS listeners. // .Values.global.tls.cipherSuites // +optional CipherSuites []string `json:"cipherSuites,omitempty"` // ECDHCurves configures the ECDH curves that are available for use by // TLS listeners. // .Values.global.tls.ecdhCurves // +optional ECDHCurves []string `json:"ecdhCurves,omitempty"` // MinProtocolVersion the minimum TLS version that should be supported by // the listeners. // .Values.global.tls.minProtocolVersion // +optional MinProtocolVersion string `json:"minProtocolVersion,omitempty"` // MaxProtocolVersion the maximum TLS version that should be supported by // the listeners. // .Values.global.tls.maxProtocolVersion // +optional MaxProtocolVersion string `json:"maxProtocolVersion,omitempty"` }
ControlPlaneTLSConfig configures settings on TLS listeners created by control plane components, e.g. webhooks, grpc (if mtls is enabled), etc.
func (*ControlPlaneTLSConfig) DeepCopy ¶
func (in *ControlPlaneTLSConfig) DeepCopy() *ControlPlaneTLSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneTLSConfig.
func (*ControlPlaneTLSConfig) DeepCopyInto ¶
func (in *ControlPlaneTLSConfig) DeepCopyInto(out *ControlPlaneTLSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CustomCertificateAuthorityConfig ¶
type CustomCertificateAuthorityConfig struct { // Address is the grpc address for an Istio compatible certificate authority endpoint. // .Values.global.caAddress // XXX: assumption is this is a grpc endpoint that provides methods like istio.v1.auth.IstioCertificateService/CreateCertificate Address string `json:"address,omitempty"` }
CustomCertificateAuthorityConfig is the configuration for a custom certificate authority.
func (*CustomCertificateAuthorityConfig) DeepCopy ¶
func (in *CustomCertificateAuthorityConfig) DeepCopy() *CustomCertificateAuthorityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomCertificateAuthorityConfig.
func (*CustomCertificateAuthorityConfig) DeepCopyInto ¶
func (in *CustomCertificateAuthorityConfig) DeepCopyInto(out *CustomCertificateAuthorityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataPlaneSecurityConfig ¶
type DataPlaneSecurityConfig struct { // Enable mutual TLS by default. // .Values.global.mtls.enabled MTLS *bool `json:"mtls,omitempty"` // Auto configures the mesh to automatically detect whether or not mutual // TLS is required for a specific connection. // .Values.global.mtls.auto // +optional AutoMTLS *bool `json:"automtls,omitempty"` }
DataPlaneSecurityConfig is the mutual TLS configuration specific to the control plane.
func (*DataPlaneSecurityConfig) DeepCopy ¶
func (in *DataPlaneSecurityConfig) DeepCopy() *DataPlaneSecurityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataPlaneSecurityConfig.
func (*DataPlaneSecurityConfig) DeepCopyInto ¶
func (in *DataPlaneSecurityConfig) DeepCopyInto(out *DataPlaneSecurityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogTracerConfig ¶
type DatadogTracerConfig struct { }
DatadogTracerConfig configures a Datadog tracer for use with the mesh
func (*DatadogTracerConfig) DeepCopy ¶
func (in *DatadogTracerConfig) DeepCopy() *DatadogTracerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogTracerConfig.
func (*DatadogTracerConfig) DeepCopyInto ¶
func (in *DatadogTracerConfig) DeepCopyInto(out *DatadogTracerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DefaultRuntimeConfig ¶
type DefaultRuntimeConfig struct { // Deployment defaults // +optional Deployment *CommonDeploymentRuntimeConfig `json:"deployment,omitempty"` // Pod defaults // +optional Pod *CommonPodRuntimeConfig `json:"pod,omitempty"` // Container overrides to be merged with component specific overrides. // +optional Container *CommonContainerConfig `json:"container,omitempty"` }
DefaultRuntimeConfig specifies default execution parameters to apply to control plane deployments/pods when no specific component overrides have been specified. These settings will be merged with component specific settings.
func (*DefaultRuntimeConfig) DeepCopy ¶
func (in *DefaultRuntimeConfig) DeepCopy() *DefaultRuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultRuntimeConfig.
func (*DefaultRuntimeConfig) DeepCopyInto ¶
func (in *DefaultRuntimeConfig) DeepCopyInto(out *DefaultRuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentRuntimeConfig ¶
type DeploymentRuntimeConfig struct { // Number of desired pods. This is a pointer to distinguish between explicit // zero and not specified. Defaults to 1. // +optional // .Values.*.replicaCount Replicas *int32 `json:"replicas,omitempty"` // The deployment strategy to use to replace existing pods with new ones. // +optional // +patchStrategy=retainKeys // .Values.*.rollingMaxSurge, rollingMaxUnavailable, etc. Strategy *appsv1.DeploymentStrategy `json:"strategy,omitempty" patchStrategy:"retainKeys"` // Autoscaling specifies the configuration for a HorizontalPodAutoscaler // to be applied to this deployment. Null indicates no auto scaling. // .Values.*.autoscale* fields // +optional AutoScaling *AutoScalerConfig `json:"autoScaling,omitempty"` }
DeploymentRuntimeConfig allow customization of a component's Deployment resource, including additional labels/annotations, replica count, autoscaling, rollout strategy, etc.
func (*DeploymentRuntimeConfig) DeepCopy ¶
func (in *DeploymentRuntimeConfig) DeepCopy() *DeploymentRuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentRuntimeConfig.
func (*DeploymentRuntimeConfig) DeepCopyInto ¶
func (in *DeploymentRuntimeConfig) DeepCopyInto(out *DeploymentRuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EgressGatewayConfig ¶
type EgressGatewayConfig struct { GatewayConfig `json:",inline"` // RequestedNetworkView is a list of networks whose services should be made // available to the gateway. This is used primarily for mesh expansion/multi-cluster. // .Values.gateways.<gateway-name>.env.ISTIO_META_REQUESTED_NETWORK_VIEW env, defaults to empty list // XXX: I think this is only applicable to egress gateways // +optional RequestedNetworkView []string `json:"requestedNetworkView,omitempty"` }
EgressGatewayConfig represents gateway configuration for egress
func (*EgressGatewayConfig) DeepCopy ¶
func (in *EgressGatewayConfig) DeepCopy() *EgressGatewayConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EgressGatewayConfig.
func (*EgressGatewayConfig) DeepCopyInto ¶
func (in *EgressGatewayConfig) DeepCopyInto(out *EgressGatewayConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Enablement ¶
type Enablement struct { // Enabled specifies whether or not this feature is enabled Enabled *bool `json:"enabled,omitempty"` }
Enablement is a common definition for features that can be enabled
func (*Enablement) DeepCopy ¶
func (in *Enablement) DeepCopy() *Enablement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Enablement.
func (*Enablement) DeepCopyInto ¶
func (in *Enablement) DeepCopyInto(out *Enablement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvoyComponent ¶
type EnvoyComponent string
EnvoyComponent represents an envoy component to configure logging
const ( EnvoyComponentAdmin EnvoyComponent = "admin" EnvoyComponentAssert EnvoyComponent = "assert" EnvoyComponentBacktrace EnvoyComponent = "backtrace" EnvoyComponentClient EnvoyComponent = "client" EnvoyComponentConfig EnvoyComponent = "config" EnvoyComponentConnection EnvoyComponent = "connection" EnvoyComponentConnHandler EnvoyComponent = "conn_handler" EnvoyComponentFile EnvoyComponent = "file" EnvoyComponentFilter EnvoyComponent = "filter" EnvoyComponentForwardProxy EnvoyComponent = "forward_proxy" EnvoyComponentGRPC EnvoyComponent = "grpc" EnvoyComponentHealth EnvoyComponent = "hc" EnvoyComponentHealthChecker EnvoyComponent = "health_checker" EnvoyComponentHTTP EnvoyComponent = "http" EnvoyComponentHTTP2 EnvoyComponent = "http2" EnvoyComponentInit EnvoyComponent = "init" EnvoyComponentIO EnvoyComponent = "io" EnvoyComponentJWT EnvoyComponent = "jwt" EnvoyComponentLua EnvoyComponent = "lua" EnvoyComponentMain EnvoyComponent = "main" EnvoyComponentMisc EnvoyComponent = "misc" EnvoyComponentQuic EnvoyComponent = "quic" EnvoyComponentPool EnvoyComponent = "pool" EnvoyComponentRBAC EnvoyComponent = "rbac" EnvoyComponentRouter EnvoyComponent = "router" EnvoyComponentRuntime EnvoyComponent = "runtime" EnvoyComponentStats EnvoyComponent = "stats" EnvoyComponentSecret EnvoyComponent = "secret" EnvoyComponentTap EnvoyComponent = "tap" EnvoyComponentTesting EnvoyComponent = "testing" EnvoyComponentTracing EnvoyComponent = "tracing" EnvoyComponentUpstream EnvoyComponent = "upstream" EnvoyComponentUDP EnvoyComponent = "udp" EnvoyComponentWASM EnvoyComponent = "wasm" )
not a comprehensive list
type EnvoyServiceClientTLSSettings ¶
type EnvoyServiceClientTLSSettings struct { // Mode represents the TLS mode to apply to the connection. The following // values are supported: DISABLE, SIMPLE, MUTUAL, ISTIO_MUTUAL // +optional Mode string `json:"mode,omitempty"` // ClientCertificate represents the file name containing the client certificate // to show to the Envoy service, e.g. /etc/istio/als/cert-chain.pem // +optional ClientCertificate string `json:"clientCertificate,omitempty"` // PrivateKey represents the file name containing the private key used by // the client, e.g. /etc/istio/als/key.pem // +optional PrivateKey string `json:"privateKey,omitempty"` // CACertificates represents the file name containing the root certificates // for the CA, e.g. /etc/istio/als/root-cert.pem // +optional CACertificates string `json:"caCertificates,omitempty"` // SNIHost represents the host name presented to the server during TLS // handshake, e.g. als.somedomain // +optional SNIHost string `json:"sni,omitempty"` // SubjectAltNames represents the list of alternative names that may be used // to verify the servers identity, e.g. [als.someotherdomain] // +optional SubjectAltNames []string `json:"subjectAltNames,omitempty"` }
EnvoyServiceClientTLSSettings configures TLS settings for the Envoy service. Provides the same interface as networking.v1alpha3.istio.io, ClientTLSSettings
func (*EnvoyServiceClientTLSSettings) DeepCopy ¶
func (in *EnvoyServiceClientTLSSettings) DeepCopy() *EnvoyServiceClientTLSSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyServiceClientTLSSettings.
func (*EnvoyServiceClientTLSSettings) DeepCopyInto ¶
func (in *EnvoyServiceClientTLSSettings) DeepCopyInto(out *EnvoyServiceClientTLSSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvoyServiceTCPKeepalive ¶
type EnvoyServiceTCPKeepalive struct { // Probes represents the number of successive probe failures after which the // connection should be considered "dead." // +optional Probes uint32 `json:"probes,omitempty"` // Time represents the length of idle time that must elapse before a probe // is sent. // +optional Time string `json:"time,omitempty"` // Interval represents the interval between probes. // +optional Interval string `json:"interval,omitempty"` }
EnvoyServiceTCPKeepalive configures keepalive settings for the Envoy service. Provides the same interface as networking.v1alpha3.istio.io, ConnectionPoolSettings_TCPSettings_TcpKeepalive
func (*EnvoyServiceTCPKeepalive) DeepCopy ¶
func (in *EnvoyServiceTCPKeepalive) DeepCopy() *EnvoyServiceTCPKeepalive
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyServiceTCPKeepalive.
func (*EnvoyServiceTCPKeepalive) DeepCopyInto ¶
func (in *EnvoyServiceTCPKeepalive) DeepCopyInto(out *EnvoyServiceTCPKeepalive)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayConfig ¶
type GatewayConfig struct { Enablement `json:",inline"` // Namespace is the namespace within which the gateway will be installed, // defaults to control plane namespace. // .Values.gateways.<gateway-name>.namespace // XXX: for the standard gateways, it might be possible that related // resources could be installed in control plane namespace instead of the // gateway namespace. not sure if this is a problem or not. // +optional Namespace string `json:"namespace,omitempty"` // Service configures the service associated with the gateway, e.g. port // mappings, service type, annotations/labels, etc. // .Values.gateways.<gateway-name>.ports, .Values.gateways.<gateway-name>.type, // .Values.gateways.<gateway-name>.loadBalancerIP, // .Values.gateways.<gateway-name>.serviceAnnotations, // .Values.gateways.<gateway-name>.serviceLabels // XXX: currently there is no distinction between labels and serviceLabels // +optional Service GatewayServiceConfig `json:"service,omitempty"` // The router mode to be used by the gateway. // .Values.gateways.<gateway-name>.env.ISTIO_META_ROUTER_MODE, defaults to sni-dnat // +optional RouterMode RouterModeType `json:"routerMode,omitempty"` // Volumes is used to configure additional Secret and ConfigMap volumes that // should be mounted for the gateway's pod. // .Values.gateways.<gateway-name>.secretVolumes, .Values.gateways.<gateway-name>.configMapVolumes // +optional Volumes []VolumeConfig `json:"volumes,omitempty"` // Runtime is used to configure execution parameters for the pod/containers // e.g. resources, replicas, etc. // +optional Runtime *ComponentRuntimeConfig `json:"runtime,omitempty"` }
GatewayConfig represents the configuration for a gateway XXX: should standard istio secrets be configured automatically, i.e. should the user be forced to add these manually?
func (*GatewayConfig) DeepCopy ¶
func (in *GatewayConfig) DeepCopy() *GatewayConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayConfig.
func (*GatewayConfig) DeepCopyInto ¶
func (in *GatewayConfig) DeepCopyInto(out *GatewayConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayServiceConfig ¶
type GatewayServiceConfig struct { // XXX: selector is ignored // Service details used to configure the gateway's Service resource // +optional corev1.ServiceSpec `json:",inline"` // metadata to be applied to the gateway's service (annotations and labels) // +optional Metadata *MetadataConfig `json:"metadata,omitempty"` }
GatewayServiceConfig configures the k8s Service associated with the gateway
func (*GatewayServiceConfig) DeepCopy ¶
func (in *GatewayServiceConfig) DeepCopy() *GatewayServiceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayServiceConfig.
func (*GatewayServiceConfig) DeepCopyInto ¶
func (in *GatewayServiceConfig) DeepCopyInto(out *GatewayServiceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayVolume ¶
type GatewayVolume struct { // ConfigMap represents a configMap that should populate this volume // +optional ConfigMap *corev1.ConfigMapVolumeSource `json:"configMap,omitempty"` // Secret represents a secret that should populate this volume. // More info: https://kubernetes.io/docs/concepts/storage/volumes#secret // +optional Secret *corev1.SecretVolumeSource `json:"secret,omitempty"` }
GatewayVolume is a pared down version of corev1.Volume, which only supports specifying ConfigMap and Secret volume types.
func (*GatewayVolume) DeepCopy ¶
func (in *GatewayVolume) DeepCopy() *GatewayVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayVolume.
func (*GatewayVolume) DeepCopyInto ¶
func (in *GatewayVolume) DeepCopyInto(out *GatewayVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewaysConfig ¶
type GatewaysConfig struct { Enablement `json:",inline"` // ClusterIngress configures the istio-ingressgateway for the mesh // works in conjunction with cluster.meshExpansion.ingress configuration // (for enabling ILB gateway and mesh expansion ports) // .Values.gateways.istio-ingressgateway // +optional ClusterIngress *ClusterIngressGatewayConfig `json:"ingress,omitempty"` // ClusterEgress configures the istio-egressgateway for the mesh. // .Values.gateways.istio-egressgateway // +optional ClusterEgress *EgressGatewayConfig `json:"egress,omitempty"` // Other user defined ingress gateways // .Values.gateways.<key> // +optional IngressGateways map[string]*IngressGatewayConfig `json:"additionalIngress,omitempty"` // Other user defined egress gateways // .Values.gateways.<key> // +optional EgressGateways map[string]*EgressGatewayConfig `json:"additionalEgress,omitempty"` // Route configures the Gateway ↔ OpenShift Route integration OpenShiftRoute *OpenShiftRouteConfig `json:"openshiftRoute,omitempty"` }
GatewaysConfig configures gateways for the mesh
func (*GatewaysConfig) DeepCopy ¶
func (in *GatewaysConfig) DeepCopy() *GatewaysConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewaysConfig.
func (*GatewaysConfig) DeepCopyInto ¶
func (in *GatewaysConfig) DeepCopyInto(out *GatewaysConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GeneralConfig ¶
type GeneralConfig struct { // Logging represents the logging configuration for the control plane components // XXX: Should this be separate from Proxy.Logging? // +optional Logging *LoggingConfig `json:"logging,omitempty"` // ValidationMessages configures the control plane to add validationMessages // to the status fields of istio.io resources. This can be usefule for // detecting configuration errors in resources. // .Values.galley.enableAnalysis (<v2.0) // .Values.global.istiod.enableAnalysis (>=v2.0) ValidationMessages *bool `json:"validationMessages,omitempty"` }
GeneralConfig for control plane
func (*GeneralConfig) DeepCopy ¶
func (in *GeneralConfig) DeepCopy() *GeneralConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeneralConfig.
func (*GeneralConfig) DeepCopyInto ¶
func (in *GeneralConfig) DeepCopyInto(out *GeneralConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaAddonConfig ¶
type GrafanaAddonConfig struct { Enablement `json:",inline"` // Install a new grafana instance and manage with control plane // +optional Install *GrafanaInstallConfig `json:"install,omitempty"` // Address is the address of an existing grafana installation // implies .Values.kiali.dashboard.grafanaURL // +optional Address *string `json:"address,omitempty"` }
GrafanaAddonConfig configures a grafana instance for use with the mesh. Only one of install or address may be specified
func (*GrafanaAddonConfig) DeepCopy ¶
func (in *GrafanaAddonConfig) DeepCopy() *GrafanaAddonConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaAddonConfig.
func (*GrafanaAddonConfig) DeepCopyInto ¶
func (in *GrafanaAddonConfig) DeepCopyInto(out *GrafanaAddonConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaConfig ¶
type GrafanaConfig struct { // Env allows specification of various grafana environment variables to be // configured on the grafana container. // .Values.grafana.env // XXX: This is pretty cheesy... // +optional Env map[string]string `json:"env,omitempty"` // EnvSecrets allows specification of secret fields into grafana environment // variables to be configured on the grafana container // .Values.grafana.envSecrets // XXX: This is pretty cheesy... // +optional EnvSecrets map[string]string `json:"envSecrets,omitempty"` }
GrafanaConfig configures the behavior of the grafana installation
func (*GrafanaConfig) DeepCopy ¶
func (in *GrafanaConfig) DeepCopy() *GrafanaConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaConfig.
func (*GrafanaConfig) DeepCopyInto ¶
func (in *GrafanaConfig) DeepCopyInto(out *GrafanaConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaInstallConfig ¶
type GrafanaInstallConfig struct { // SelfManaged, true if the entire install should be managed by Maistra, false if using grafana CR (not supported) // +optional SelfManaged bool `json:"selfManaged,omitempty"` // Config configures the behavior of the grafana installation // +optional Config *GrafanaConfig `json:"config,omitempty"` // Service configures the k8s Service associated with the grafana installation // XXX: grafana service config does not follow other addon components' structure // +optional Service *ComponentServiceConfig `json:"service,omitempty"` // Persistence configures a PersistentVolume associated with the grafana installation // .Values.grafana.persist, true if not null // +optional Persistence *ComponentPersistenceConfig `json:"persistence,omitempty"` // Security is used to secure the grafana service. // .Values.grafana.security.enabled, true if not null // XXX: unused for maistra, as we use oauth-proxy // +optional Security *GrafanaSecurityConfig `json:"security,omitempty"` }
GrafanaInstallConfig is used to configure a new installation of grafana.
func (*GrafanaInstallConfig) DeepCopy ¶
func (in *GrafanaInstallConfig) DeepCopy() *GrafanaInstallConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaInstallConfig.
func (*GrafanaInstallConfig) DeepCopyInto ¶
func (in *GrafanaInstallConfig) DeepCopyInto(out *GrafanaInstallConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaSecurityConfig ¶
type GrafanaSecurityConfig struct { Enablement `json:",inline"` // SecretName is the name of a secret containing the username/password that // should be used to access grafana. // +optional SecretName string `json:"secretName,omitempty"` // UsernameKey is the name of the key within the secret identifying the username. // +optional UsernameKey string `json:"usernameKey,omitempty"` // PassphraseKey is the name of the key within the secret identifying the password. // +optional PassphraseKey string `json:"passphraseKey,omitempty"` }
GrafanaSecurityConfig is used to secure access to grafana
func (*GrafanaSecurityConfig) DeepCopy ¶
func (in *GrafanaSecurityConfig) DeepCopy() *GrafanaSecurityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaSecurityConfig.
func (*GrafanaSecurityConfig) DeepCopyInto ¶
func (in *GrafanaSecurityConfig) DeepCopyInto(out *GrafanaSecurityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityConfig ¶
type IdentityConfig struct { // Type is the type of identity tokens being used. // .Values.global.jwtPolicy Type IdentityConfigType `json:"type,omitempty"` // ThirdParty configures istiod to use a third-party token provider for // identifying users. (basically uses a custom audience, e.g. istio-ca) // XXX: this is only supported on OCP 4.4+ // +optional ThirdParty *ThirdPartyIdentityConfig `json:"thirdParty,omitempty"` }
IdentityConfig configures the types of user tokens used by clients
func (*IdentityConfig) DeepCopy ¶
func (in *IdentityConfig) DeepCopy() *IdentityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityConfig.
func (*IdentityConfig) DeepCopyInto ¶
func (in *IdentityConfig) DeepCopyInto(out *IdentityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityConfigType ¶
type IdentityConfigType string
IdentityConfigType represents the identity implementation being used.
const ( // IdentityConfigTypeKubernetes specifies Kubernetes as the token provider. IdentityConfigTypeKubernetes IdentityConfigType = "Kubernetes" // first-party-jwt // IdentityConfigTypeThirdParty specifies a third-party token provider. IdentityConfigTypeThirdParty IdentityConfigType = "ThirdParty" // third-party-jwt )
type IngressGatewayConfig ¶
type IngressGatewayConfig struct { GatewayConfig `json:",inline"` // EnableSDS for the gateway. // .Values.gateways.<gateway-name>.sds.enabled // +optional SDS *SecretDiscoveryService `json:"sds,omitempty"` }
IngressGatewayConfig represents gateway configuration for ingress
func (*IngressGatewayConfig) DeepCopy ¶
func (in *IngressGatewayConfig) DeepCopy() *IngressGatewayConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGatewayConfig.
func (*IngressGatewayConfig) DeepCopyInto ¶
func (in *IngressGatewayConfig) DeepCopyInto(out *IngressGatewayConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IstioCertificateSignerType ¶
type IstioCertificateSignerType string
IstioCertificateSignerType represents the certificate signer implementation used by istiod.
const ( // IstioCertificateSignerTypePrivateKey is the signer type used when signing with a user specified private key. IstioCertificateSignerTypePrivateKey IstioCertificateSignerType = "PrivateKey" // IstioCertificateSignerTypeSelfSigned is the signer type used when signing with a generated, self-signed certificate. IstioCertificateSignerTypeSelfSigned IstioCertificateSignerType = "SelfSigned" )
type IstioPrivateKeyCertificateSignerConfig ¶
type IstioPrivateKeyCertificateSignerConfig struct { // hard coded to use a secret named cacerts // +optional // EncryptionSecret string `json:"encryptionSecret,omitempty"` // ROOT_CA_DIR, defaults to /etc/cacerts // Mount directory for encryption secret // XXX: currently, not configurable in the charts // +optional RootCADir string `json:"rootCADir,omitempty"` }
IstioPrivateKeyCertificateSignerConfig is the configuration when using a user supplied private key/cert for signing. XXX: nothing in here is currently configurable, except RootCADir
func (*IstioPrivateKeyCertificateSignerConfig) DeepCopy ¶
func (in *IstioPrivateKeyCertificateSignerConfig) DeepCopy() *IstioPrivateKeyCertificateSignerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioPrivateKeyCertificateSignerConfig.
func (*IstioPrivateKeyCertificateSignerConfig) DeepCopyInto ¶
func (in *IstioPrivateKeyCertificateSignerConfig) DeepCopyInto(out *IstioPrivateKeyCertificateSignerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IstioSelfSignedCertificateSignerConfig ¶
type IstioSelfSignedCertificateSignerConfig struct { // TTL for self-signed root certificate // env CITADEL_SELF_SIGNED_CA_CERT_TTL // default is 10 years // +optional TTL string `json:"ttl,omitempty"` // GracePeriod percentile for self-signed cert // env CITADEL_SELF_SIGNED_ROOT_CERT_GRACE_PERIOD_PERCENTILE // default is 20% // +optional GracePeriod string `json:"gracePeriod,omitempty"` // CheckPeriod is the interval with which certificate is checked for rotation // env CITADEL_SELF_SIGNED_ROOT_CERT_CHECK_INTERVAL // default is 1 hour, zero or negative value disables cert rotation // +optional CheckPeriod string `json:"checkPeriod,omitempty"` // EnableJitter to use jitter for cert rotation // env CITADEL_ENABLE_JITTER_FOR_ROOT_CERT_ROTATOR // defaults to true // +optional EnableJitter *bool `json:"enableJitter,omitempty"` }
IstioSelfSignedCertificateSignerConfig is the configuration for using a self-signed root certificate.
func (*IstioSelfSignedCertificateSignerConfig) DeepCopy ¶
func (in *IstioSelfSignedCertificateSignerConfig) DeepCopy() *IstioSelfSignedCertificateSignerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioSelfSignedCertificateSignerConfig.
func (*IstioSelfSignedCertificateSignerConfig) DeepCopyInto ¶
func (in *IstioSelfSignedCertificateSignerConfig) DeepCopyInto(out *IstioSelfSignedCertificateSignerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IstiodCertificateAuthorityConfig ¶
type IstiodCertificateAuthorityConfig struct { // Type of certificate signer to use. Type IstioCertificateSignerType `json:"type,omitempty"` // SelfSigned configures istiod to generate and use a self-signed certificate for the root. // +optional SelfSigned *IstioSelfSignedCertificateSignerConfig `json:"selfSigned,omitempty"` // PrivateKey configures istiod to use a user specified private key/cert when signing certificates. // +optional PrivateKey *IstioPrivateKeyCertificateSignerConfig `json:"privateKey,omitempty"` // WorkloadCertTTLDefault is the default TTL for generated workload // certificates. Used if not specified in CSR (<= 0) // env DEFAULT_WORKLOAD_CERT_TTL, 1.6 // --workload-cert-ttl, citadel, pre-1.6 // defaults to 24 hours // +optional WorkloadCertTTLDefault string `json:"workloadCertTTLDefault,omitempty"` // WorkloadCertTTLMax is the maximum TTL for generated workload certificates. // env MAX_WORKLOAD_CERT_TTL // --max-workload-cert-ttl, citadel, pre-1.6 // defaults to 90 days // +optional WorkloadCertTTLMax string `json:"workloadCertTTLMax,omitempty"` }
IstiodCertificateAuthorityConfig is the configuration for Istio's internal certificate authority implementation.
func (*IstiodCertificateAuthorityConfig) DeepCopy ¶
func (in *IstiodCertificateAuthorityConfig) DeepCopy() *IstiodCertificateAuthorityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstiodCertificateAuthorityConfig.
func (*IstiodCertificateAuthorityConfig) DeepCopyInto ¶
func (in *IstiodCertificateAuthorityConfig) DeepCopyInto(out *IstiodCertificateAuthorityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JaegerAddonConfig ¶
type JaegerAddonConfig struct { // Name of Jaeger CR, Namespace must match control plane namespace Name string `json:"name,omitempty"` // Install configures a Jaeger installation, which will be created if the // named Jaeger resource is not present. If null, the named Jaeger resource // must exist. // +optional Install *JaegerInstallConfig `json:"install,omitempty"` }
JaegerAddonConfig configuration specific to Jaeger integration. XXX: this currently deviates from upstream, which creates a jaeger all-in-one deployment manually
func (*JaegerAddonConfig) DeepCopy ¶
func (in *JaegerAddonConfig) DeepCopy() *JaegerAddonConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JaegerAddonConfig.
func (*JaegerAddonConfig) DeepCopyInto ¶
func (in *JaegerAddonConfig) DeepCopyInto(out *JaegerAddonConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (JaegerAddonConfig) ResourceName ¶
func (c JaegerAddonConfig) ResourceName() string
ResourceName returns the resource name for the Jaeger resource, returning a sensible default if the Name field is not set ("jaeger").
type JaegerElasticsearchStorageConfig ¶
type JaegerElasticsearchStorageConfig struct { // NodeCount represents the number of elasticsearch nodes to create. // .Values.tracing.jaeger.elasticsearch.nodeCount, defaults to 3 // +optional NodeCount *int32 `json:"nodeCount,omitempty"` // Storage represents storage configuration for elasticsearch. // .Values.tracing.jaeger.elasticsearch.storage, raw yaml // XXX: RawExtension? // +optional Storage *v1.HelmValues `json:"storage,omitempty"` // RedundancyPolicy configures the redundancy policy for elasticsearch // .Values.tracing.jaeger.elasticsearch.redundancyPolicy, raw yaml // +optional RedundancyPolicy string `json:"redundancyPolicy,omitempty"` // IndexCleaner represents the configuration for the elasticsearch index cleaner // .Values.tracing.jaeger.elasticsearch.esIndexCleaner, raw yaml // XXX: RawExtension? // +optional IndexCleaner *v1.HelmValues `json:"indexCleaner,omitempty"` }
JaegerElasticsearchStorageConfig configures elasticsearch storage parameters for Jaeger
func (*JaegerElasticsearchStorageConfig) DeepCopy ¶
func (in *JaegerElasticsearchStorageConfig) DeepCopy() *JaegerElasticsearchStorageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JaegerElasticsearchStorageConfig.
func (*JaegerElasticsearchStorageConfig) DeepCopyInto ¶
func (in *JaegerElasticsearchStorageConfig) DeepCopyInto(out *JaegerElasticsearchStorageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JaegerIngressConfig ¶
type JaegerIngressConfig struct { Enablement `json:",inline"` // Metadata represents additional annotations/labels to be applied to the ingress/route. // +optional Metadata *MetadataConfig `json:"metadata,omitempty"` }
JaegerIngressConfig configures k8s Ingress or OpenShift Route for exposing Jaeger services.
func (*JaegerIngressConfig) DeepCopy ¶
func (in *JaegerIngressConfig) DeepCopy() *JaegerIngressConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JaegerIngressConfig.
func (*JaegerIngressConfig) DeepCopyInto ¶
func (in *JaegerIngressConfig) DeepCopyInto(out *JaegerIngressConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JaegerInstallConfig ¶
type JaegerInstallConfig struct { // Config represents the configuration of Jaeger behavior. // +optional Storage *JaegerStorageConfig `json:"storage,omitempty"` // Ingress configures k8s Ingress or OpenShift Route for Jaeger services // .Values.tracing.jaeger.ingress.enabled, false if null // +optional Ingress *JaegerIngressConfig `json:"ingress,omitempty"` }
JaegerInstallConfig configures a Jaeger installation.
func (*JaegerInstallConfig) DeepCopy ¶
func (in *JaegerInstallConfig) DeepCopy() *JaegerInstallConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JaegerInstallConfig.
func (*JaegerInstallConfig) DeepCopyInto ¶
func (in *JaegerInstallConfig) DeepCopyInto(out *JaegerInstallConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JaegerMemoryStorageConfig ¶
type JaegerMemoryStorageConfig struct { // MaxTraces to store // .Values.tracing.jaeger.memory.max_traces, defaults to 100000 // +optional MaxTraces *int64 `json:"maxTraces,omitempty"` }
JaegerMemoryStorageConfig configures in-memory storage parameters for Jaeger
func (*JaegerMemoryStorageConfig) DeepCopy ¶
func (in *JaegerMemoryStorageConfig) DeepCopy() *JaegerMemoryStorageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JaegerMemoryStorageConfig.
func (*JaegerMemoryStorageConfig) DeepCopyInto ¶
func (in *JaegerMemoryStorageConfig) DeepCopyInto(out *JaegerMemoryStorageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JaegerStorageConfig ¶
type JaegerStorageConfig struct { // Type of storage to use Type JaegerStorageType `json:"type,omitempty"` // Memory represents configuration of in-memory storage // implies .Values.tracing.jaeger.template=all-in-one // +optional Memory *JaegerMemoryStorageConfig `json:"memory,omitempty"` // Elasticsearch represents configuration of elasticsearch storage // implies .Values.tracing.jaeger.template=production-elasticsearch // +optional Elasticsearch *JaegerElasticsearchStorageConfig `json:"elasticsearch,omitempty"` }
JaegerStorageConfig configures the storage used by the Jaeger installation.
func (*JaegerStorageConfig) DeepCopy ¶
func (in *JaegerStorageConfig) DeepCopy() *JaegerStorageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JaegerStorageConfig.
func (*JaegerStorageConfig) DeepCopyInto ¶
func (in *JaegerStorageConfig) DeepCopyInto(out *JaegerStorageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JaegerStorageType ¶
type JaegerStorageType string
JaegerStorageType represents the type of storage configured for Jaeger
const ( // JaegerStorageTypeMemory represents in-memory storage JaegerStorageTypeMemory JaegerStorageType = "Memory" // JaegerStorageTypeElasticsearch represents Elasticsearch storage JaegerStorageTypeElasticsearch JaegerStorageType = "Elasticsearch" )
type KialiAddonConfig ¶
type KialiAddonConfig struct { Enablement `json:",inline"` // Name of Kiali CR, Namespace must match control plane namespace Name string `json:"name,omitempty"` // Install a Kiali resource if the named Kiali resource is not present. // +optional Install *KialiInstallConfig `json:"install,omitempty"` }
KialiAddonConfig is used to configure a kiali instance for use with the mesh
func (*KialiAddonConfig) DeepCopy ¶
func (in *KialiAddonConfig) DeepCopy() *KialiAddonConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KialiAddonConfig.
func (*KialiAddonConfig) DeepCopyInto ¶
func (in *KialiAddonConfig) DeepCopyInto(out *KialiAddonConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (KialiAddonConfig) ResourceName ¶
func (c KialiAddonConfig) ResourceName() string
ResourceName returns the resource name for the Kiali resource, returning a sensible default if the Name field is not set ("kiali").
type KialiDashboardConfig ¶
type KialiDashboardConfig struct { // ViewOnly configures view_only_mode for the dashboard // .Values.kiali.dashboard.viewOnlyMode // +optional ViewOnly *bool `json:"viewOnly,omitempty"` // XXX: should the user have a choice here, or should these be configured // automatically if they are enabled for the control plane installation? // Grafana endpoint will be configured based on Grafana configuration // +optional EnableGrafana *bool `json:"enableGrafana,omitempty"` // Prometheus endpoint will be configured based on Prometheus configuration // +optional EnablePrometheus *bool `json:"enablePrometheus,omitempty"` // Tracing endpoint will be configured based on Tracing configuration // +optional EnableTracing *bool `json:"enableTracing,omitempty"` }
KialiDashboardConfig configures the behavior of the kiali dashboard
func (*KialiDashboardConfig) DeepCopy ¶
func (in *KialiDashboardConfig) DeepCopy() *KialiDashboardConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KialiDashboardConfig.
func (*KialiDashboardConfig) DeepCopyInto ¶
func (in *KialiDashboardConfig) DeepCopyInto(out *KialiDashboardConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KialiDeploymentConfig ¶
type KialiDeploymentConfig struct { // +optional Resources *corev1.ResourceRequirements `json:"resources,omitempty"` // If specified, the pod's scheduling constraints // +optional Affinity *corev1.Affinity `json:"affinity,omitempty"` // Selector which must match a node's labels for the pod to be scheduled on that node. // More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // If specified, the kiali pod's tolerations. // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` }
KialiDeploymentConfig configures the kiali deployment +deprecated Deprecated: Use runtime.components.kiali instead.
func (*KialiDeploymentConfig) DeepCopy ¶
func (in *KialiDeploymentConfig) DeepCopy() *KialiDeploymentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KialiDeploymentConfig.
func (*KialiDeploymentConfig) DeepCopyInto ¶
func (in *KialiDeploymentConfig) DeepCopyInto(out *KialiDeploymentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KialiInstallConfig ¶
type KialiInstallConfig struct { // Dashboard configures the behavior of the kiali dashboard. // +optional Dashboard *KialiDashboardConfig `json:"dashboard,omitempty"` // Service is used to configure the k8s Service associated with the kiali // installation. // XXX: provided for upstream support, only ingress is used, and then only // for enablement and contextPath // +optional Service *ComponentServiceConfig `json:"service,omitempty"` // Deployment configures the kiali deployment. // +optional // +deprecated Deployment *KialiDeploymentConfig `json:"deployment,omitempty"` }
KialiInstallConfig is used to configure a kiali installation
func (*KialiInstallConfig) DeepCopy ¶
func (in *KialiInstallConfig) DeepCopy() *KialiInstallConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KialiInstallConfig.
func (*KialiInstallConfig) DeepCopyInto ¶
func (in *KialiInstallConfig) DeepCopyInto(out *KialiInstallConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LightstepTracerConfig ¶
type LightstepTracerConfig struct { }
LightstepTracerConfig configures a Lightstep tracer for use with the mesh
func (*LightstepTracerConfig) DeepCopy ¶
func (in *LightstepTracerConfig) DeepCopy() *LightstepTracerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LightstepTracerConfig.
func (*LightstepTracerConfig) DeepCopyInto ¶
func (in *LightstepTracerConfig) DeepCopyInto(out *LightstepTracerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogLevel ¶
type LogLevel string
LogLevel represents the logging level
const ( // LogLevelTrace trace logging level LogLevelTrace LogLevel = "trace" // LogLevelDebug debug logging level LogLevelDebug LogLevel = "debug" // LogLevelInfo info logging level LogLevelInfo LogLevel = "info" // LogLevelWarning warning logging level LogLevelWarning LogLevel = "warn" // LogLevelWarningProxy proxy warning logging level LogLevelWarningProxy LogLevel = "warning" // LogLevelError error logging level LogLevelError LogLevel = "error" // LogLevelCritical critical logging level LogLevelCritical LogLevel = "critical" // LogLevelOff disable logging LogLevelOff LogLevel = "off" )
type LoggingConfig ¶
type LoggingConfig struct { // ComponentLevels configures log level for specific envoy components // .Values.global.proxy.componentLogLevel, overridden by sidecar.istio.io/componentLogLevel // map of <component>:<level> // +optional ComponentLevels ComponentLogLevels `json:"componentLevels,omitempty"` // LogAsJSON enables JSON logging // .Values.global.logAsJson // +optional LogAsJSON *bool `json:"logAsJSON,omitempty"` }
LoggingConfig for control plane components
func (*LoggingConfig) DeepCopy ¶
func (in *LoggingConfig) DeepCopy() *LoggingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingConfig.
func (*LoggingConfig) DeepCopyInto ¶
func (in *LoggingConfig) DeepCopyInto(out *LoggingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshEndpointConfig ¶
type MeshEndpointConfig struct { // +optional FromRegistry string `json:"fromRegistry,omitempty"` // +optional FromCIDR string `json:"fromCIDR,omitempty"` }
MeshEndpointConfig specifies the endpoint of a mesh network. Only one of FromRegistry or FromCIDR may be specified
func (*MeshEndpointConfig) DeepCopy ¶
func (in *MeshEndpointConfig) DeepCopy() *MeshEndpointConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshEndpointConfig.
func (*MeshEndpointConfig) DeepCopyInto ¶
func (in *MeshEndpointConfig) DeepCopyInto(out *MeshEndpointConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshExpansionConfig ¶
type MeshExpansionConfig struct { Enablement `json:",inline"` // .Values.global.meshExpansion.useILB, true if not null, otherwise uses ingress gateway // +optional ILBGateway *GatewayConfig `json:"ilbGateway,omitempty"` }
MeshExpansionConfig configures aspects related to mesh expansion
func (*MeshExpansionConfig) DeepCopy ¶
func (in *MeshExpansionConfig) DeepCopy() *MeshExpansionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshExpansionConfig.
func (*MeshExpansionConfig) DeepCopyInto ¶
func (in *MeshExpansionConfig) DeepCopyInto(out *MeshExpansionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshGatewayConfig ¶
type MeshGatewayConfig struct { // +optional // +deprecated Service string `json:"service,omitempty"` // +optional RegistryServiceName string `json:"registryServiceName,omitempty"` // +optional Address string `json:"address,omitempty"` // +optional Port int32 `json:"port,omitempty"` }
MeshGatewayConfig specifies the gateway which should be used for accessing the network
func (*MeshGatewayConfig) DeepCopy ¶
func (in *MeshGatewayConfig) DeepCopy() *MeshGatewayConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshGatewayConfig.
func (*MeshGatewayConfig) DeepCopyInto ¶
func (in *MeshGatewayConfig) DeepCopyInto(out *MeshGatewayConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshNetworkConfig ¶
type MeshNetworkConfig struct { Endpoints []MeshEndpointConfig `json:"endpoints,omitempty"` Gateways []MeshGatewayConfig `json:"gateways,omitempty"` }
MeshNetworkConfig configures mesh networks for a multi-cluster mesh.
func (*MeshNetworkConfig) DeepCopy ¶
func (in *MeshNetworkConfig) DeepCopy() *MeshNetworkConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshNetworkConfig.
func (*MeshNetworkConfig) DeepCopyInto ¶
func (in *MeshNetworkConfig) DeepCopyInto(out *MeshNetworkConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetadataConfig ¶
type MetadataConfig struct { // +optional Labels map[string]string `json:"labels,omitempty"` // +optional Annotations map[string]string `json:"annotations,omitempty"` }
MetadataConfig represents additional metadata to be applied to resources
func (*MetadataConfig) DeepCopy ¶
func (in *MetadataConfig) DeepCopy() *MetadataConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataConfig.
func (*MetadataConfig) DeepCopyInto ¶
func (in *MetadataConfig) DeepCopyInto(out *MetadataConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MixerPolicyAdaptersConfig ¶
type MixerPolicyAdaptersConfig struct { // UseAdapterCRDs configures mixer to support deprecated mixer CRDs. // .Values.mixer.policy.adapters.useAdapterCRDs, removed in istio 1.4, defaults to false // Only supported in v1.0, where it defaulted to true // +optional UseAdapterCRDs *bool `json:"useAdapterCRDs,omitempty"` // Kubernetesenv configures the use of the kubernetesenv adapter. // .Values.mixer.policy.adapters.kubernetesenv.enabled, defaults to true // +optional KubernetesEnv *bool `json:"kubernetesenv,omitempty"` }
MixerPolicyAdaptersConfig configures policy adapters for mixer.
func (*MixerPolicyAdaptersConfig) DeepCopy ¶
func (in *MixerPolicyAdaptersConfig) DeepCopy() *MixerPolicyAdaptersConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MixerPolicyAdaptersConfig.
func (*MixerPolicyAdaptersConfig) DeepCopyInto ¶
func (in *MixerPolicyAdaptersConfig) DeepCopyInto(out *MixerPolicyAdaptersConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MixerPolicyConfig ¶
type MixerPolicyConfig struct { // EnableChecks configures whether or not policy checks should be enabled. // .Values.global.disablePolicyChecks | default "true" (false, inverted logic) // Set the following variable to false to disable policy checks by the Mixer. // Note that metrics will still be reported to the Mixer. // +optional EnableChecks *bool `json:"enableChecks,omitempty"` // FailOpen configures policy checks to fail if mixer cannot be reached. // .Values.global.policyCheckFailOpen, maps to MeshConfig.policyCheckFailOpen // policyCheckFailOpen allows traffic in cases when the mixer policy service cannot be reached. // Default is false which means the traffic is denied when the client is unable to connect to Mixer. // +optional FailOpen *bool `json:"failOpen,omitempty"` // SessionAffinity configures session affinity for sidecar policy connections. // .Values.mixer.policy.sessionAffinityEnabled // +optional SessionAffinity *bool `json:"sessionAffinity,omitempty"` // Adapters configures available adapters. // +optional Adapters *MixerPolicyAdaptersConfig `json:"adapters,omitempty"` }
MixerPolicyConfig configures a mixer implementation for policy .Values.mixer.policy.enabled
func (*MixerPolicyConfig) DeepCopy ¶
func (in *MixerPolicyConfig) DeepCopy() *MixerPolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MixerPolicyConfig.
func (*MixerPolicyConfig) DeepCopyInto ¶
func (in *MixerPolicyConfig) DeepCopyInto(out *MixerPolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MixerTelemetryAdaptersConfig ¶
type MixerTelemetryAdaptersConfig struct { // UseAdapterCRDs specifies whether or not mixer should support deprecated CRDs. // .Values.mixer.adapters.useAdapterCRDs, removed in istio 1.4, defaults to false // XXX: i think this can be removed completely // +optional UseAdapterCRDs *bool `json:"useAdapterCRDs,omitempty"` // KubernetesEnv enables support for the kubernetesenv adapter. // .Values.mixer.adapters.kubernetesenv.enabled, defaults to true // +optional KubernetesEnv *bool `json:"kubernetesenv,omitempty"` // Stdio enables and configures the stdio adapter. // +optional Stdio *MixerTelemetryStdioConfig `json:"stdio,omitempty"` }
MixerTelemetryAdaptersConfig is the configuration for mixer telemetry adapters.
func (*MixerTelemetryAdaptersConfig) DeepCopy ¶
func (in *MixerTelemetryAdaptersConfig) DeepCopy() *MixerTelemetryAdaptersConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MixerTelemetryAdaptersConfig.
func (*MixerTelemetryAdaptersConfig) DeepCopyInto ¶
func (in *MixerTelemetryAdaptersConfig) DeepCopyInto(out *MixerTelemetryAdaptersConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MixerTelemetryConfig ¶
type MixerTelemetryConfig struct { // SessionAffinity configures session affinity for sidecar telemetry connections. // .Values.mixer.telemetry.sessionAffinityEnabled, maps to MeshConfig.sidecarToTelemetrySessionAffinity // +optional SessionAffinity *bool `json:"sessionAffinity,omitempty"` // Loadshedding configuration for telemetry // .Values.mixer.telemetry.loadshedding // +optional Loadshedding *TelemetryLoadSheddingConfig `json:"loadshedding,omitempty"` // Batching settings used when sending telemetry. // +optional Batching *TelemetryBatchingConfig `json:"batching,omitempty"` // Adapters configures the adapters used by mixer telemetry. // +optional Adapters *MixerTelemetryAdaptersConfig `json:"adapters,omitempty"` }
MixerTelemetryConfig is the configuration for legacy, v1 mixer telemetry. .Values.telemetry.v1.enabled
func (*MixerTelemetryConfig) DeepCopy ¶
func (in *MixerTelemetryConfig) DeepCopy() *MixerTelemetryConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MixerTelemetryConfig.
func (*MixerTelemetryConfig) DeepCopyInto ¶
func (in *MixerTelemetryConfig) DeepCopyInto(out *MixerTelemetryConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MixerTelemetryStdioConfig ¶
type MixerTelemetryStdioConfig struct { // .Values.mixer.adapters.stdio.enabled Enablement `json:",inline"` // OutputAsJSON if true. // .Values.mixer.adapters.stdio.outputAsJson, defaults to false // +optional OutputAsJSON *bool `json:"outputAsJSON,omitempty"` }
MixerTelemetryStdioConfig configures the stdio adapter for mixer telemetry.
func (*MixerTelemetryStdioConfig) DeepCopy ¶
func (in *MixerTelemetryStdioConfig) DeepCopy() *MixerTelemetryStdioConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MixerTelemetryStdioConfig.
func (*MixerTelemetryStdioConfig) DeepCopyInto ¶
func (in *MixerTelemetryStdioConfig) DeepCopyInto(out *MixerTelemetryStdioConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiClusterConfig ¶
type MultiClusterConfig struct { Enablement `json:",inline"` // .Values.global.meshNetworks // XXX: if non-empty, local cluster network should be configured as: // <spec.cluster.network>: // endpoints: // - fromRegistry: <spec.cluster.name> // gateways: // - service: <ingress-gateway-service-name> // port: 443 # mtls port // +optional MeshNetworks map[string]MeshNetworkConfig `json:"meshNetworks,omitempty"` }
MultiClusterConfig configures aspects related to multi-cluster. implies the following: adds external to RequestedNetworkView (ISTIO_META_REQUESTED_NETWORK_VIEW) for egress gateway adds "global" and "{{ valueOrDefault .DeploymentMeta.Namespace \"default\" }}.global" to pod dns search suffixes
func (*MultiClusterConfig) DeepCopy ¶
func (in *MultiClusterConfig) DeepCopy() *MultiClusterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterConfig.
func (*MultiClusterConfig) DeepCopyInto ¶
func (in *MultiClusterConfig) DeepCopyInto(out *MultiClusterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenShiftRouteConfig ¶
type OpenShiftRouteConfig struct {
Enablement `json:",inline"`
}
OpenShiftRouteConfig represents the Gateway ↔ OpenShift Route integration
func (*OpenShiftRouteConfig) DeepCopy ¶
func (in *OpenShiftRouteConfig) DeepCopy() *OpenShiftRouteConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftRouteConfig.
func (*OpenShiftRouteConfig) DeepCopyInto ¶
func (in *OpenShiftRouteConfig) DeepCopyInto(out *OpenShiftRouteConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodAntiAffinity ¶
type PodAntiAffinity struct { *corev1.PodAntiAffinity `json:",inline"` // +optional RequiredDuringScheduling []PodAntiAffinityTerm `json:"requiredDuringScheduling,omitempty"` // +optional PreferredDuringScheduling []PodAntiAffinityTerm `json:"preferredDuringScheduling,omitempty"` }
PodAntiAffinity configures anti affinity for pod scheduling
func (*PodAntiAffinity) DeepCopy ¶
func (in *PodAntiAffinity) DeepCopy() *PodAntiAffinity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAntiAffinity.
func (*PodAntiAffinity) DeepCopyInto ¶
func (in *PodAntiAffinity) DeepCopyInto(out *PodAntiAffinity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodAntiAffinityTerm ¶
type PodAntiAffinityTerm struct { metav1.LabelSelectorRequirement `json:",inline"` // This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching // the labelSelector in the specified namespaces, where co-located is defined as running on a node // whose value of the label with key topologyKey matches that of any node on which any of the // selected pods is running. // Empty topologyKey is not allowed. // +optional TopologyKey string `json:"topologyKey,omitempty"` }
PodAntiAffinityTerm is a simplified version of corev1.PodAntiAffinityTerm
func (*PodAntiAffinityTerm) DeepCopy ¶
func (in *PodAntiAffinityTerm) DeepCopy() *PodAntiAffinityTerm
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAntiAffinityTerm.
func (*PodAntiAffinityTerm) DeepCopyInto ¶
func (in *PodAntiAffinityTerm) DeepCopyInto(out *PodAntiAffinityTerm)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodDisruptionBudget ¶
type PodDisruptionBudget struct { Enablement `json:",inline"` // +optional MinAvailable *intstr.IntOrString `json:"minAvailable,omitempty"` MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"` }
PodDisruptionBudget details XXX: currently only configurable globally (i.e. no component values.yaml equivalent)
func (*PodDisruptionBudget) DeepCopy ¶
func (in *PodDisruptionBudget) DeepCopy() *PodDisruptionBudget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodDisruptionBudget.
func (*PodDisruptionBudget) DeepCopyInto ¶
func (in *PodDisruptionBudget) DeepCopyInto(out *PodDisruptionBudget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodRuntimeConfig ¶
type PodRuntimeConfig struct { CommonPodRuntimeConfig `json:",inline"` // Metadata allows additional annotations/labels to be applied to the pod // .Values.*.podAnnotations // XXX: currently, additional lables are not supported // +optional Metadata *MetadataConfig `json:"metadata,omitempty"` // If specified, the pod's scheduling constraints // +optional // .Values.podAntiAffinityLabelSelector, podAntiAffinityTermLabelSelector, nodeSelector // NodeAffinity is not supported at this time // PodAffinity is not supported at this time Affinity *Affinity `json:"affinity,omitempty"` }
PodRuntimeConfig is used to customize pod configuration for a component
func (*PodRuntimeConfig) DeepCopy ¶
func (in *PodRuntimeConfig) DeepCopy() *PodRuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodRuntimeConfig.
func (*PodRuntimeConfig) DeepCopyInto ¶
func (in *PodRuntimeConfig) DeepCopyInto(out *PodRuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PolicyConfig ¶
type PolicyConfig struct { // Required, the policy implementation // defaults to Istiod 1.6+, Mixer pre-1.6 Type PolicyType `json:"type,omitempty"` // Mixer configuration (legacy, v1) // .Values.mixer.policy.enabled // +optional Mixer *MixerPolicyConfig `json:"mixer,omitempty"` // Remote mixer configuration (legacy, v1) // .Values.global.remotePolicyAddress // +optional Remote *RemotePolicyConfig `json:"remote,omitempty"` }
PolicyConfig configures policy aspects of the mesh.
func (*PolicyConfig) DeepCopy ¶
func (in *PolicyConfig) DeepCopy() *PolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyConfig.
func (*PolicyConfig) DeepCopyInto ¶
func (in *PolicyConfig) DeepCopyInto(out *PolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PolicyType ¶
type PolicyType string
PolicyType represents the type of policy implementation used by the mesh.
const ( // PolicyTypeNone represents disabling of policy // XXX: note, this doesn't appear to affect Istio 1.6, i.e. no different than Istiod setting PolicyTypeNone PolicyType = "None" // PolicyTypeMixer represents mixer, v1 implementation PolicyTypeMixer PolicyType = "Mixer" // PolicyTypeRemote represents remote mixer, v1 implementation PolicyTypeRemote PolicyType = "Remote" // PolicyTypeIstiod represents istio, v2 implementation PolicyTypeIstiod PolicyType = "Istiod" )
type PrometheusAddonConfig ¶
type PrometheusAddonConfig struct { Enablement `json:",inline"` // MetricsExpiryDuration is the duration to hold metrics. (mixer/v1 only) // .Values.mixer.adapters.prometheus.metricsExpiryDuration, defaults to 10m // +optional MetricsExpiryDuration string `json:"metricsExpiryDuration,omitempty"` // Scrape metrics from the pod if true. (maistra-2.0+) // defaults to true // .Values.meshConfig.enablePrometheusMerge // +optional Scrape *bool `json:"scrape,omitempty"` // Install configuration if not using an existing prometheus installation. // .Values.prometheus.enabled, if not null // +optional Install *PrometheusInstallConfig `json:"install,omitempty"` // Address of existing prometheus installation // implies .Values.kiali.prometheusAddr // XXX: do we need to do anything to configure credentials for accessing // the prometheus server? // +optional Address *string `json:"address,omitempty"` }
PrometheusAddonConfig configures a prometheus instance to be used by the control plane. Only one of Install or Address may be specified
func (*PrometheusAddonConfig) DeepCopy ¶
func (in *PrometheusAddonConfig) DeepCopy() *PrometheusAddonConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusAddonConfig.
func (*PrometheusAddonConfig) DeepCopyInto ¶
func (in *PrometheusAddonConfig) DeepCopyInto(out *PrometheusAddonConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrometheusInstallConfig ¶
type PrometheusInstallConfig struct { // SelfManaged specifies whether or not the entire install should be managed // by Maistra (true) or the Prometheus operator (false, not supported). // Governs use of either prometheus charts or prometheusOperator charts. // +optional SelfManaged bool `json:"selfManaged,omitempty"` // Retention specifies how long metrics should be retained by prometheus. // .Values.prometheus.retention, defaults to 6h // +optional Retention string `json:"retention,omitempty"` // ScrapeInterval specifies how frequently prometheus should scrape pods for // metrics. // .Values.prometheus.scrapeInterval, defaults to 15s // +optional ScrapeInterval string `json:"scrapeInterval,omitempty"` // Service allows for customization of the k8s Service associated with the // prometheus installation. // +optional Service *ComponentServiceConfig `json:"service,omitempty"` // UseTLS for the prometheus server // .Values.prometheus.provisionPrometheusCert // 1.6+ // ProvisionCert bool // this seems to overlap with provision cert, as this manifests something similar to the above // .Values.prometheus.security.enabled, version < 1.6 // EnableSecurity bool // +optional UseTLS *bool `json:"useTLS,omitempty"` }
PrometheusInstallConfig represents the configuration to be applied when installing a new instance of prometheus for use with the mesh.
func (*PrometheusInstallConfig) DeepCopy ¶
func (in *PrometheusInstallConfig) DeepCopy() *PrometheusInstallConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusInstallConfig.
func (*PrometheusInstallConfig) DeepCopyInto ¶
func (in *PrometheusInstallConfig) DeepCopyInto(out *PrometheusInstallConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyAccessLoggingConfig ¶
type ProxyAccessLoggingConfig struct { // File configures access logging to the file system // +optional File *ProxyFileAccessLogConfig `json:"file,omitempty"` // File configures access logging to an envoy service // .Values.global.proxy.envoyAccessLogService // +optional EnvoyService *ProxyEnvoyServiceConfig `json:"envoyService,omitempty"` }
ProxyAccessLoggingConfig configures access logging for proxies. Multiple access logs can be configured.
func (*ProxyAccessLoggingConfig) DeepCopy ¶
func (in *ProxyAccessLoggingConfig) DeepCopy() *ProxyAccessLoggingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyAccessLoggingConfig.
func (*ProxyAccessLoggingConfig) DeepCopyInto ¶
func (in *ProxyAccessLoggingConfig) DeepCopyInto(out *ProxyAccessLoggingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyConfig ¶
type ProxyConfig struct { // Logging configures logging for the sidecar. // e.g. .Values.global.proxy.logLevel // +optional Logging *ProxyLoggingConfig `json:"logging,omitempty"` // Networking represents network settings to be configured for the sidecars. // +optional Networking *ProxyNetworkingConfig `json:"networking,omitempty"` // Runtime is used to customize runtime configuration for the sidecar container. // +optional Runtime *ProxyRuntimeConfig `json:"runtime,omitempty"` // Injection is used to customize sidecar injection for the mesh. // +optional Injection *ProxyInjectionConfig `json:"injection,omitempty"` // AdminPort configures the admin port exposed by the sidecar. // maps to defaultConfig.proxyAdminPort, defaults to 15000 // XXX: currently not configurable in charts // +optional AdminPort int32 `json:"adminPort,omitempty"` // Concurrency configures the number of threads that should be run by the sidecar. // .Values.global.proxy.concurrency, maps to defaultConfig.concurrency // XXX: removed in 1.7 // XXX: this is defaulted to 2 in our values.yaml, but should probably be 0 // +optional Concurrency *int32 `json:"concurrency,omitempty"` // AccessLogging configures access logging for proxies. // +optional AccessLogging *ProxyAccessLoggingConfig `json:"accessLogging,omitempty"` // EnvoyMetricsService configures reporting of Envoy metrics to an external // service. // .Values.global.proxy.envoyMetricsService // +optional EnvoyMetricsService *ProxyEnvoyServiceConfig `json:"envoyMetricsService,omitempty"` }
ProxyConfig configures the default sidecar behavior for workloads.
func (*ProxyConfig) DeepCopy ¶
func (in *ProxyConfig) DeepCopy() *ProxyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyConfig.
func (*ProxyConfig) DeepCopyInto ¶
func (in *ProxyConfig) DeepCopyInto(out *ProxyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyDNSConfig ¶
type ProxyDNSConfig struct { // SearchSuffixes are additional search suffixes to be used when resolving // names. // .Values.global.podDNSSearchNamespaces // Custom DNS config for the pod to resolve names of services in other // clusters. Use this to add additional search domains, and other settings. // see // https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#dns-config // This does not apply to gateway pods as they typically need a different // set of DNS settings than the normal application pods (e.g., in // multicluster scenarios). // NOTE: If using templates, follow the pattern in the commented example below. // podDNSSearchNamespaces: // - global // - "{{ valueOrDefault .DeploymentMeta.Namespace \"default\" }}.global" // +optional SearchSuffixes []string `json:"searchSuffixes,omitempty"` // RefreshRate configures the DNS refresh rate for Envoy cluster of type STRICT_DNS // This must be given it terms of seconds. For example, 300s is valid but 5m is invalid. // .Values.global.proxy.dnsRefreshRate, default 300s // +optional RefreshRate string `json:"refreshRate,omitempty"` }
ProxyDNSConfig is used to configure aspects of the sidecar's DNS usage.
func (*ProxyDNSConfig) DeepCopy ¶
func (in *ProxyDNSConfig) DeepCopy() *ProxyDNSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyDNSConfig.
func (*ProxyDNSConfig) DeepCopyInto ¶
func (in *ProxyDNSConfig) DeepCopyInto(out *ProxyDNSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyEnvoyServiceConfig ¶
type ProxyEnvoyServiceConfig struct { // Enable sending Envoy metrics to the service. // .Values.global.proxy.(envoyAccessLogService|envoyMetricsService).enabled Enablement `json:",inline"` // Address of the service specified as host:port. // .Values.global.proxy.(envoyAccessLogService|envoyMetricsService).host // .Values.global.proxy.(envoyAccessLogService|envoyMetricsService).port // +optional Address string `json:"address,omitempty"` // TCPKeepalive configures keepalive settings to use when connecting to the // service. // .Values.global.proxy.(envoyAccessLogService|envoyMetricsService).tcpKeepalive // +optional TCPKeepalive *EnvoyServiceTCPKeepalive `json:"tcpKeepalive,omitempty"` // TLSSettings configures TLS settings to use when connecting to the service. // .Values.global.proxy.(envoyAccessLogService|envoyMetricsService).tlsSettings // +optional TLSSettings *EnvoyServiceClientTLSSettings `json:"tlsSettings,omitempty"` }
ProxyEnvoyServiceConfig configures reporting to an external Envoy service.
func (*ProxyEnvoyServiceConfig) DeepCopy ¶
func (in *ProxyEnvoyServiceConfig) DeepCopy() *ProxyEnvoyServiceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyEnvoyServiceConfig.
func (*ProxyEnvoyServiceConfig) DeepCopyInto ¶
func (in *ProxyEnvoyServiceConfig) DeepCopyInto(out *ProxyEnvoyServiceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyFileAccessLogConfig ¶
type ProxyFileAccessLogConfig struct { // Name is the name of the file to which access log entries will be written. // If Name is not specified, no log entries will be written to a file. // .Values.global.proxy.accessLogFile // +optional Name string `json:"name,omitempty"` // Encoding to use when writing access log entries. Currently, JSON or TEXT // may be specified. // .Values.global.proxy.accessLogEncoding // +optional Encoding string `json:"encoding,omitempty"` // Format to use when writing access log entries. // .Values.global.proxy.accessLogFormat // +optional Format string `json:"format,omitempty"` }
ProxyFileAccessLogConfig configures details related to file access log
func (*ProxyFileAccessLogConfig) DeepCopy ¶
func (in *ProxyFileAccessLogConfig) DeepCopy() *ProxyFileAccessLogConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyFileAccessLogConfig.
func (*ProxyFileAccessLogConfig) DeepCopyInto ¶
func (in *ProxyFileAccessLogConfig) DeepCopyInto(out *ProxyFileAccessLogConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyInboundTrafficControlConfig ¶
type ProxyInboundTrafficControlConfig struct { // InterceptionMode specifies how traffic is directed through the sidecar. // maps to meshConfig.defaultConfig.interceptionMode, overridden by sidecar.istio.io/interceptionMode // XXX: currently not configurable through values.yaml // +optional InterceptionMode ProxyNetworkInterceptionMode `json:"interceptionMode,omitempty"` // IncludedPorts to be routed through the sidecar. * or comma separated list of integers // .Values.global.proxy.includeInboundPorts, defaults to * (all ports), overridden by traffic.sidecar.istio.io/includeInboundPorts // +optional IncludedPorts []string `json:"includedPorts,omitempty"` // ExcludedPorts to be routed around the sidecar. // .Values.global.proxy.excludeInboundPorts, defaults to empty list, overridden by traffic.sidecar.istio.io/excludeInboundPorts // +optional ExcludedPorts []int32 `json:"excludedPorts,omitempty"` }
ProxyInboundTrafficControlConfig configures what inbound traffic is routed through the sidecar.
func (*ProxyInboundTrafficControlConfig) DeepCopy ¶
func (in *ProxyInboundTrafficControlConfig) DeepCopy() *ProxyInboundTrafficControlConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyInboundTrafficControlConfig.
func (*ProxyInboundTrafficControlConfig) DeepCopyInto ¶
func (in *ProxyInboundTrafficControlConfig) DeepCopyInto(out *ProxyInboundTrafficControlConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyInitContainerConfig ¶
type ProxyInitContainerConfig struct { // Runtime configures customization of the init container (e.g. resources) // +optional Runtime *ContainerConfig `json:"runtime,omitempty"` }
ProxyInitContainerConfig configures execution aspects for the init container
func (*ProxyInitContainerConfig) DeepCopy ¶
func (in *ProxyInitContainerConfig) DeepCopy() *ProxyInitContainerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyInitContainerConfig.
func (*ProxyInitContainerConfig) DeepCopyInto ¶
func (in *ProxyInitContainerConfig) DeepCopyInto(out *ProxyInitContainerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyInjectionConfig ¶
type ProxyInjectionConfig struct { // AutoInject configures automatic injection of sidecar proxies // .Values.global.proxy.autoInject // .Values.sidecarInjectorWebhook.enableNamespacesByDefault // +optional AutoInject *bool `json:"autoInject,omitempty"` // AlwaysInjectSelector allows specification of a label selector that when // matched will always inject a sidecar into the pod. // .Values.sidecarInjectorWebhook.alwaysInjectSelector // +optional AlwaysInjectSelector []metav1.LabelSelector `json:"alwaysInjectSelector,omitempty"` // NeverInjectSelector allows specification of a label selector that when // matched will never inject a sidecar into the pod. This takes precedence // over AlwaysInjectSelector. // .Values.sidecarInjectorWebhook.neverInjectSelector // +optional NeverInjectSelector []metav1.LabelSelector `json:"neverInjectSelector,omitempty"` // InjectedAnnotations allows specification of additional annotations to be // added to pods that have sidecars injected in them. // .Values.sidecarInjectorWebhook.injectedAnnotations // +optional InjectedAnnotations map[string]string `json:"injectedAnnotations,omitempty"` }
ProxyInjectionConfig configures sidecar injection for the mesh.
func (*ProxyInjectionConfig) DeepCopy ¶
func (in *ProxyInjectionConfig) DeepCopy() *ProxyInjectionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyInjectionConfig.
func (*ProxyInjectionConfig) DeepCopyInto ¶
func (in *ProxyInjectionConfig) DeepCopyInto(out *ProxyInjectionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyLoggingConfig ¶
type ProxyLoggingConfig struct { // Level the log level // .Values.global.proxy.logLevel, overridden by sidecar.istio.io/logLevel // +optional Level LogLevel `json:"level,omitempty"` // ComponentLevels configures log level for specific envoy components // .Values.global.proxy.componentLogLevel, overridden by sidecar.istio.io/componentLogLevel // map of <component>:<level> // +optional ComponentLevels ComponentLogLevels `json:"componentLevels,omitempty"` }
ProxyLoggingConfig configures logging for a component
func (*ProxyLoggingConfig) DeepCopy ¶
func (in *ProxyLoggingConfig) DeepCopy() *ProxyLoggingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyLoggingConfig.
func (*ProxyLoggingConfig) DeepCopyInto ¶
func (in *ProxyLoggingConfig) DeepCopyInto(out *ProxyLoggingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyNetworkAutoProtocolDetectionConfig ¶
type ProxyNetworkAutoProtocolDetectionConfig struct { // DetectionTimeout specifies how much time the sidecar will spend determining // the protocol being used for the connection before reverting to raw TCP. // .Values.global.proxy.protocolDetectionTimeout, maps to protocolDetectionTimeout // +optional Timeout string `json:"timeout,omitempty"` // EnableInboundSniffing enables protocol sniffing on inbound traffic. // .Values.pilot.enableProtocolSniffingForInbound // only supported for v1.1 // +optional Inbound *bool `json:"inbound,omitempty"` // EnableOutboundSniffing enables protocol sniffing on outbound traffic. // .Values.pilot.enableProtocolSniffingForOutbound // only supported for v1.1 // +optional Outbound *bool `json:"outbound,omitempty"` }
ProxyNetworkAutoProtocolDetectionConfig configures automatic protocol detection for the proxies.
func (*ProxyNetworkAutoProtocolDetectionConfig) DeepCopy ¶
func (in *ProxyNetworkAutoProtocolDetectionConfig) DeepCopy() *ProxyNetworkAutoProtocolDetectionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyNetworkAutoProtocolDetectionConfig.
func (*ProxyNetworkAutoProtocolDetectionConfig) DeepCopyInto ¶
func (in *ProxyNetworkAutoProtocolDetectionConfig) DeepCopyInto(out *ProxyNetworkAutoProtocolDetectionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyNetworkInitConfig ¶
type ProxyNetworkInitConfig struct { // Type of the network initialization implementation. Type ProxyNetworkInitType `json:"type,omitempty"` // InitContainer configures the use of a pod init container for initializing // the pod's networking. // istio_cni.enabled = false, if InitContainer is used // +optional InitContainer *ProxyInitContainerConfig `json:"initContainer,omitempty"` }
ProxyNetworkInitConfig is used to configure how the pod's networking through the proxy is initialized.
func (*ProxyNetworkInitConfig) DeepCopy ¶
func (in *ProxyNetworkInitConfig) DeepCopy() *ProxyNetworkInitConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyNetworkInitConfig.
func (*ProxyNetworkInitConfig) DeepCopyInto ¶
func (in *ProxyNetworkInitConfig) DeepCopyInto(out *ProxyNetworkInitConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyNetworkInitType ¶
type ProxyNetworkInitType string
ProxyNetworkInitType represents the type of initializer to use for network initialization
const ( // ProxyNetworkInitTypeCNI to use CNI for network initialization ProxyNetworkInitTypeCNI ProxyNetworkInitType = "CNI" // ProxyNetworkInitTypeInitContainer to use an init container for network initialization ProxyNetworkInitTypeInitContainer ProxyNetworkInitType = "InitContainer" )
type ProxyNetworkInterceptionMode ¶
type ProxyNetworkInterceptionMode string
ProxyNetworkInterceptionMode represents the InterceptMode types.
const ( // ProxyNetworkInterceptionModeRedirect requests iptables use REDIRECT to route inbound traffic through the sidecar. ProxyNetworkInterceptionModeRedirect ProxyNetworkInterceptionMode = "REDIRECT" // ProxyNetworkInterceptionModeTProxy requests iptables use TPROXY to route inbound traffic through the sidecar. ProxyNetworkInterceptionModeTProxy ProxyNetworkInterceptionMode = "TPROXY" )
type ProxyNetworkProtocolConfig ¶
type ProxyNetworkProtocolConfig struct { // AutoDetect configures automatic detection of connection protocols. // +optional AutoDetect *ProxyNetworkAutoProtocolDetectionConfig `json:"autoDetect,omitempty"` }
ProxyNetworkProtocolConfig configures the sidecar's protocol handling.
func (*ProxyNetworkProtocolConfig) DeepCopy ¶
func (in *ProxyNetworkProtocolConfig) DeepCopy() *ProxyNetworkProtocolConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyNetworkProtocolConfig.
func (*ProxyNetworkProtocolConfig) DeepCopyInto ¶
func (in *ProxyNetworkProtocolConfig) DeepCopyInto(out *ProxyNetworkProtocolConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyNetworkingConfig ¶
type ProxyNetworkingConfig struct { // ClusterDomain represents the domain for the cluster, defaults to cluster.local // .Values.global.proxy.clusterDomain // +optional ClusterDomain string `json:"clusterDomain,omitempty"` // maps to meshConfig.defaultConfig.connectionTimeout, defaults to 10s // XXX: currently not exposed through values.yaml // +optional ConnectionTimeout string `json:"connectionTimeout,omitempty"` // MaxConnectionAge limits how long a sidecar can be connected to pilot. // This may be used to balance load across pilot instances, at the cost of // system churn. // .Values.pilot.keepaliveMaxServerConnectionAge // +optional MaxConnectionAge string `json:"maxConnectionAge,omitempty"` // Initialization is used to specify how the pod's networking through the // proxy is initialized. This configures the use of CNI or an init container. // +optional Initialization *ProxyNetworkInitConfig `json:"initialization,omitempty"` // TrafficControl configures what network traffic is routed through the proxy. // +optional TrafficControl *ProxyTrafficControlConfig `json:"trafficControl,omitempty"` // Protocol configures how the sidecar works with application protocols. // +optional Protocol *ProxyNetworkProtocolConfig `json:"protocol,omitempty"` // DNS configures aspects of the sidecar's usage of DNS // +optional DNS *ProxyDNSConfig `json:"dns,omitempty"` }
ProxyNetworkingConfig is used to configure networking aspects of the sidecar.
func (*ProxyNetworkingConfig) DeepCopy ¶
func (in *ProxyNetworkingConfig) DeepCopy() *ProxyNetworkingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyNetworkingConfig.
func (*ProxyNetworkingConfig) DeepCopyInto ¶
func (in *ProxyNetworkingConfig) DeepCopyInto(out *ProxyNetworkingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyOutboundTrafficControlConfig ¶
type ProxyOutboundTrafficControlConfig struct { // IncludedIPRanges specifies which outbound IP ranges should be routed through the sidecar. // .Values.global.proxy.includeIPRanges, overridden by traffic.sidecar.istio.io/includeOutboundIPRanges // * or comma separated list of CIDR // +optional IncludedIPRanges []string `json:"includedIPRanges,omitempty"` // ExcludedIPRanges specifies which outbound IP ranges should _not_ be routed through the sidecar. // .Values.global.proxy.excludeIPRanges, overridden by traffic.sidecar.istio.io/excludeOutboundIPRanges // * or comma separated list of CIDR // +optional ExcludedIPRanges []string `json:"excludedIPRanges,omitempty"` // ExcludedPorts specifies which outbound ports should _not_ be routed through the sidecar. // .Values.global.proxy.excludeOutboundPorts, overridden by traffic.sidecar.istio.io/excludeOutboundPorts // comma separated list of integers // +optional ExcludedPorts []int32 `json:"excludedPorts,omitempty"` // Policy specifies what outbound traffic is allowed through the sidecar. // .Values.global.outboundTrafficPolicy.mode // +optional Policy ProxyOutboundTrafficPolicy `json:"policy,omitempty"` }
ProxyOutboundTrafficControlConfig configure what outbound traffic is routed through the sidecar
func (*ProxyOutboundTrafficControlConfig) DeepCopy ¶
func (in *ProxyOutboundTrafficControlConfig) DeepCopy() *ProxyOutboundTrafficControlConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyOutboundTrafficControlConfig.
func (*ProxyOutboundTrafficControlConfig) DeepCopyInto ¶
func (in *ProxyOutboundTrafficControlConfig) DeepCopyInto(out *ProxyOutboundTrafficControlConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyOutboundTrafficPolicy ¶
type ProxyOutboundTrafficPolicy string
ProxyOutboundTrafficPolicy represents the outbound traffic policy type.
const ( // ProxyOutboundTrafficPolicyAllowAny allows all traffic through the sidecar. ProxyOutboundTrafficPolicyAllowAny ProxyOutboundTrafficPolicy = "ALLOW_ANY" // ProxyOutboundTrafficPolicyRegistryOnly only allows traffic destined for a // service in the service registry through the sidecar. This limits outbound // traffic to only other services in the mesh. ProxyOutboundTrafficPolicyRegistryOnly ProxyOutboundTrafficPolicy = "REGISTRY_ONLY" )
type ProxyReadinessConfig ¶
type ProxyReadinessConfig struct { // RewriteApplicationProbes specifies whether or not the injector should // rewrite application container probes to be routed through the sidecar. // .Values.sidecarInjectorWebhook.rewriteAppHTTPProbe, defaults to false // rewrite probes for application pods to route through sidecar // +optional RewriteApplicationProbes bool `json:"rewriteApplicationProbes,omitempty"` // StatusPort specifies the port number to be used for status. // .Values.global.proxy.statusPort, overridden by status.sidecar.istio.io/port, defaults to 15020 // Default port for Pilot agent health checks. A value of 0 will disable health checking. // XXX: this has no affect on which port is actually used for status. // +optional StatusPort int32 `json:"statusPort,omitempty"` // InitialDelaySeconds specifies the initial delay for the readiness probe // .Values.global.proxy.readinessInitialDelaySeconds, overridden by readiness.status.sidecar.istio.io/initialDelaySeconds, defaults to 1 // +optional InitialDelaySeconds int32 `json:"initialDelaySeconds,omitempty"` // PeriodSeconds specifies the period over which the probe is checked. // .Values.global.proxy.readinessPeriodSeconds, overridden by readiness.status.sidecar.istio.io/periodSeconds, defaults to 2 // +optional PeriodSeconds int32 `json:"periodSeconds,omitempty"` // FailureThreshold represents the number of consecutive failures before the container is marked as not ready. // .Values.global.proxy.readinessFailureThreshold, overridden by readiness.status.sidecar.istio.io/failureThreshold, defaults to 30 // +optional FailureThreshold int32 `json:"failureThreshold,omitempty"` }
ProxyReadinessConfig configures the readiness probe for the sidecar.
func (*ProxyReadinessConfig) DeepCopy ¶
func (in *ProxyReadinessConfig) DeepCopy() *ProxyReadinessConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyReadinessConfig.
func (*ProxyReadinessConfig) DeepCopyInto ¶
func (in *ProxyReadinessConfig) DeepCopyInto(out *ProxyReadinessConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyRuntimeConfig ¶
type ProxyRuntimeConfig struct { // Readiness configures the readiness probe behavior for the injected pod. // +optional Readiness *ProxyReadinessConfig `json:"readiness,omitempty"` // Container configures the sidecar container. // +optional Container *ContainerConfig `json:"container,omitempty"` }
ProxyRuntimeConfig customizes the runtime parameters of the sidecar container.
func (*ProxyRuntimeConfig) DeepCopy ¶
func (in *ProxyRuntimeConfig) DeepCopy() *ProxyRuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyRuntimeConfig.
func (*ProxyRuntimeConfig) DeepCopyInto ¶
func (in *ProxyRuntimeConfig) DeepCopyInto(out *ProxyRuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyTrafficControlConfig ¶
type ProxyTrafficControlConfig struct { // Inbound configures what inbound traffic is routed through the sidecar // traffic.sidecar.istio.io/includeInboundPorts defaults to * (all ports) // +optional Inbound ProxyInboundTrafficControlConfig `json:"inbound,omitempty"` // Outbound configures what outbound traffic is routed through the sidecar. // +optional Outbound ProxyOutboundTrafficControlConfig `json:"outbound,omitempty"` }
ProxyTrafficControlConfig configures what and how traffic is routed through the sidecar.
func (*ProxyTrafficControlConfig) DeepCopy ¶
func (in *ProxyTrafficControlConfig) DeepCopy() *ProxyTrafficControlConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyTrafficControlConfig.
func (*ProxyTrafficControlConfig) DeepCopyInto ¶
func (in *ProxyTrafficControlConfig) DeepCopyInto(out *ProxyTrafficControlConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReadinessMap ¶
func (ReadinessMap) DeepCopy ¶
func (in ReadinessMap) DeepCopy() ReadinessMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadinessMap.
func (ReadinessMap) DeepCopyInto ¶
func (in ReadinessMap) DeepCopyInto(out *ReadinessMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReadinessStatus ¶
type ReadinessStatus struct { // The readiness status of components // +optional Components ReadinessMap `json:"components,omitempty"` }
ReadinessStatus contains readiness information for each deployed component.
func (*ReadinessStatus) DeepCopy ¶
func (in *ReadinessStatus) DeepCopy() *ReadinessStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadinessStatus.
func (*ReadinessStatus) DeepCopyInto ¶
func (in *ReadinessStatus) DeepCopyInto(out *ReadinessStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RemotePolicyConfig ¶
type RemotePolicyConfig struct { // Address represents the address of the mixer server. // .Values.global.remotePolicyAddress, maps to MeshConfig.mixerCheckServer Address string `json:"address,omitempty"` // CreateServices specifies whether or not a k8s Service should be created for the remote policy server. // .Values.global.createRemoteSvcEndpoints // +optional CreateService *bool `json:"createService,omitempty"` // EnableChecks configures whether or not policy checks should be enabled. // .Values.global.disablePolicyChecks | default "true" (false, inverted logic) // Set the following variable to false to disable policy checks by the Mixer. // Note that metrics will still be reported to the Mixer. // +optional EnableChecks *bool `json:"enableChecks,omitempty"` // FailOpen configures policy checks to fail if mixer cannot be reached. // .Values.global.policyCheckFailOpen, maps to MeshConfig.policyCheckFailOpen // policyCheckFailOpen allows traffic in cases when the mixer policy service cannot be reached. // Default is false which means the traffic is denied when the client is unable to connect to Mixer. // +optional FailOpen *bool `json:"failOpen,omitempty"` }
RemotePolicyConfig configures a remote mixer instance for policy
func (*RemotePolicyConfig) DeepCopy ¶
func (in *RemotePolicyConfig) DeepCopy() *RemotePolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemotePolicyConfig.
func (*RemotePolicyConfig) DeepCopyInto ¶
func (in *RemotePolicyConfig) DeepCopyInto(out *RemotePolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RemoteTelemetryConfig ¶
type RemoteTelemetryConfig struct { // Address is the address of the remote telemetry server // .Values.global.remoteTelemetryAddress, maps to MeshConfig.mixerReportServer Address string `json:"address,omitempty"` // CreateService for the remote server. // .Values.global.createRemoteSvcEndpoints // +optional CreateService *bool `json:"createService,omitempty"` // Batching settings used when sending telemetry. // +optional Batching *TelemetryBatchingConfig `json:"batching,omitempty"` }
RemoteTelemetryConfig configures a remote, legacy, v1 mixer telemetry. .Values.telemetry.v1.enabled true
func (*RemoteTelemetryConfig) DeepCopy ¶
func (in *RemoteTelemetryConfig) DeepCopy() *RemoteTelemetryConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteTelemetryConfig.
func (*RemoteTelemetryConfig) DeepCopyInto ¶
func (in *RemoteTelemetryConfig) DeepCopyInto(out *RemoteTelemetryConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouterModeType ¶
type RouterModeType string
RouterModeType represents the router modes available.
const ( // RouterModeTypeSNIDNAT represents sni-dnat router mode RouterModeTypeSNIDNAT RouterModeType = "sni-dnat" // RouterModeTypeStandard represents standard router mode RouterModeTypeStandard RouterModeType = "standard" )
type SecretDiscoveryService ¶
type SecretDiscoveryService struct { Enablement `json:",inline"` // Runtime configuration for sds sidecar Runtime *ContainerConfig `json:"runtime,omitempty"` }
SecretDiscoveryService configures whether or not SDS is configured for the gateway
func (*SecretDiscoveryService) DeepCopy ¶
func (in *SecretDiscoveryService) DeepCopy() *SecretDiscoveryService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretDiscoveryService.
func (*SecretDiscoveryService) DeepCopyInto ¶
func (in *SecretDiscoveryService) DeepCopyInto(out *SecretDiscoveryService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityConfig ¶
type SecurityConfig struct { // Trust configures trust aspects associated with mutual TLS clients. // +optional Trust *TrustConfig `json:"trust,omitempty"` // CertificateAuthority configures the certificate authority used by the // control plane to create and sign client certs and server keys. // +optional CertificateAuthority *CertificateAuthorityConfig `json:"certificateAuthority,omitempty"` // Identity configures the types of user tokens used by clients. // +optional Identity *IdentityConfig `json:"identity,omitempty"` // ControlPlane configures mutual TLS for control plane communication. // +optional ControlPlane *ControlPlaneSecurityConfig `json:"controlPlane,omitempty"` // DataPlane configures mutual TLS for data plane communication. // +optional DataPlane *DataPlaneSecurityConfig `json:"dataPlane,omitempty"` // Manages network policies that allows communication between namespace members and control plane, defaults to `true` // If false, operator does not create any NetworkPolicy resource, and users are responsible for managing them // .Values.global.manageNetworkPolicy // +optional ManageNetworkPolicy *bool `json:"manageNetworkPolicy,omitempty"` // JwksResolverCA is the configuration for injecting a trusted CA into the JWKSResolver. // +optional JwksResolverCA string `json:"jwksResolverCA,omitempty"` }
SecurityConfig specifies security aspects of the control plane.
func (*SecurityConfig) DeepCopy ¶
func (in *SecurityConfig) DeepCopy() *SecurityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityConfig.
func (*SecurityConfig) DeepCopyInto ¶
func (in *SecurityConfig) DeepCopyInto(out *SecurityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceMeshControlPlane ¶
type ServiceMeshControlPlane struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // The specification of the desired state of this ServiceMeshControlPlane. // This includes the configuration options for all components that comprise // the control plane. // +kubebuilder:validation:Required Spec ControlPlaneSpec `json:"spec"` // The current status of this ServiceMeshControlPlane and the components // that comprise the control plane. This data may be out of date by some // window of time. // +optional Status ControlPlaneStatus `json:"status,omitempty"` }
ServiceMeshControlPlane is the Schema for the controlplanes API +k8s:openapi-gen=true +kubebuilder:storageversion +kubebuilder:resource:shortName=smcp,categories=maistra-io +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.annotations.readyComponentCount",description="How many of the total number of components are ready" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.conditions[?(@.type==\"Ready\")].reason",description="Whether or not the control plane installation is up to date and ready to handle requests." +kubebuilder:printcolumn:name="Profiles",type="string",JSONPath=".status.appliedSpec.profiles",description="The configuration profiles applied to the configuration." +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".status.chartVersion",description="The actual current version of the control plane installation." +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the object" +kubebuilder:printcolumn:name="Image Registry",type="string",JSONPath=".status.appliedSpec.runtime.defaults.container.registry",description="The image registry used as the base for all component images.",priority=1
func (*ServiceMeshControlPlane) DeepCopy ¶
func (in *ServiceMeshControlPlane) DeepCopy() *ServiceMeshControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMeshControlPlane.
func (*ServiceMeshControlPlane) DeepCopyInto ¶
func (in *ServiceMeshControlPlane) DeepCopyInto(out *ServiceMeshControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceMeshControlPlane) DeepCopyObject ¶
func (in *ServiceMeshControlPlane) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceMeshControlPlaneList ¶
type ServiceMeshControlPlaneList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ServiceMeshControlPlane `json:"items"` }
ServiceMeshControlPlaneList contains a list of ServiceMeshControlPlane
func (*ServiceMeshControlPlaneList) DeepCopy ¶
func (in *ServiceMeshControlPlaneList) DeepCopy() *ServiceMeshControlPlaneList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMeshControlPlaneList.
func (*ServiceMeshControlPlaneList) DeepCopyInto ¶
func (in *ServiceMeshControlPlaneList) DeepCopyInto(out *ServiceMeshControlPlaneList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceMeshControlPlaneList) DeepCopyObject ¶
func (in *ServiceMeshControlPlaneList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StackdriverAccessLogTelemetryConfig ¶
type StackdriverAccessLogTelemetryConfig struct { // Enable installation of access log filter. // .Values.telemetry.v2.accessLogPolicy.enabled Enablement `json:",inline"` // LogWindowDuration configures the log window duration for access logs. // defaults to 43200s // To reduce the number of successful logs, default log window duration is // set to 12 hours. // .Values.telemetry.v2.accessLogPolicy.logWindowDuration // +optional LogWindowDuration string `json:"logWindowDuration,omitempty"` }
StackdriverAccessLogTelemetryConfig for v2 telemetry.
func (*StackdriverAccessLogTelemetryConfig) DeepCopy ¶
func (in *StackdriverAccessLogTelemetryConfig) DeepCopy() *StackdriverAccessLogTelemetryConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackdriverAccessLogTelemetryConfig.
func (*StackdriverAccessLogTelemetryConfig) DeepCopyInto ¶
func (in *StackdriverAccessLogTelemetryConfig) DeepCopyInto(out *StackdriverAccessLogTelemetryConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackdriverAddonConfig ¶
type StackdriverAddonConfig struct { // Configuration for Stackdriver tracer. Applies when Addons.Tracer.Type=Stackdriver Tracer *StackdriverTracerConfig `json:"tracer,omitempty"` // Configuration for Stackdriver telemetry plugins. Applies when telemetry // is enabled Telemetry *StackdriverTelemetryConfig `json:"telemetry,omitempty"` }
StackdriverAddonConfig configuration specific to Stackdriver integration.
func (*StackdriverAddonConfig) DeepCopy ¶
func (in *StackdriverAddonConfig) DeepCopy() *StackdriverAddonConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackdriverAddonConfig.
func (*StackdriverAddonConfig) DeepCopyInto ¶
func (in *StackdriverAddonConfig) DeepCopyInto(out *StackdriverAddonConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackdriverAuthConfig ¶
type StackdriverAuthConfig struct { // AppCredentials if true, use default app credentials. // .Values.mixer.adapters.stackdriver.auth.appCredentials, defaults to false // +optional AppCredentials *bool `json:"appCredentials,omitempty"` // APIKey use the specified key. // .Values.mixer.adapters.stackdriver.auth.apiKey // +optional APIKey string `json:"apiKey,omitempty"` // ServiceAccountPath use the path to the service account. // .Values.mixer.adapters.stackdriver.auth.serviceAccountPath // +optional ServiceAccountPath string `json:"serviceAccountPath,omitempty"` }
StackdriverAuthConfig is the auth config for stackdriver. Only one field may be set
func (*StackdriverAuthConfig) DeepCopy ¶
func (in *StackdriverAuthConfig) DeepCopy() *StackdriverAuthConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackdriverAuthConfig.
func (*StackdriverAuthConfig) DeepCopyInto ¶
func (in *StackdriverAuthConfig) DeepCopyInto(out *StackdriverAuthConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackdriverTelemetryConfig ¶
type StackdriverTelemetryConfig struct { // Enable installation of Stackdriver telemetry filters (mixer or v2/envoy). // These will only be installed if this is enabled an telemetry is enabled. Enablement `json:",inline"` // Auth configuration for stackdriver adapter (mixer/v1 telemetry only) // .Values.mixer.adapters.stackdriver.auth // +optional Auth *StackdriverAuthConfig `json:"auth,omitempty"` // EnableContextGraph for stackdriver adapter (edge reporting) // .Values.mixer.adapters.stackdriver.contextGraph.enabled, defaults to false // .Values.telemetry.v2.stackdriver.topology, defaults to false // +optional EnableContextGraph *bool `json:"enableContextGraph,omitempty"` // EnableLogging for stackdriver adapter // .Values.mixer.adapters.stackdriver.logging.enabled, defaults to true // .Values.telemetry.v2.stackdriver.logging, defaults to false // +optional EnableLogging *bool `json:"enableLogging,omitempty"` // EnableMetrics for stackdriver adapter // .Values.mixer.adapters.stackdriver.metrics.enabled, defaults to true // .Values.telemetry.v2.stackdriver.monitoring??? defaults to false // +optional EnableMetrics *bool `json:"enableMetrics,omitempty"` // DisableOutbound disables intallation of sidecar outbound filter // .Values.telemetry.v2.stackdriver.disableOutbound, defaults to false // +optional // DisableOutbound bool `json:"disableOutbound,omitempty"` // AccessLogging configures access logging for stackdriver AccessLogging *StackdriverAccessLogTelemetryConfig `json:"accessLogging,omitempty"` // ConfigOverride apply custom configuration to Stackdriver filters (v2 // telemetry only) // .Values.telemetry.v2.stackdriver.configOverride // +optional ConfigOverride *v1.HelmValues `json:"configOverride,omitempty"` }
StackdriverTelemetryConfig adds telemetry filters for Stackdriver.
func (*StackdriverTelemetryConfig) DeepCopy ¶
func (in *StackdriverTelemetryConfig) DeepCopy() *StackdriverTelemetryConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackdriverTelemetryConfig.
func (*StackdriverTelemetryConfig) DeepCopyInto ¶
func (in *StackdriverTelemetryConfig) DeepCopyInto(out *StackdriverTelemetryConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackdriverTracerConfig ¶
type StackdriverTracerConfig struct { // .Values.global.tracer.stackdriver.debug // +optional Debug *bool `json:"debug,omitempty"` // .Values.global.tracer.stackdriver.maxNumberOfAttributes // +optional MaxNumberOfAttributes *int64 `json:"maxNumberOfAttributes,omitempty"` // .Values.global.tracer.stackdriver.maxNumberOfAnnotations // +optional MaxNumberOfAnnotations *int64 `json:"maxNumberOfAnnotations,omitempty"` // .Values.global.tracer.stackdriver.maxNumberOfMessageEvents // +optional MaxNumberOfMessageEvents *int64 `json:"maxNumberOfMessageEvents,omitempty"` }
StackdriverTracerConfig configures the Stackdriver tracer
func (*StackdriverTracerConfig) DeepCopy ¶
func (in *StackdriverTracerConfig) DeepCopy() *StackdriverTracerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackdriverTracerConfig.
func (*StackdriverTracerConfig) DeepCopyInto ¶
func (in *StackdriverTracerConfig) DeepCopyInto(out *StackdriverTracerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TelemetryBatchingConfig ¶
type TelemetryBatchingConfig struct { // MaxEntries represents the maximum number of entries to collect before sending them to mixer. // .Values.mixer.telemetry.reportBatchMaxEntries, maps to MeshConfig.reportBatchMaxEntries // Set reportBatchMaxEntries to 0 to use the default batching behavior (i.e., every 100 requests). // A positive value indicates the number of requests that are batched before telemetry data // is sent to the mixer server // +optional MaxEntries *int32 `json:"maxEntries,omitempty"` // MaxTime represents the maximum amount of time to hold entries before sending them to mixer. // .Values.mixer.telemetry.reportBatchMaxTime, maps to MeshConfig.reportBatchMaxTime // Set reportBatchMaxTime to 0 to use the default batching behavior (i.e., every 1 second). // A positive time value indicates the maximum wait time since the last request will telemetry data // be batched before being sent to the mixer server // +optional MaxTime string `json:"maxTime,omitempty"` }
TelemetryBatchingConfig configures how telemetry data is batched.
func (*TelemetryBatchingConfig) DeepCopy ¶
func (in *TelemetryBatchingConfig) DeepCopy() *TelemetryBatchingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetryBatchingConfig.
func (*TelemetryBatchingConfig) DeepCopyInto ¶
func (in *TelemetryBatchingConfig) DeepCopyInto(out *TelemetryBatchingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TelemetryConfig ¶
type TelemetryConfig struct { // Type of telemetry implementation to use. Type TelemetryType `json:"type,omitempty"` // Mixer represents legacy, v1 telemetry. // implies .Values.telemetry.v1.enabled, if not null // +optional Mixer *MixerTelemetryConfig `json:"mixer,omitempty"` // Remote represents a remote, legacy, v1 telemetry. // +optional Remote *RemoteTelemetryConfig `json:"remote,omitempty"` }
TelemetryConfig for the mesh
func (*TelemetryConfig) DeepCopy ¶
func (in *TelemetryConfig) DeepCopy() *TelemetryConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetryConfig.
func (*TelemetryConfig) DeepCopyInto ¶
func (in *TelemetryConfig) DeepCopyInto(out *TelemetryConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TelemetryLoadSheddingConfig ¶
type TelemetryLoadSheddingConfig struct { // Mode represents the loadshedding mode applied to mixer when it becomes // overloaded. Valid values: disabled, logonly or enforce // .Values.mixer.telemetry.loadshedding.mode // +optional Mode string `json:"mode,omitempty"` // LatencyThreshold -- // .Values.mixer.telemetry.loadshedding.latencyThreshold // +optional LatencyThreshold string `json:"latencyThreshold,omitempty"` }
TelemetryLoadSheddingConfig configures how mixer telemetry loadshedding behaves
func (*TelemetryLoadSheddingConfig) DeepCopy ¶
func (in *TelemetryLoadSheddingConfig) DeepCopy() *TelemetryLoadSheddingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetryLoadSheddingConfig.
func (*TelemetryLoadSheddingConfig) DeepCopyInto ¶
func (in *TelemetryLoadSheddingConfig) DeepCopyInto(out *TelemetryLoadSheddingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TelemetryType ¶
type TelemetryType string
TelemetryType represents the telemetry implementation used.
const ( // TelemetryTypeNone disables telemetry TelemetryTypeNone TelemetryType = "None" // TelemetryTypeMixer represents mixer telemetry, v1 TelemetryTypeMixer TelemetryType = "Mixer" // TelemetryTypeRemote represents remote mixer telemetry server, v1 TelemetryTypeRemote TelemetryType = "Remote" // TelemetryTypeIstiod represents istio, v2 TelemetryTypeIstiod TelemetryType = "Istiod" )
type ThirdPartyIdentityConfig ¶
type ThirdPartyIdentityConfig struct { // Issuer is the URL of the issuer. // env TOKEN_ISSUER, defaults to iss in specified token // only supported in 1.6+ // +optional Issuer string `json:"issuer,omitempty"` // Audience is the audience for whom the token is intended. // env AUDIENCE // .Values.global.sds.token.aud, defaults to istio-ca // +optional Audience string `json:"audience,omitempty"` }
ThirdPartyIdentityConfig configures a third-party token provider for use with istiod.
func (*ThirdPartyIdentityConfig) DeepCopy ¶
func (in *ThirdPartyIdentityConfig) DeepCopy() *ThirdPartyIdentityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThirdPartyIdentityConfig.
func (*ThirdPartyIdentityConfig) DeepCopyInto ¶
func (in *ThirdPartyIdentityConfig) DeepCopyInto(out *ThirdPartyIdentityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThreeScaleAddonConfig ¶
type ThreeScaleAddonConfig struct { Enablement `json:",inline"` // ListenerAddr sets the listen address for the gRPC server. // PARAM_THREESCALE_LISTEN_ADDR // +optional ListenAddr *int32 `json:"listen_addr,omitempty"` // LogGRPC controls whether the log includes gRPC info // PARAM_THREESCALE_LOG_GRPC // +optional LogGRPC *bool `json:"log_grpc,omitempty"` // LogJSON controls whether the log is formatted as JSON // PARAM_THREESCALE_LOG_JSON // +optional LogJSON *bool `json:"log_json,omitempty"` // LogLevel sets the minimum log output level. Accepted values are one of: // debug, info, warn, error, none // PARAM_THREESCALE_LOG_LEVEL // +optional LogLevel string `json:"log_level,omitempty"` // Metrics configures metrics specific details // +optional Metrics *ThreeScaleMetricsConfig `json:"metrics,omitempty"` // System configures system specific details // +optional System *ThreeScaleSystemConfig `json:"system,omitempty"` // Client configures client specific details // +optional Client *ThreeScaleClientConfig `json:"client,omitempty"` // GRPC configures gRPC specific details // +optional GRPC *ThreeScaleGRPCConfig `json:"grpc,omitempty"` // Backend configures backend specific details // +optional Backend *ThreeScaleBackendConfig `json:"backend,omitempty"` }
ThreeScaleAddonConfig represents configuration options for the installation of the 3scale adapter. The options are structured similarly to what is defined by the 3scale ConfigMap.
func (*ThreeScaleAddonConfig) DeepCopy ¶
func (in *ThreeScaleAddonConfig) DeepCopy() *ThreeScaleAddonConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreeScaleAddonConfig.
func (*ThreeScaleAddonConfig) DeepCopyInto ¶
func (in *ThreeScaleAddonConfig) DeepCopyInto(out *ThreeScaleAddonConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThreeScaleBackendConfig ¶
type ThreeScaleBackendConfig struct { // EnableCache if true, attempts to create an in-memory apisonator cache for // authorization requests // PARAM_THREESCALE_USE_CACHED_BACKEND // +optional EnableCache *bool `json:"enable_cache,omitempty"` // CacheFlushInterval sets the interval at which metrics get reported from // the cache to 3scale // PARAM_THREESCALE_BACKEND_CACHE_FLUSH_INTERVAL_SECONDS // +optional CacheFlushInterval *int32 `json:"cache_flush_interval,omitempty"` // PolicyFailClosed if true, request will fail if 3scale Apisonator is // unreachable // PARAM_THREESCALE_BACKEND_CACHE_POLICY_FAIL_CLOSED // +optional PolicyFailClosed *bool `json:"policy_fail_closed,omitempty"` }
ThreeScaleBackendConfig represents 3scale adapter options for its 'backend' section.
func (*ThreeScaleBackendConfig) DeepCopy ¶
func (in *ThreeScaleBackendConfig) DeepCopy() *ThreeScaleBackendConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreeScaleBackendConfig.
func (*ThreeScaleBackendConfig) DeepCopyInto ¶
func (in *ThreeScaleBackendConfig) DeepCopyInto(out *ThreeScaleBackendConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThreeScaleClientConfig ¶
type ThreeScaleClientConfig struct { // AllowInsecureConnections skips certificate verification when calling // 3scale API's. Enabling is not recommended // PARAM_THREESCALE_ALLOW_INSECURE_CONN // +optional AllowInsecureConnections *bool `json:"allow_insecure_connections,omitempty"` // Timeout sets the number of seconds to wait before terminating requests // to 3scale System and Backend // PARAM_THREESCALE_CLIENT_TIMEOUT_SECONDS // +optional Timeout *int32 `json:"timeout,omitempty"` }
ThreeScaleClientConfig represents 3scale adapter options for its 'client' section.
func (*ThreeScaleClientConfig) DeepCopy ¶
func (in *ThreeScaleClientConfig) DeepCopy() *ThreeScaleClientConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreeScaleClientConfig.
func (*ThreeScaleClientConfig) DeepCopyInto ¶
func (in *ThreeScaleClientConfig) DeepCopyInto(out *ThreeScaleClientConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThreeScaleGRPCConfig ¶
type ThreeScaleGRPCConfig struct { // MaxConnTimeout sets the maximum amount of seconds (+/-10% jitter) a // connection may exist before it will be closed // PARAM_THREESCALE_GRPC_CONN_MAX_SECONDS // +optional MaxConnTimeout *int32 `json:"max_conn_timeout,omitempty"` }
ThreeScaleGRPCConfig represents 3scale adapter options for its 'grpc' section.
func (*ThreeScaleGRPCConfig) DeepCopy ¶
func (in *ThreeScaleGRPCConfig) DeepCopy() *ThreeScaleGRPCConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreeScaleGRPCConfig.
func (*ThreeScaleGRPCConfig) DeepCopyInto ¶
func (in *ThreeScaleGRPCConfig) DeepCopyInto(out *ThreeScaleGRPCConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThreeScaleMetricsConfig ¶
type ThreeScaleMetricsConfig struct { // Port sets the port which 3scale /metrics endpoint can be scrapped from // PARAM_THREESCALE_METRICS_PORT // +optional Port *int32 `json:"port,omitempty"` // Report controls whether 3scale system and backend metrics are collected // and reported to Prometheus // PARAM_THREESCALE_REPORT_METRICS // +optional Report *bool `json:"report,omitempty"` }
ThreeScaleMetricsConfig represents 3scale adapter options for its 'metrics' section.
func (*ThreeScaleMetricsConfig) DeepCopy ¶
func (in *ThreeScaleMetricsConfig) DeepCopy() *ThreeScaleMetricsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreeScaleMetricsConfig.
func (*ThreeScaleMetricsConfig) DeepCopyInto ¶
func (in *ThreeScaleMetricsConfig) DeepCopyInto(out *ThreeScaleMetricsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThreeScaleSystemConfig ¶
type ThreeScaleSystemConfig struct { // CacheMaxSize is the max number of items that can be stored in the cache // at any time. Set to 0 to disable caching // PARAM_THREESCALE_CACHE_ENTRIES_MAX // +optional CacheMaxSize *int64 `json:"cache_max_size,omitempty"` // CacheRefreshRetries sets the number of times unreachable hosts will be // retried during a cache update loop // PARAM_THREESCALE_CACHE_REFRESH_RETRIES // +optional CacheRefreshRetries *int32 `json:"cache_refresh_retries,omitempty"` // CacheRefreshInterval is the time period in seconds, before a background // process attempts to refresh cached entries // PARAM_THREESCALE_CACHE_REFRESH_SECONDS // +optional CacheRefreshInterval *int32 `json:"cache_refresh_interval,omitempty"` // CacheTTL is the time period, in seconds, to wait before purging expired // items from the cache // PARAM_THREESCALE_CACHE_TTL_SECONDS // +optional CacheTTL *int32 `json:"cache_ttl,omitempty"` }
ThreeScaleSystemConfig represents 3scale adapter options for its 'system' section.
func (*ThreeScaleSystemConfig) DeepCopy ¶
func (in *ThreeScaleSystemConfig) DeepCopy() *ThreeScaleSystemConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreeScaleSystemConfig.
func (*ThreeScaleSystemConfig) DeepCopyInto ¶
func (in *ThreeScaleSystemConfig) DeepCopyInto(out *ThreeScaleSystemConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TracerType ¶
type TracerType string
TracerType represents the tracer type to use
const ( // TracerTypeNone is used to represent no tracer TracerTypeNone TracerType = "None" // TracerTypeJaeger is used to represent Jaeger as the tracer TracerTypeJaeger TracerType = "Jaeger" // TracerTypeStackdriver is used to represent Stackdriver as the tracer TracerTypeStackdriver TracerType = "Stackdriver" )
type TracingConfig ¶
type TracingConfig struct { // Type represents the type of tracer to be installed. Type TracerType `json:"type,omitempty"` // Sampling sets the mesh-wide trace sampling percentage. Should be between // 0.0 - 100.0. Precision to 0.01, scaled as 0 to 10000, e.g.: 100% = 10000, // 1% = 100 // .Values.pilot.traceSampling // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=10000 // +optional Sampling *int32 `json:"sampling,omitempty"` }
TracingConfig configures tracing solutions for the mesh. .Values.global.enableTracing
func (*TracingConfig) DeepCopy ¶
func (in *TracingConfig) DeepCopy() *TracingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TracingConfig.
func (*TracingConfig) DeepCopyInto ¶
func (in *TracingConfig) DeepCopyInto(out *TracingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrustConfig ¶
type TrustConfig struct { // Domain specifies the trust domain to be used by the mesh. // .Values.global.trustDomain, maps to trustDomain // The trust domain corresponds to the trust root of a system. // Refer to https://github.com/spiffe/spiffe/blob/master/standards/SPIFFE-ID.md#21-trust-domain // +optional Domain string `json:"domain,omitempty"` // AdditionalDomains are additional SPIFFE trust domains that are accepted as trusted. // .Values.global.trustDomainAliases, maps to trustDomainAliases // Any service with the identity "td1/ns/foo/sa/a-service-account", "td2/ns/foo/sa/a-service-account", // or "td3/ns/foo/sa/a-service-account" will be treated the same in the Istio mesh. // +optional AdditionalDomains []string `json:"additionalDomains,omitempty"` }
TrustConfig configures trust aspects associated with mutual TLS clients
func (*TrustConfig) DeepCopy ¶
func (in *TrustConfig) DeepCopy() *TrustConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrustConfig.
func (*TrustConfig) DeepCopyInto ¶
func (in *TrustConfig) DeepCopyInto(out *TrustConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeConfig ¶
type VolumeConfig struct { // Volume.Name maps to .Values.gateways.<gateway-name>.<type>.<type-name> (type-name is configMapName or secretName) // .configVolumes -> .configMapName = volume.name // .secretVolumes -> .secretName = volume.name // Only ConfigMap and Secret fields are supported Volume GatewayVolume `json:"volume,omitempty"` // Mount.Name maps to .Values.gateways.<gateway-name>.<type>.name // .configVolumes -> .name = mount.name, .mountPath = mount.mountPath // .secretVolumes -> .name = mount.name, .mountPath = mount.mountPath // Only Name and MountPath fields are supported Mount corev1.VolumeMount `json:"volumeMount,omitempty"` }
VolumeConfig is used to specify volumes that should be mounted on the pod.
func (*VolumeConfig) DeepCopy ¶
func (in *VolumeConfig) DeepCopy() *VolumeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeConfig.
func (*VolumeConfig) DeepCopyInto ¶
func (in *VolumeConfig) DeepCopyInto(out *VolumeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZipkinTracerConfig ¶
type ZipkinTracerConfig struct { }
ZipkinTracerConfig configures a Zipkin tracer for use with the mesh
func (*ZipkinTracerConfig) DeepCopy ¶
func (in *ZipkinTracerConfig) DeepCopy() *ZipkinTracerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZipkinTracerConfig.
func (*ZipkinTracerConfig) DeepCopyInto ¶
func (in *ZipkinTracerConfig) DeepCopyInto(out *ZipkinTracerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.