pkg

package
v0.0.0-...-25012a4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 8, 2024 License: Apache-2.0 Imports: 9 Imported by: 55

Documentation

Index

Constants

View Source
const (
	// ConfigName is the name of the configmap containing all
	// customizations for networking features.
	//
	// Deprecated: use knative.dev/networking/pkg/config.ConfigMapName
	ConfigName = config.ConfigMapName

	// DefaultDomainTemplate is the default golang template to use when
	// constructing the Knative Route's Domain(host)
	//
	// Deprecated: use knative.dev/networking/pkg/config.DefaultDomainTemplate
	DefaultDomainTemplate = config.DefaultDomainTemplate

	// DefaultTagTemplate is the default golang template to use when
	// constructing the Knative Route's tag names.
	//
	// Deprecated: use knative.dev/networking/pkg/config.DefaultTagTemplate
	DefaultTagTemplate = config.DefaultTagTemplate

	// DefaultIngressClassKey is the name of the configuration entry
	// that specifies the default Ingress.
	//
	// Deprecated: use knative.dev/networking/pkg/config.DefaultIngressClassKey
	DefaultIngressClassKey = config.DefaultIngressClassKey

	// DefaultCertificateClassKey is the name of the configuration entry
	// that specifies the default Certificate.
	//
	// Deprecated: use knative.dev/networking/pkg/config.DefaultCertificateClassKey
	DefaultCertificateClassKey = config.DefaultCertificateClassKey

	// IstioIngressClassName value for specifying knative's Istio
	// Ingress reconciler.
	//
	// Deprecated: use knative.dev/networking/pkg/config.IstioIngressClassName
	IstioIngressClassName = config.IstioIngressClassName

	// CertManagerCertificateClassName value for specifying Knative's Cert-Manager
	// Certificate reconciler.
	//
	// Deprecated: use knative.dev/networking/pkg/config.CertManagerCertificateClassName
	CertManagerCertificateClassName = config.CertManagerCertificateClassName

	// DomainTemplateKey is the name of the configuration entry that
	// specifies the golang template string to use to construct the
	// Knative service's DNS name.
	//
	// Deprecated: use knative.dev/networking/pkg/config.DomainTemplateKey
	DomainTemplateKey = config.DomainTemplateKey

	// TagTemplateKey is the name of the configuration entry that
	// specifies the golang template string to use to construct the
	// hostname for a Route's tag.
	//
	// Deprecated: use knative.dev/networking/pkg/config.TagTemplateKey
	TagTemplateKey = config.TagTemplateKey

	// RolloutDurationKey is the name of the configuration entry
	// that specifies the default duration of the configuration rollout.
	//
	// Deprecated: use knative.dev/networking/pkg/config.RolloutDurationKey
	RolloutDurationKey = config.RolloutDurationKey

	// NamespaceWildcardCertSelectorKey is the name of the configuration
	// entry that specifies a LabelSelector to control which namespaces
	// have a wildcard certificate provisioned for them.
	//
	// Deprecated: use knative.dev/networking/pkg/config.NamespaceWildcardCertSelectorKey
	NamespaceWildcardCertSelectorKey = config.NamespaceWildcardCertSelectorKey

	// AutocreateClusterDomainClaimsKey is the key for the
	// AutocreateClusterDomainClaims property.
	//
	// Deprecated: use knative.dev/networking/pkg/config.AutocreateClusterDomainClaimsKey
	AutocreateClusterDomainClaimsKey = config.AutocreateClusterDomainClaimsKey

	// AutoTLSKey is the name of the configuration entry
	// that specifies enabling auto-TLS or not.
	//
	// Deprecated: use knative.dev/networking/pkg/config.AutoTLSKey
	AutoTLSKey = config.AutoTLSKey

	// HTTPProtocolKey is the name of the configuration entry that
	// specifies the HTTP endpoint behavior of Knative ingress.
	//
	// Deprecated: use knative.dev/networking/pkg/config.HTTPProtocolKey
	HTTPProtocolKey = config.HTTPProtocolKey

	// EnableMeshPodAddressabilityKey is the config for enabling pod addressability in mesh.
	//
	// Deprecated: use knative.dev/networking/pkg/config.EnableMeshPodAddressabilityKey
	EnableMeshPodAddressabilityKey = config.EnableMeshPodAddressabilityKey

	// MeshCompatibilityModeKey is the config for selecting the mesh compatibility mode.
	//
	// Deprecated: use knative.dev/networking/pkg/config.MeshCompatibilityModeKey
	MeshCompatibilityModeKey = config.MeshCompatibilityModeKey

	// DefaultExternalSchemeKey is the config for defining the scheme of external URLs.
	//
	// Deprecated: use knative.dev/networking/pkg/config.DefaultExternalSchemeKey
	DefaultExternalSchemeKey = config.DefaultExternalSchemeKey
)
View Source
const (
	// ProbeHeaderName is the name of a header that can be added to
	// requests to probe the knative networking layer.  Requests
	// with this header will not be passed to the user container or
	// included in request metrics.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.ProbeKey
	ProbeHeaderName = header.ProbeKey

	// ProxyHeaderName is the name of an internal header that activator
	// uses to mark requests going through it.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.ProxyKey
	ProxyHeaderName = header.ProxyKey

	// HashHeaderName is the name of an internal header that Ingress controller
	// uses to find out which version of the networking config is deployed.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.HashKey
	HashHeaderName = header.HashKey

	// HashHeaderValue is the value that must appear in the HashHeaderName
	// header in order for our network hash to be injected.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.HashValueOverride
	HashHeaderValue = header.HashValueOverride

	// OriginalHostHeader is used to avoid Istio host based routing rules
	// in Activator.
	// The header contains the original Host value that can be rewritten
	// at the Queue proxy level back to be a host header.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.OriginalHostKey
	OriginalHostHeader = header.OriginalHostKey

	// KubeProbeUAPrefix is the user agent prefix of the probe.
	// Since K8s 1.8, prober requests have
	//   User-Agent = "kube-probe/{major-version}.{minor-version}".
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.KubeProbeUAPrefix
	KubeProbeUAPrefix = header.KubeProbeUAPrefix

	// KubeletProbeHeaderName is the name of the header supplied by kubelet
	// probes.  Istio with mTLS rewrites probes, but their probes pass a
	// different user-agent.  So we augment the probes with this header.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.KubeletProbeKey
	KubeletProbeHeaderName = header.KubeletProbeKey

	// UserAgentKey is the constant for header "User-Agent".
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.UserAgentKey
	UserAgentKey = header.UserAgentKey

	// ActivatorUserAgent is the user-agent header value set in probe requests sent
	// from activator.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.ActivatorUserAgent
	ActivatorUserAgent = header.ActivatorUserAgent

	// QueueProxyUserAgent is the user-agent header value set in probe requests sent
	// from queue-proxy.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.QueueProxyUserAgent
	QueueProxyUserAgent = header.QueueProxyUserAgent

	// IngressReadinessUserAgent is the user-agent header value
	// set in probe requests for Ingress status.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.IngressReadinessUserAgent
	IngressReadinessUserAgent = header.IngressReadinessUserAgent

	// AutoscalingUserAgent is the user-agent header value set in probe
	// requests sent by autoscaling implementations.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.AutoscalingUserAgent
	AutoscalingUserAgent = header.AutoscalingUserAgent

	// TagHeaderName is the name of the header entry which has a tag name as value.
	// The tag name specifies which route was expected to be chosen by Ingress.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.RouteTagKey
	TagHeaderName = header.RouteTagKey

	// DefaultRouteHeaderName is the name of the header entry
	// identifying whether a request is routed via the default route or not.
	// It has one of the string value "true" or "false".
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.DefaultRouteKey
	DefaultRouteHeaderName = header.DefaultRouteKey

	// PassthroughLoadbalancingHeaderName is the name of the header that directs
	// load balancers to not load balance the respective request but to
	// send it to the request's target directly.
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.PassthroughLoadbalancingKey
	PassthroughLoadbalancingHeaderName = header.PassthroughLoadbalancingKey

	// ProtoAcceptContent is the content type to be used when autoscaler scrapes metrics from the QP
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.ProtobufMIMEType
	ProtoAcceptContent = header.ProtobufMIMEType

	// ProbeHeaderValue is the value used in 'K-Network-Probe'
	//
	// Deprecated: use knative.dev/networking/pkg/http/header.ProbeValue
	ProbeHeaderValue = header.ProbeValue
)
View Source
const (
	// ProbePath is the name of a path that activator, autoscaler and
	// prober(used by KIngress generally) use for health check.
	//
	// Deprecated: use knative.dev/networking/pkg/http.HealthCheckPath
	ProbePath = http.HealthCheckPath

	// FlushInterval controls the time when we flush the connection in the
	// reverse proxies (Activator, QP).
	// As of go1.16, a FlushInterval of 0 (the default) still flushes immediately
	// when Content-Length is -1, which means the default works properly for
	// streaming/websockets, without flushing more often than necessary for
	// non-streaming requests.
	//
	// Deprecated: use knative.dev/networking/pkg/http/proxy.FlushInterval
	FlushInterval = proxy.FlushInterval
)
View Source
const (
	// ReqIn represents an incoming request
	//
	// Deprecated: use knative.dev/networking/pkg/http/stats.ReqIn
	ReqIn = stats.ReqIn

	// ReqOut represents a finished request
	//
	// Deprecated: use knative.dev/networking/pkg/http/stats.ReqOut
	ReqOut = stats.ReqOut

	// ProxiedIn represents an incoming request through a proxy.
	//
	// Deprecated: use knative.dev/networking/pkg/http/stats.ProxiedIn
	ProxiedIn = stats.ProxiedIn

	// ProxiedOut represents a finished proxied request.
	//
	// Deprecated: use knative.dev/networking/pkg/http/stats.ProxiedOut
	ProxiedOut = stats.ProxiedOut
)
View Source
const (
	// VisibilityLabelKey is the label to indicate visibility of Route
	// and KServices.  It can be an annotation too but since users are
	// already using labels for domain, it probably best to keep this
	// consistent.
	//
	// Deprecated: use knative.dev/networking/pkg/apis/networking.VisibilityLabelKey
	VisibilityLabelKey = networking.VisibilityLabelKey
)

