Documentation ¶
Index ¶
- type AccessLogger
- type CertGenJob
- type Chart
- type Config
- type Crds
- type DaemonSetSpec
- type DeploymentSpec
- type DeploymentSpecSansResources
- type Discovery
- type DiscoveryDeployment
- type EnvoySidecarContainer
- type Gateway
- type GatewayDeployment
- type GatewayProxy
- type GatewayProxyConfigMap
- type GatewayProxyDeployment
- type GatewayProxyGatewaySettings
- type GatewayProxyKind
- type GatewayProxyPodTemplate
- type GatewayProxyService
- type GatewayValidation
- type Global
- type Gloo
- type GlooDeployment
- type HelmConfig
- type Image
- type Ingress
- type IngressDeployment
- type IngressProxy
- type IngressProxyConfigMap
- type IngressProxyDeployment
- type Integrations
- type InvalidConfigPolicy
- type Job
- type JobSpec
- type K8s
- type Knative
- type KnativeProxy
- type Mtls
- type Namespace
- type PodSpec
- type Rbac
- type ResourceAllocation
- type ResourceRequirements
- type SdsContainer
- type Service
- type ServiceAccount
- type ServiceSpec
- type Settings
- type Stats
- type Tracing
- type Wasm
- type Webhook
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccessLogger ¶ added in v0.18.38
type AccessLogger struct { Image *Image `json:"image,omitempty"` Port uint `json:"port,omitempty"` ServiceName string `json:"serviceName,omitempty"` Enabled bool `json:"enabled"` Stats *Stats `json:"stats,omitempty" desc:"overrides for prometheus stats published by the gloo pod"` RunAsUser float64 `json:"runAsUser" desc:"Explicitly set the user ID for the container to run as. Default is 10101"` FsGroup float64 `json:"fsGroup" desc:"Explicitly set the group ID for volume ownership. Default is 10101"` *DeploymentSpec }
type CertGenJob ¶ added in v0.21.1
type CertGenJob struct { Job Enabled bool `` /* 126-byte string literal not displayed */ SetTtlAfterFinished bool `json:"setTtlAfterFinished" desc:"Set ttlSecondsAfterFinished (a k8s feature in Alpha) on the job. Defaults to true"` TtlSecondsAfterFinished int `json:"ttlSecondsAfterFinished" desc:"Clean up the finished job after this many seconds. Defaults to 60"` FloatingUserId bool `json:"floatingUserId" desc:"set to true to allow the cluster to dynamically assign a user ID"` RunAsUser float64 `json:"runAsUser" desc:"Explicitly set the user ID for the container to run as. Default is 10101"` }
type Config ¶
type Config struct { Namespace *Namespace `json:"namespace,omitempty"` Crds *Crds `json:"crds,omitempty"` Settings *Settings `json:"settings,omitempty"` Gloo *Gloo `json:"gloo,omitempty"` Discovery *Discovery `json:"discovery,omitempty"` Gateway *Gateway `json:"gateway,omitempty"` GatewayProxies map[string]GatewayProxy `json:"gatewayProxies,omitempty"` Ingress *Ingress `json:"ingress,omitempty"` IngressProxy *IngressProxy `json:"ingressProxy,omitempty"` K8s *K8s `json:"k8s,omitempty"` AccessLogger *AccessLogger `json:"accessLogger,omitempty"` }
type Crds ¶ added in v0.12.0
type Crds struct {
Create bool `` /* 210-byte string literal not displayed */
}
type DaemonSetSpec ¶ added in v0.17.3
type DaemonSetSpec struct {
HostPort bool `json:"hostPort" desc:"whether or not to enable host networking on the pod. Only relevant when running as a DaemonSet"`
}
type DeploymentSpec ¶
type DeploymentSpec struct { DeploymentSpecSansResources Resources *ResourceRequirements `json:"resources,omitempty" desc:"resources for the main pod in the deployment"` }
type DeploymentSpecSansResources ¶ added in v1.3.21
type Discovery ¶
type Discovery struct { Deployment *DiscoveryDeployment `json:"deployment,omitempty"` FdsMode string `json:"fdsMode" desc:"mode for function discovery (blacklist or whitelist). See more info in the settings docs"` Enabled *bool `json:"enabled" desc:"enable Discovery features"` }
type DiscoveryDeployment ¶
type DiscoveryDeployment struct { Image *Image `json:"image,omitempty"` Stats *Stats `json:"stats,omitempty" desc:"overrides for prometheus stats published by the discovery pod"` FloatingUserId bool `json:"floatingUserId" desc:"set to true to allow the cluster to dynamically assign a user ID"` RunAsUser float64 `json:"runAsUser" desc:"Explicitly set the user ID for the container to run as. Default is 10101"` *DeploymentSpec }
type EnvoySidecarContainer ¶ added in v1.3.8
type EnvoySidecarContainer struct {
Image *Image `json:"image,omitempty"`
}
type Gateway ¶
type Gateway struct { Enabled *bool `json:"enabled" desc:"enable Gloo API Gateway features"` Validation *GatewayValidation `` /* 166-byte string literal not displayed */ Deployment *GatewayDeployment `json:"deployment,omitempty"` CertGenJob *CertGenJob `` /* 187-byte string literal not displayed */ UpdateValues bool `` /* 159-byte string literal not displayed */ ProxyServiceAccount ServiceAccount `json:"proxyServiceAccount" ` ReadGatewaysFromAllNamespaces bool `` /* 167-byte string literal not displayed */ }
type GatewayDeployment ¶
type GatewayDeployment struct { Image *Image `json:"image,omitempty"` Stats *Stats `json:"stats,omitempty" desc:"overrides for prometheus stats published by the gateway pod"` FloatingUserId bool `json:"floatingUserId" desc:"set to true to allow the cluster to dynamically assign a user ID"` RunAsUser float64 `json:"runAsUser" desc:"Explicitly set the user ID for the container to run as. Default is 10101"` *DeploymentSpec }
type GatewayProxy ¶
type GatewayProxy struct { Kind *GatewayProxyKind `json:"kind,omitempty" desc:"value to determine how the gateway proxy is deployed"` PodTemplate *GatewayProxyPodTemplate `json:"podTemplate,omitempty"` ConfigMap *GatewayProxyConfigMap `json:"configMap,omitempty"` GlobalDownstreamMaxConnections uint32 `` /* 173-byte string literal not displayed */ Service *GatewayProxyService `json:"service,omitempty"` AntiAffinity bool `json:"antiAffinity" desc:"configure anti affinity such that pods are preferably not co-located"` Tracing *Tracing `json:"tracing,omitempty"` GatewaySettings *GatewayProxyGatewaySettings `json:"gatewaySettings,omitempty" desc:"settings for the helm generated gateways, leave nil to not render"` ExtraEnvoyArgs []string `` /* 126-byte string literal not displayed */ ExtraContainersHelper string `json:"extraContainersHelper,omitempty"` ExtraInitContainersHelper string `json:"extraInitContainersHelper,omitempty"` ExtraVolumeHelper string `json:"extraVolumeHelper,omitempty"` ExtraListenersHelper string `json:"extraListenersHelper,omitempty"` Stats *Stats `json:"stats,omitempty" desc:"overrides for prometheus stats published by the gateway-proxy pod"` ReadConfig bool `json:"readConfig" desc:"expose a read-only subset of the envoy admin api"` ExtraProxyVolumeMountHelper string `` /* 142-byte string literal not displayed */ LoopBackAddress string `` /* 184-byte string literal not displayed */ }
type GatewayProxyConfigMap ¶
type GatewayProxyDeployment ¶
type GatewayProxyDeployment struct {
*DeploymentSpecSansResources
}
type GatewayProxyGatewaySettings ¶ added in v0.19.1
type GatewayProxyGatewaySettings struct { DisableGeneratedGateways bool `json:"disableGeneratedGateways" desc:"set to true to disable the gateway generation for a gateway proxy"` IPv4Only bool `` /* 149-byte string literal not displayed */ UseProxyProto bool `json:"useProxyProto" desc:"use proxy protocol"` CustomHttpGateway string `json:"customHttpGateway,omitempty" desc:"custom yaml to use for http gateway settings"` CustomHttpsGateway string `json:"customHttpsGateway,omitempty" desc:"custom yaml to use for https gateway settings"` GatewayOptions v1.GatewayOptions `json:"options,omitempty" desc:"custom options for http(s) gateways"` }
type GatewayProxyKind ¶ added in v0.17.3
type GatewayProxyKind struct { Deployment *GatewayProxyDeployment `json:"deployment,omitempty" desc:"set to deploy as a kubernetes deployment, otherwise nil"` DaemonSet *DaemonSetSpec `json:"daemonSet,omitempty" desc:"set to deploy as a kubernetes daemonset, otherwise nil"` }
type GatewayProxyPodTemplate ¶ added in v0.17.3
type GatewayProxyPodTemplate struct { Image *Image `json:"image,omitempty"` HttpPort int `json:"httpPort,omitempty" desc:"HTTP port for the gateway service target port"` HttpsPort int `json:"httpsPort,omitempty" desc:"HTTPS port for the gateway service target port"` ExtraPorts []interface{} `json:"extraPorts,omitempty" desc:"extra ports for the gateway pod"` ExtraAnnotations map[string]string `json:"extraAnnotations,omitempty" desc:"extra annotations to add to the pod"` NodeName string `json:"nodeName,omitempty" desc:"name of node to run on"` NodeSelector map[string]string `json:"nodeSelector,omitempty" desc:"label selector for nodes"` Tolerations []*appsv1.Toleration `json:"tolerations,omitEmpty"` Probes bool `json:"probes" desc:"enable liveness and readiness probes"` Resources *ResourceRequirements `json:"resources,omitempty"` DisableNetBind bool `` /* 161-byte string literal not displayed */ RunUnprivileged bool `json:"runUnprivileged" desc:"run envoy as an unprivileged user"` FloatingUserId bool `json:"floatingUserId" desc:"set to true to allow the cluster to dynamically assign a user ID"` RunAsUser float64 `json:"runAsUser" desc:"Explicitly set the user ID for the container to run as. Default is 10101"` FsGroup float64 `json:"fsGroup" desc:"Explicitly set the group ID for volume ownership. Default is 10101"` }
type GatewayProxyService ¶
type GatewayProxyService struct { Type string "" /* 182-byte string literal not displayed */ HttpPort int `json:"httpPort,omitempty" desc:"HTTP port for the gateway service"` HttpsPort int `json:"httpsPort,omitempty" desc:"HTTPS port for the gateway service"` HttpNodePort int `json:"httpNodePort,omitempty" desc:"HTTP nodeport for the gateway service if using type NodePort"` HttpsNodePort int `json:"httpsNodePort,omitempty" desc:"HTTPS nodeport for the gateway service if using type NodePort"` ClusterIP string "" /* 131-byte string literal not displayed */ ExtraAnnotations map[string]string `json:"extraAnnotations,omitempty"` ExternalTrafficPolicy string `json:"externalTrafficPolicy,omitempty"` Name string `json:"name,omitempty" desc:"Custom name override for the service resource of the proxy"` HttpsFirst bool `json:"httpsFirst" desc:"List HTTPS port before HTTP"` LoadBalancerIP string `json:"loadBalancerIP,omitempty" desc:"IP address of the load balancer"` LoadBalancerSourceRanges []string `json:"loadBalancerSourceRanges,omitempty" desc:"List of IP CIDR ranges that are allowed to access the load balancer"` }
type GatewayValidation ¶ added in v0.20.3
type GatewayValidation struct { Enabled bool `json:"enabled" desc:"enable Gloo API Gateway validation hook (default true)"` AlwaysAcceptResources bool `` /* 261-byte string literal not displayed */ AllowWarnings bool `` /* 179-byte string literal not displayed */ SecretName string `` /* 199-byte string literal not displayed */ FailurePolicy string `` /* 183-byte string literal not displayed */ Webhook *Webhook `json:"webhook" desc:"webhook specific configuration"` }
type Global ¶ added in v0.18.11
type Global struct { Image *Image `json:"image,omitempty"` Extensions interface{} `json:"extensions,omitempty"` GlooRbac *Rbac `json:"glooRbac,omitempty"` Wasm Wasm `json:"wasm,omitempty"` GlooStats Stats `` /* 158-byte string literal not displayed */ GlooMtls Mtls `` /* 128-byte string literal not displayed */ }
type Gloo ¶
type Gloo struct {
Deployment *GlooDeployment `json:"deployment,omitempty"`
}
type GlooDeployment ¶
type GlooDeployment struct { Image *Image `json:"image,omitempty"` XdsPort int `json:"xdsPort,omitempty" desc:"port where gloo serves xDS API to Envoy"` ValidationPort int `json:"validationPort,omitempty" desc:"port where gloo serves gRPC Proxy Validation to Gateway"` Stats *Stats `json:"stats,omitempty" desc:"overrides for prometheus stats published by the gloo pod"` FloatingUserId bool `json:"floatingUserId" desc:"set to true to allow the cluster to dynamically assign a user ID"` RunAsUser float64 `json:"runAsUser" desc:"Explicitly set the user ID for the container to run as. Default is 10101"` ExternalTrafficPolicy string `json:"externalTrafficPolicy,omitempty" desc:"Set the external traffic policy on the gloo service"` DisableUsageStatistics bool `json:"disableUsageStatistics" desc:"Disable the collection of gloo usage statistics"` *DeploymentSpec }
type HelmConfig ¶ added in v0.18.11
type Image ¶
type Image struct { Tag string `json:"tag,omitempty" desc:"tag for the container"` Repository string `json:"repository,omitempty" desc:"image name (repository) for the container."` Registry string `json:"registry,omitempty" desc:"image prefix/registry e.g. (quay.io/solo-io)"` PullPolicy string `json:"pullPolicy,omitempty" desc:"image pull policy for the container"` PullSecret string `json:"pullSecret,omitempty" desc:"image pull policy for the container "` }
Common
type Ingress ¶
type Ingress struct { Enabled *bool `json:"enabled"` Deployment *IngressDeployment `json:"deployment,omitempty"` RequireIngressClass *bool `` /* 246-byte string literal not displayed */ CustomIngress *bool `` /* 280-byte string literal not displayed */ }
type IngressDeployment ¶
type IngressDeployment struct { Image *Image `json:"image,omitempty"` RunAsUser float64 `json:"runAsUser" desc:"Explicitly set the user ID for the container to run as. Default is 10101"` FloatingUserId bool `json:"floatingUserId" desc:"set to true to allow the cluster to dynamically assign a user ID"` *DeploymentSpec }
type IngressProxy ¶
type IngressProxy struct { Deployment *IngressProxyDeployment `json:"deployment,omitempty"` ConfigMap *IngressProxyConfigMap `json:"configMap,omitempty"` Tracing *string `json:"tracing,omitempty"` LoopBackAddress string `` /* 184-byte string literal not displayed */ *ServiceSpec }
type IngressProxyConfigMap ¶
type IngressProxyDeployment ¶
type IngressProxyDeployment struct { Image *Image `json:"image,omitempty"` HttpPort int `json:"httpPort,omitempty" desc:"HTTP port for the ingress container"` HttpsPort int `json:"httpsPort,omitempty" desc:"HTTPS port for the ingress container"` ExtraPorts []interface{} `json:"extraPorts,omitempty"` ExtraAnnotations map[string]string `json:"extraAnnotations,omitempty"` FloatingUserId bool `json:"floatingUserId" desc:"set to true to allow the cluster to dynamically assign a user ID"` RunAsUser float64 `json:"runAsUser" desc:"Explicitly set the user ID for the pod to run as. Default is 10101"` *DeploymentSpec }
type Integrations ¶
type Integrations struct {
Knative *Knative `json:"knative,omitEmpty"`
}
type InvalidConfigPolicy ¶ added in v1.0.0
type InvalidConfigPolicy struct { ReplaceInvalidRoutes bool `` /* 303-byte string literal not displayed */ InvalidRouteResponseCode int64 `json:"invalidRouteResponseCode,omitempty" desc:"the response code for the direct response"` InvalidRouteResponseBody string `json:"invalidRouteResponseBody,omitempty" desc:"the response body for the direct response"` }
type K8s ¶ added in v0.13.34
type K8s struct {
ClusterName string `json:"clusterName" desc:"cluster name to use when referencing services."`
}
type Knative ¶
type Knative struct { Enabled *bool `json:"enabled" desc:"enabled knative components"` Version *string `` /* 208-byte string literal not displayed */ Proxy *KnativeProxy `json:"proxy,omitempty"` RequireIngressClass *bool `` /* 177-byte string literal not displayed */ }
type KnativeProxy ¶
type KnativeProxy struct { Image *Image `json:"image,omitempty"` HttpPort int `json:"httpPort,omitempty" desc:"HTTP port for the proxy"` HttpsPort int `json:"httpsPort,omitempty" desc:"HTTPS port for the proxy"` Tracing *string `json:"tracing,omitempty" desc:"tracing configuration"` LoopBackAddress string `` /* 184-byte string literal not displayed */ *DeploymentSpec *ServiceSpec }
type Mtls ¶ added in v1.3.6
type Mtls struct { Enabled bool `json:"enabled" desc:"Enables internal mtls authentication"` Sds SdsContainer `json:"sds,omitempty"` EnvoySidecar EnvoySidecarContainer `json:"envoy,omitempty"` }
type Namespace ¶
type Namespace struct {
Create bool `json:"create" desc:"create the installation namespace"`
}
type PodSpec ¶ added in v0.18.0
type PodSpec struct {
RestartPolicy string `json:"restartPolicy,omitempty" desc:"restart policy to use when the pod exits"`
}
type ResourceAllocation ¶ added in v0.18.1
type ResourceRequirements ¶ added in v0.18.1
type ResourceRequirements struct { Limits *ResourceAllocation `json:"limits,omitEmpty" desc:"resource limits of this container"` Requests *ResourceAllocation `json:"requests,omitEmpty" desc:"resource requests of this container"` }
type SdsContainer ¶ added in v1.3.8
type SdsContainer struct {
Image *Image `json:"image,omitempty"`
}
type ServiceAccount ¶ added in v0.18.20
type ServiceAccount struct {
DisableAutomount bool `` /* 193-byte string literal not displayed */
}
type ServiceSpec ¶ added in v1.3.18
type ServiceSpec struct {
Service *Service `json:"service,omitempty" desc:"K8s service configuration"`
}
type Settings ¶
type Settings struct { WatchNamespaces []string `` /* 136-byte string literal not displayed */ WriteNamespace string `` /* 134-byte string literal not displayed */ Integrations *Integrations `json:"integrations,omitempty"` Create bool `json:"create" desc:"create a Settings CRD which provides bootstrap configuration to Gloo controllers"` Extensions interface{} `json:"extensions,omitempty"` SingleNamespace bool `json:"singleNamespace" desc:"Enable to use install namespace as WatchNamespace and WriteNamespace"` InvalidConfigPolicy *InvalidConfigPolicy `json:"invalidConfigPolicy,omitempty" desc:"Define policies for Gloo to handle invalid configuration"` Linkerd bool `json:"linkerd" desc:"Enable automatic Linkerd integration in Gloo."` DisableProxyGarbageCollection bool `` /* 376-byte string literal not displayed */ DisableKubernetesDestinations bool `` /* 495-byte string literal not displayed */ }
type Stats ¶ added in v1.2.13
type Stats struct {
Enabled bool `json:"enabled,omitempty" desc:"Controls whether or not prometheus stats are enabled"`
}
Click to show internal directories.
Click to hide internal directories.