Variables

View Source
var (
	// NewRequestStats builds a RequestStats instance, started at the given time.
	//
	// Deprecated: use knative.dev/networking/pkg/http/stats.NewRequestStats
	NewRequestStats = stats.NewRequestStats

	// NewBufferPool creates a new BufferPool. This is only safe to use in the context
	// of a httputil.ReverseProxy, as the buffers returned via Put are not cleaned
	// explicitly.
	//
	// Deprecated: use knative.dev/networking/pkg/http/proxy.NewBufferPool
	NewBufferPool = proxy.NewBufferPool

	// NewProbeHandler wraps a HTTP handler handling probing requests around the provided HTTP handler
	//
	// Deprecated: use knative.dev/networking/pkg/http/probe.NewHandler
	NewProbeHandler = probe.NewHandler

	// IsPotentialMeshErrorResponse returns whether the HTTP response is compatible
	// with having been caused by attempting direct connection when mesh was
	// enabled. For example if we get a HTTP 404 status code it's safe to assume
	// mesh is not enabled even if a probe was otherwise unsuccessful. This is
	// useful to avoid falling back to ClusterIP when we see errors which are
	// unrelated to mesh being enabled.
	//
	// Deprecated: use knative.dev/networking/pkg/http.IsPotentialMeshErrorResponse
	IsPotentialMeshErrorResponse = http.IsPotentialMeshErrorResponse
)
View Source
var IsKubeletProbe = header.IsKubeletProbe

IsKubeletProbe returns true if the request is a Kubernetes probe.

Deprecated: use knative.dev/networking/pkg/http/header.IsKubeletProbe

View Source
var IsProbe = header.IsProbe

IsProbe returns true if the request is a Kubernetes probe or a Knative probe, i.e. non-empty ProbeHeaderName header.

Deprecated: use knative.dev/networking/pkg/http/header.IsProbe

View Source
var KnativeProbeHeader = header.GetKnativeProbeValue

KnativeProbeHeader returns the value for key ProbeHeaderName in request headers.

Deprecated: use knative.dev/networking/pkg/http/header.GetKnativeProbeValue

View Source
var KnativeProxyHeader = header.GetKnativeProxyValue

KnativeProxyHeader returns the value for key ProxyHeaderName in request headers.

Deprecated: use knative.dev/networking/pkg/http/header.GetKnativeProxyValue

View Source
var NameForPortNumber = k8s.NameForPortNumber

NameForPortNumber finds the name for a given port as defined by a Service.

Deprecated: use knative.dev/networking/pkg/k8s.NameForPortNumber

View Source
var NewConfigFromMap = config.NewConfigFromMap

NewConfigFromMap creates a Config from the supplied data.

Deprecated: Use knative.dev/networking/pkg/config/NewConfigFromMap

View Source
var PortNumberForName = k8s.PortNumberForName

PortNumberForName resolves a given name to a portNumber as defined by an EndpointSubset.

Deprecated: use knative.dev/networking/pkg/k8s.PortNumberForName

View Source
var RewriteHostIn = header.RewriteHostIn

RewriteHostIn removes the `Host` header from the inbound (server) request and replaces it with our custom header. This is done to avoid Istio Host based routing, see #3870. Queue-Proxy will execute the reverse process.

Deprecated: use knative.dev/networking/pkg/http/header.RewriteHostIn

View Source
var RewriteHostOut = header.RewriteHostOut

RewriteHostOut undoes the `RewriteHostIn` action. RewriteHostOut checks if network.OriginalHostHeader was set and if it was, then uses that as the r.Host (which takes priority over Request.Header["Host"]). If the request did not have the OriginalHostHeader header set, the request is untouched.

Deprecated: use knative.dev/networking/pkg/http/header.RewriteHostOut

Functions

This section is empty.

Types

type Config deprecated

type Config = config.Config

Config contains the networking configuration defined in the network config map.

Deprecated: use knative.dev/networking/pkg/config.Config

func NewConfigFromConfigMap

func NewConfigFromConfigMap(configMap *corev1.ConfigMap) (*Config, error)

NewConfigFromConfigMap creates a Config from the supplied ConfigMap

type DomainTemplateValues deprecated

type DomainTemplateValues = config.DomainTemplateValues

DomainTemplateValues are the available properties people can choose from in their Route's "DomainTemplate" golang template sting. We could add more over time - e.g. RevisionName if we thought that might be of interest to people.

Deprecated: use knative.dev/networking/pkg/config.DomainTemplateValues

type HTTPProtocol deprecated

type HTTPProtocol = config.HTTPProtocol

HTTPProtocol indicates a type of HTTP endpoint behavior that Knative ingress could take.

Deprecated: use knative.dev/networking/pkg/config.HTTPProtocol

const (
	// HTTPEnabled represents HTTP protocol is enabled in Knative ingress.
	//
	// Deprecated: use knative.dev/networking/pkg/config.HTTPEnabled
	HTTPEnabled HTTPProtocol = config.HTTPEnabled

	// HTTPDisabled represents HTTP protocol is disabled in Knative ingress.
	//
	// Deprecated: use knative.dev/networking/pkg/config.HTTPDisabled
	HTTPDisabled HTTPProtocol = config.HTTPDisabled

	// HTTPRedirected represents HTTP connection is redirected to HTTPS in Knative ingress.
	//
	// Deprecated: use knative.dev/networking/pkg/config.HTTPRedirected
	HTTPRedirected HTTPProtocol = config.HTTPRedirected
)

type MeshCompatibilityMode deprecated

type MeshCompatibilityMode = config.MeshCompatibilityMode

MeshCompatibilityMode is one of enabled (always use ClusterIP), disabled (always use Pod IP), or auto (try PodIP, and fall back to ClusterIP if mesh is detected).

Deprecated: use knative.dev/networking/pkg/config.MeshCompatibilityMode

const (
	// MeshCompatibilityModeEnabled instructs consumers of network plugins, such as
	// Knative Serving, to use ClusterIP when connecting to pods. This is
	// required when mesh is enabled (unless EnableMeshPodAddressability is set),
	// but is less efficient.
	//
	// Deprecated: Use knative.dev/networking/pkg/config/MeshCompatibilityModeEnabled
	MeshCompatibilityModeEnabled MeshCompatibilityMode = config.MeshCompatibilityModeEnabled

	// MeshCompatibilityModeDisabled instructs consumers of network plugins, such as
	// Knative Serving, to connect to individual Pod IPs. This is most efficient,
	// but will only work with mesh enabled when EnableMeshPodAddressability is
	// used.
	//
	// Deprecated: Use knative.dev/networking/pkg/config/MeshCompatibilityModeDisabled
	MeshCompatibilityModeDisabled MeshCompatibilityMode = config.MeshCompatibilityModeDisabled

	// MeshCompatibilityModeAuto instructs consumers of network plugins, such as
	// Knative Serving, to heuristically determine whether to connect using the
	// Cluster IP, or to ocnnect to individual Pod IPs. This is most efficient,
	// determine whether mesh is enabled, and fall back from Direct Pod IP
	// communication to Cluster IP as needed.
	//
	// Deprecated: Use knative.dev/networking/pkg/config/MeshCompatibilityModeAuto
	MeshCompatibilityModeAuto MeshCompatibilityMode = config.MeshCompatibilityModeAuto
)

type ReqEvent deprecated

type ReqEvent = stats.ReqEvent

ReqEvent represents either an incoming or closed request.

Deprecated: use knative.dev/networking/pkg/http/stats.ReqEvent

type ReqEventType deprecated

type ReqEventType = stats.ReqEventType

ReqEventType denotes the type (incoming/closed) of a ReqEvent.

Deprecated: use knative.dev/networking/pkg/http/stats.ReqEventType

type RequestStats deprecated

type RequestStats = stats.RequestStats

RequestStats collects statistics about requests as they flow in and out of the system.

Deprecated: use knative.dev/networking/pkg/http/stats.RequestStats

type RequestStatsReport deprecated

type RequestStatsReport = stats.RequestStatsReport

RequestStatsReport are the metrics reported from the the request stats collector at a given time.

Deprecated: use knative.dev/networking/pkg/http/stats.RequestStatsReport

type TagTemplateValues deprecated

type TagTemplateValues = config.TagTemplateValues

TagTemplateValues are the available properties people can choose from in their Route's "TagTemplate" golang template sting.

Deprecated: use knative.dev/networking/pkg/config.TagTemplateValues

Directories

Path Synopsis
apis
config
Package config holds the typed objects that define the schemas for ConfigMap objects that pertain to our API objects.
Package config holds the typed objects that define the schemas for ConfigMap objects that pertain to our API objects.
networking/v1alpha1
+k8s:deepcopy-gen=package +groupName=networking.internal.knative.dev
+k8s:deepcopy-gen=package +groupName=networking.internal.knative.dev
client
clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
clientset/versioned/typed/networking/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
clientset/versioned/typed/networking/v1alpha1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
+k8s:deepcopy-gen=package Package network holds the typed objects that define the schemas for configuring the knative/serving networking layer.
+k8s:deepcopy-gen=package Package network holds the typed objects that define the schemas for configuring the knative/serving networking layer.
Package ingress holds utilities related to the implementation of ingress controllers.
Package ingress holds utilities related to the implementation of ingress controllers.
Package prober contains functionality for implementing probing in knative serving.
Package prober contains functionality for implementing probing in knative serving.
testing

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL