Package v1alpha1 contains API Schema definitions for the config v1alpha1 API group
Appears in:
| Field | Description |
|---|---|
name string |
Name |
criterion string |
Criterion is the name of a sample fetch method, or one of its ACL specific declinations. |
values string array |
Values are of the type supported by the criterion. |
Backend is the Schema for the backend API
| Field | Description |
|---|---|
apiVersion string |
config.haproxy.com/v1alpha1 |
kind string |
Backend |
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
spec BackendSpec |
Appears in:
| Field | Description |
|---|---|
name string |
Name of a specific backend |
regexMapping RegexBackendMapping |
Mapping of multiple backends |
BackendSpec defines the desired state of Backend
Appears in:
| Field | Description |
|---|---|
mode string |
Mode can be either 'tcp' or 'http'. In TCP mode it is a layer 4 proxy. In HTTP mode it is a layer 7 proxy. |
httpRequest HTTPRequestRules |
HTTPRequest rules define a set of rules which apply to layer 7 processing. |
tcpRequest TCPRequestRule array |
TCPRequest rules perform an action on an incoming connection depending on a layer 4 condition. |
acl ACL array |
ACL (Access Control Lists) provides a flexible solution to perform content switching and generally to take decisions based on content extracted from the request, the response or any environmental status |
timeouts object (keys:string, values:Duration) |
Timeouts: check, connect, http-keep-alive, http-request, queue, server, tunnel. The timeout value specified in milliseconds by default, but can be in any other unit if the number is suffixed by the unit. More info: https://cbonte.github.io/haproxy-dconv/2.6/configuration.html |
errorFiles ErrorFile array |
ErrorFiles custom error files to be used |
forwardFor Forwardfor |
Forwardfor enable insertion of the X-Forwarded-For header to requests sent to servers |
httpPretendKeepalive boolean |
HTTPPretendKeepalive will keep the connection alive. It is recommended not to enable this option by default. |
checkTimeout Duration |
CheckTimeout sets an additional check timeout, but only after a connection has been already established. |
servers Server array |
Servers defines the backend servers and its configuration. |
serverTemplates ServerTemplate array |
ServerTemplates defines the backend server templates and its configuration. |
balance Balance |
Balance defines the load balancing algorithm to be used in a backend. |
hostRegex string |
HostRegex specifies a regular expression used for backend switching rules. |
hostCertificate CertificateListElement |
HostCertificate specifies a certificate for that host used in the crt-list of a frontend |
redispatch boolean |
Redispatch enable or disable session redistribution in case of connection failure |
hashType HashType |
HashType specifies a method to use for mapping hashes to servers |
cookie Cookie |
Cookie enables cookie-based persistence in a backend. |
Appears in:
| Field | Description |
|---|---|
backend BackendReference |
Backend reference used to resolve the backend name. |
Appears in:
| Field | Description |
|---|---|
algorithm string |
Algorithm is the algorithm used to select a server when doing load balancing. This only applies when no persistence information is available, or when a connection is redispatched to another server. |
Appears in:
| Field | Description |
|---|---|
mode string |
Mode can be either 'tcp' or 'http'. In TCP mode it is a layer 4 proxy. In HTTP mode it is a layer 7 proxy. |
httpRequest HTTPRequestRules |
HTTPRequest rules define a set of rules which apply to layer 7 processing. |
tcpRequest TCPRequestRule array |
TCPRequest rules perform an action on an incoming connection depending on a layer 4 condition. |
acl ACL array |
ACL (Access Control Lists) provides a flexible solution to perform content switching and generally to take decisions based on content extracted from the request, the response or any environmental status |
timeouts object (keys:string, values:Duration) |
Timeouts: check, connect, http-keep-alive, http-request, queue, server, tunnel. The timeout value specified in milliseconds by default, but can be in any other unit if the number is suffixed by the unit. More info: https://cbonte.github.io/haproxy-dconv/2.6/configuration.html |
errorFiles ErrorFile array |
ErrorFiles custom error files to be used |
forwardFor Forwardfor |
Forwardfor enable insertion of the X-Forwarded-For header to requests sent to servers |
httpPretendKeepalive boolean |
HTTPPretendKeepalive will keep the connection alive. It is recommended not to enable this option by default. |
Appears in:
| Field | Description |
|---|---|
name string |
Name for these sockets, which will be reported on the stats page. |
address string |
Address can be a host name, an IPv4 address, an IPv6 address, or '*' (is equal to the special address "0.0.0.0"). |
port integer |
Port |
portRangeEnd int64 |
PortRangeEnd if set it must be greater than Port |
transparent boolean |
Transparent is an optional keyword which is supported only on certain Linux kernels. It indicates that the addresses will be bound even if they do not belong to the local machine, and that packets targeting any of these addresses will be intercepted just as if the addresses were locally configured. This normally requires that IP forwarding is enabled. Caution! do not use this with the default address '*', as it would redirect any traffic for the specified port. |
ssl SSL |
SSL configures OpenSSL |
sslCertificateList CertificateList |
This setting is only available when support for OpenSSL was built in. It designates a list of PEM file with an optional ssl configuration and a SNI filter per certificate. |
hidden boolean |
Hidden hides the bind and prevent exposing the Bind in services or routes |
acceptProxy boolean |
AcceptProxy enforces the use of the PROXY protocol over any connection accepted by any of the sockets declared on the same line. |
Appears in:
| Field | Description |
|---|---|
certificate SSLCertificate |
Certificate that will be presented to clients who provide a valid TLSServerNameIndication field matching the SNIFilter. |
sniFilter string |
SNIFilter specifies the filter for the SSL Certificate. Wildcards are supported in the SNIFilter. Negative filter are also supported. |
alpn string array |
Alpn enables the TLS ALPN extension and advertises the specified protocol list as supported on top of ALPN. |
Appears in:
| Field | Description |
|---|---|
enabled boolean |
Enable enables health checks on a server. If not set, no health checking is performed, and the server is always considered available. |
inter Duration |
Inter sets the interval between two consecutive health checks. If left unspecified, the delay defaults to 2000 ms. |
rise int64 |
Rise specifies the number of consecutive successful health checks after a server will be considered as operational. This value defaults to 2 if unspecified. |
fall int64 |
Fall specifies the number of consecutive unsuccessful health checks after a server will be considered as dead. This value defaults to 3 if unspecified. |
Appears in:
| Field | Description |
|---|---|
name string |
Name of the cookie which will be monitored, modified or inserted in order to bring persistence. |
mode CookieMode |
Mode could be 'rewrite', 'insert', 'prefix'. Select one. |
indirect boolean |
Indirect no cookie will be emitted to a client which already has a valid one for the server which has processed the request. |
noCache boolean |
NoCache recommended in conjunction with the insert mode when there is a cache between the client and HAProx |
postOnly boolean |
PostOnly ensures that cookie insertion will only be performed on responses to POST requests. |
preserve boolean |
Preserve only be used with "insert" and/or "indirect". It allows the server to emit the persistence cookie itself. |
httpOnly boolean |
HTTPOnly add an "HttpOnly" cookie attribute when a cookie is inserted. It doesn't share the cookie with non-HTTP components. |
secure boolean |
Secure add a "Secure" cookie attribute when a cookie is inserted. The user agent never emits this cookie over non-secure channels. The cookie will be presented only over SSL/TLS connections. |
dynamic boolean |
Dynamic activates dynamic cookies, when used, a session cookie is dynamically created for each server, based on the IP and port of the server, and a secret key. |
domain string array |
Domain specify the domain at which a cookie is inserted. You can specify several domain names by invoking this option multiple times. |
maxIdle integer |
MaxIdle cookies are ignored after some idle time. |
maxLife integer |
MaxLife cookies are ignored after some life time. |
attribute string array |
Attribute add an extra attribute when a cookie is inserted. |
Appears in:
| Field | Description |
|---|---|
rewrite boolean |
Rewrite the cookie will be provided by the server. |
insert boolean |
Insert cookie will have to be inserted by haproxy in server responses. |
prefix boolean |
Prefix is needed in some specific environments where the client does not support more than one single cookie and the application already needs it. |
Appears in:
| Field | Description |
|---|---|
enabled boolean |
Enabled enables deny http request |
Appears in:
| Field | Description |
|---|---|
code integer |
Code is the HTTP status code. |
file StaticHTTPFile |
File designates a file containing the full HTTP response. |
Underlying type: struct{ConfigMapKeyRef *k8s.io/api/core/v1.ConfigMapKeySelector "json:"configMapKeyRef,omitempty""}
Appears in:
Appears in:
| Field | Description |
|---|---|
enabled boolean |
|
except string |
Pattern: ^[^\s]+$ |
header string |
Pattern: ^[^\s]+$ |
ifnone boolean |
Frontend is the Schema for the frontends API
| Field | Description |
|---|---|
apiVersion string |
config.haproxy.com/v1alpha1 |
kind string |
Frontend |
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
spec FrontendSpec |
FrontendSpec defines the desired state of Frontend
Appears in:
| Field | Description |
|---|---|
mode string |
Mode can be either 'tcp' or 'http'. In TCP mode it is a layer 4 proxy. In HTTP mode it is a layer 7 proxy. |
httpRequest HTTPRequestRules |
HTTPRequest rules define a set of rules which apply to layer 7 processing. |
tcpRequest TCPRequestRule array |
TCPRequest rules perform an action on an incoming connection depending on a layer 4 condition. |
acl ACL array |
ACL (Access Control Lists) provides a flexible solution to perform content switching and generally to take decisions based on content extracted from the request, the response or any environmental status |
timeouts object (keys:string, values:Duration) |
Timeouts: check, connect, http-keep-alive, http-request, queue, server, tunnel. The timeout value specified in milliseconds by default, but can be in any other unit if the number is suffixed by the unit. More info: https://cbonte.github.io/haproxy-dconv/2.6/configuration.html |
errorFiles ErrorFile array |
ErrorFiles custom error files to be used |
forwardFor Forwardfor |
Forwardfor enable insertion of the X-Forwarded-For header to requests sent to servers |
httpPretendKeepalive boolean |
HTTPPretendKeepalive will keep the connection alive. It is recommended not to enable this option by default. |
binds Bind array |
Binds defines the frontend listening addresses, ports and its configuration. |
backendSwitching BackendSwitchingRule array |
BackendSwitching rules specify the specific backend used if/unless an ACL-based condition is matched. |
defaultBackend LocalObjectReference |
DefaultBackend to use when no 'use_backend' rule has been matched. |
Appears in:
| Field | Description |
|---|---|
name string |
Name specifies the header name |
value HTTPHeaderValue |
Value specifies the header value |
Underlying type: struct{Env *k8s.io/api/core/v1.EnvVar "json:"env,omitempty""; Str *string "json:"str,omitempty""; Format *string "json:"format,omitempty""}
Appears in:
Appears in:
| Field | Description |
|---|---|
format string |
Value specifies the path value |
Appears in:
| Field | Description |
|---|---|
setHeader HTTPHeaderRule array |
SetHeader sets HTTP header fields |
setPath HTTPPathRule array |
SetPath sets request path |
addHeader HTTPHeaderRule array |
AddHeader appends HTTP header fields |
redirect Redirect array |
Redirect performs an HTTP redirection based on a redirect rule. |
replacePath ReplacePath array |
ReplacePath matches the value of the path using a regex and completely replaces it with the specified format. The replacement does not modify the scheme, the authority and the query-string. |
deny Deny |
Deny stops the evaluation of the rules and immediately rejects the request and emits an HTTP 403 error. Optionally the status code specified as an argument to deny_status. |
denyStatus int64 |
DenyStatus is the HTTP status code. |
return HTTPReturn |
Return stops the evaluation of the rules and immediately returns a response. |
Appears in:
| Field | Description |
|---|---|
content HTTPReturnContent |
Content is a full HTTP response specifying the errorfile to use, or the response payload specifying the file or the string to use. |
Underlying type: struct{Type string "json:"type""; Format string "json:"format""; Value string "json:"value""}
Appears in:
Appears in:
| Field | Description |
|---|---|
method string |
|
function string |
|
modifier string |
Appears in:
| Field | Description |
|---|---|
nx Duration |
Nx defines interval between two successive name resolution when the last answer was nx. |
obsolete Duration |
Obsolete defines interval between two successive name resolution when the last answer was obsolete. |
other Duration |
Other defines interval between two successive name resolution when the last answer was other. |
refused Duration |
Refused defines interval between two successive name resolution when the last answer was nx. |
timeout Duration |
Timeout defines interval between two successive name resolution when the last answer was timeout. |
valid Duration |
Valid defines interval between two successive name resolution when the last answer was valid. |
Listen is the Schema for the frontends API
| Field | Description |
|---|---|
apiVersion string |
config.haproxy.com/v1alpha1 |
kind string |
Listen |
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
spec ListenSpec |
ListenSpec defines the desired state of Listen
Appears in:
| Field | Description |
|---|---|
mode string |
Mode can be either 'tcp' or 'http'. In TCP mode it is a layer 4 proxy. In HTTP mode it is a layer 7 proxy. |
httpRequest HTTPRequestRules |
HTTPRequest rules define a set of rules which apply to layer 7 processing. |
tcpRequest TCPRequestRule array |
TCPRequest rules perform an action on an incoming connection depending on a layer 4 condition. |
acl ACL array |
ACL (Access Control Lists) provides a flexible solution to perform content switching and generally to take decisions based on content extracted from the request, the response or any environmental status |
timeouts object (keys:string, values:Duration) |
Timeouts: check, connect, http-keep-alive, http-request, queue, server, tunnel. The timeout value specified in milliseconds by default, but can be in any other unit if the number is suffixed by the unit. More info: https://cbonte.github.io/haproxy-dconv/2.6/configuration.html |
errorFiles ErrorFile array |
ErrorFiles custom error files to be used |
forwardFor Forwardfor |
Forwardfor enable insertion of the X-Forwarded-For header to requests sent to servers |
httpPretendKeepalive boolean |
HTTPPretendKeepalive will keep the connection alive. It is recommended not to enable this option by default. |
binds Bind array |
Binds defines the frontend listening addresses, ports and its configuration. |
servers Server array |
Servers defines the backend servers and its configuration. |
serverTemplates ServerTemplate array |
ServerTemplates defines the backend server templates and its configuration. |
checkTimeout Duration |
CheckTimeout sets an additional check timeout, but only after a connection has been already established. |
balance Balance |
Balance defines the load balancing algorithm to be used in a backend. |
redispatch boolean |
Redispatch enable or disable session redistribution in case of connection failure |
hashType HashType |
HashType Specify a method to use for mapping hashes to servers |
cookie Cookie |
Cookie enables cookie-based persistence in a backend. |
hostCertificate CertificateListElement |
HostCertificate specifies a certificate for that host used in the crt-list of a frontend |
Appears in:
| Field | Description |
|---|---|
name string |
Name specifies a unique name of the nameserver. |
address string |
Address |
port integer |
Port |
Appears in:
| Field | Description |
|---|---|
v1 boolean |
V1 parameter enforces use of the PROXY protocol version 1. |
v2 ProxyProtocolV2 |
V2 parameter enforces use of the PROXY protocol version 2. |
v2SSL boolean |
V2SSL parameter add the SSL information extension of the PROXY protocol to the PROXY protocol header. |
v2SSLCN boolean |
V2SSLCN parameter add the SSL information extension of the PROXY protocol to the PROXY protocol header and he SSL information extension along with the Common Name from the subject of the client certificate (if any), is added to the PROXY protocol header. |
Appears in:
| Field | Description |
|---|---|
ssl boolean |
Ssl is equivalent to use V2SSL. |
certCn boolean |
CertCn is equivalent to use V2SSLCN. |
sslCipher boolean |
SslCipher is the name of the used cipher. |
certSig boolean |
CertSig is the signature algorithm of the used certificate. |
certKey boolean |
CertKey is the key algorithm of the used certificate. |
authority boolean |
Authority is the host name value passed by the client (only SNI from a TLS) |
crc32C boolean |
Crc32c is the checksum of the PROXYv2 header. |
uniqueID boolean |
UniqueId sends a unique ID generated using the frontend's "unique-id-format" within the PROXYv2 header. This unique-id is primarily meant for "mode tcp". It can lead to unexpected results in "mode http". |
Appears in:
| Field | Description |
|---|---|
code int64 |
Code indicates which type of HTTP redirection is desired. |
type RedirectType |
Type selects a mode and value to redirect |
value string |
Value to redirect |
option RedirectOption |
Value to redirect |
Appears in:
| Field | Description |
|---|---|
name string |
Name |
value string |
Value |
Underlying type: struct{Location bool "json:"location""; Prefix bool "json:"insert""; Scheme bool "json:"prefix""}
Appears in:
Appears in:
| Field | Description |
|---|---|
name string |
Name to identify the mapping |
parameter string |
Parameter which will be used for the mapping (default: base) |
selector LabelSelector |
LabelSelector to select multiple backends |
Appears in:
| Field | Description |
|---|---|
matchRegex string |
MatchRegex is a string pattern used to identify the paths that need to be replaced. |
replaceFmt string |
ReplaceFmt defines the format string used to replace the values that match the pattern. |
Resolver is the Schema for the Resolver API
| Field | Description |
|---|---|
apiVersion string |
config.haproxy.com/v1alpha1 |
kind string |
Resolver |
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
spec ResolverSpec |
ResolverSpec defines the desired state of Resolver
Appears in:
| Field | Description |
|---|---|
nameservers Nameserver array |
Nameservers used to configure a nameservers. |
acceptedPayloadSize int64 |
AcceptedPayloadSize defines the maximum payload size accepted by HAProxy and announced to all the name servers configured in this resolver. |
parseResolvConf boolean |
ParseResolvConf if true, adds all nameservers found in /etc/resolv.conf to this resolvers nameservers list. |
resolveRetries int64 |
ResolveRetries defines the number of queries to send to resolve a server name before giving up. Default value: 3 |
hold Hold |
Hold defines the period during which the last name resolution should be kept based on the last resolution status. |
timeouts Timeouts |
Timeouts defines timeouts related to name resolution. |
Underlying type: struct{ConditionType string "json:"conditionType,omitempty""; Condition string "json:"condition,omitempty""}
Appears in:
Appears in:
| Field | Description |
|---|---|
enabled boolean |
Enabled enables SSL deciphering on connections instantiated from this listener. A certificate is necessary. All contents in the buffers will appear in clear text, so that ACLs and HTTP processing will only have access to deciphered contents. SSLv3 is disabled per default, set MinVersion to SSLv3 to enable it. |
minVersion string |
MinVersion enforces use of the specified version or upper on SSL connections instantiated from this listener. |
verify string |
Verify is only available when support for OpenSSL was built in. If set to 'none', client certificate is not requested. This is the default. In other cases, a client certificate is requested. If the client does not provide a certificate after the request and if 'Verify' is set to 'required', then the handshake is aborted, while it would have succeeded if set to 'optional'. The verification of the certificate provided by the client using CAs from CACertificate. On verify failure the handshake abortes, regardless of the 'verify' option. |
caCertificate SSLCertificate |
CACertificate configures the CACertificate used for the Server or Bind client certificate |
certificate SSLCertificate |
Certificate configures a PEM based Certificate file containing both the required certificates and any associated private keys. |
sni string |
SNI parameter evaluates the sample fetch expression, converts it to a string and uses the result as the host name sent in the SNI TLS extension to the server. |
alpn string array |
Alpn enables the TLS ALPN extension and advertises the specified protocol list as supported on top of ALPN. |
Appears in:
| Field | Description |
|---|---|
name string |
|
value string |
|
valueFrom SSLCertificateValueFrom array |
Appears in:
| Field | Description |
|---|---|
configMapKeyRef ConfigMapKeySelector |
ConfigMapKeyRef selects a key of a ConfigMap |
secretKeyRef SecretKeySelector |
SecretKeyRef selects a key of a secret in the pod namespace |
Appears in:
| Field | Description |
|---|---|
ssl SSL |
SSL configures OpenSSL |
weight int64 |
Weight parameter is used to adjust the server weight relative to other servers. All servers will receive a load proportional to their weight relative to the sum of all weights. |
check Check |
Check configures the health checks of the server. |
initAddr string |
InitAddr indicates in what order the server address should be resolved upon startup if it uses an FQDN. Attempts are made to resolve the address by applying in turn each of the methods mentioned in the comma-delimited list. The first method which succeeds is used. |
resolvers LocalObjectReference |
Resolvers points to an existing resolvers to resolve current server hostname. |
sendProxy boolean |
SendProxy enforces use of the PROXY protocol over any connection established to this server. The PROXY protocol informs the other end about the layer 3/4 addresses of the incoming connection, so that it can know the client address or the public address it accessed to, whatever the upper layer protocol. |
SendProxyV2 ProxyProtocol |
SendProxyV2 preparing new update. |
verifyHost string |
VerifyHost is only available when support for OpenSSL was built in, and only takes effect if pec.ssl.verify' is set to 'required'. This directive sets a default static hostname to check the server certificate against when no SNI was used to connect to the server. |
cookie boolean |
Cookie sets the cookie value assigned to the server. |
name string |
Name of the server. |
address string |
Address can be a host name, an IPv4 address, an IPv6 address. |
port integer |
Port |
Appears in:
| Field | Description |
|---|---|
ssl SSL |
SSL configures OpenSSL |
weight int64 |
Weight parameter is used to adjust the server weight relative to other servers. All servers will receive a load proportional to their weight relative to the sum of all weights. |
check Check |
Check configures the health checks of the server. |
initAddr string |
InitAddr indicates in what order the server address should be resolved upon startup if it uses an FQDN. Attempts are made to resolve the address by applying in turn each of the methods mentioned in the comma-delimited list. The first method which succeeds is used. |
resolvers LocalObjectReference |
Resolvers points to an existing resolvers to resolve current server hostname. |
sendProxy boolean |
SendProxy enforces use of the PROXY protocol over any connection established to this server. The PROXY protocol informs the other end about the layer 3/4 addresses of the incoming connection, so that it can know the client address or the public address it accessed to, whatever the upper layer protocol. |
SendProxyV2 ProxyProtocol |
SendProxyV2 preparing new update. |
verifyHost string |
VerifyHost is only available when support for OpenSSL was built in, and only takes effect if pec.ssl.verify' is set to 'required'. This directive sets a default static hostname to check the server certificate against when no SNI was used to connect to the server. |
cookie boolean |
Cookie sets the cookie value assigned to the server. |
Appears in:
| Field | Description |
|---|---|
ssl SSL |
SSL configures OpenSSL |
weight int64 |
Weight parameter is used to adjust the server weight relative to other servers. All servers will receive a load proportional to their weight relative to the sum of all weights. |
check Check |
Check configures the health checks of the server. |
initAddr string |
InitAddr indicates in what order the server address should be resolved upon startup if it uses an FQDN. Attempts are made to resolve the address by applying in turn each of the methods mentioned in the comma-delimited list. The first method which succeeds is used. |
resolvers LocalObjectReference |
Resolvers points to an existing resolvers to resolve current server hostname. |
sendProxy boolean |
SendProxy enforces use of the PROXY protocol over any connection established to this server. The PROXY protocol informs the other end about the layer 3/4 addresses of the incoming connection, so that it can know the client address or the public address it accessed to, whatever the upper layer protocol. |
SendProxyV2 ProxyProtocol |
SendProxyV2 preparing new update. |
verifyHost string |
VerifyHost is only available when support for OpenSSL was built in, and only takes effect if pec.ssl.verify' is set to 'required'. This directive sets a default static hostname to check the server certificate against when no SNI was used to connect to the server. |
cookie boolean |
Cookie sets the cookie value assigned to the server. |
prefix string |
Prefix for the server names to be built. |
numMin int64 |
NumMin is the min number of servers as server name suffixes this template initializes. |
num integer |
Num is the max number of servers as server name suffixes this template initializes. |
fqdn string |
FQDN for all the servers this template initializes. |
port integer |
Port |
Appears in:
| Field | Description |
|---|---|
name string |
|
value string |
|
valueFrom ErrorFileValueFrom |
Underlying type: string
StatusPhase is a label for the phase of an object at the current time.
Appears in:
Appears in:
| Field | Description |
|---|---|
type string |
Type specifies the type of the tcp-request rule. |
action string |
Action defines the action to perform if the condition applies. |
timeout Duration |
Timeout sets timeout for the action |
Appears in:
| Field | Description |
|---|---|
resolve Duration |
Resolve time to trigger name resolutions when no other time applied. Default value: 1s |
retry Duration |
Retry time between two DNS queries, when no valid response have been received. Default value: 1s |
Package v1alpha1 contains API Schema definitions for the proxy v1alpha1 API group
Appears in:
| Field | Description |
|---|---|
global GlobalConfiguration |
Global contains the global HAProxy configuration settings |
defaults DefaultsConfiguration |
Defaults presets settings for all frontend, backend and listen |
selector LabelSelector |
LabelSelector to select other configuration objects of the config.haproxy.com API |
Appears in:
| Field | Description |
|---|---|
mode string |
Mode can be either 'tcp' or 'http'. In tcp mode it is a layer 4 proxy. In http mode it is a layer 7 proxy. |
errorFiles ErrorFile array |
ErrorFiles custom error files to be used |
timeouts object (keys:string, values:Duration) |
Timeouts: check, client, client-fin, connect, http-keep-alive, http-request, queue, server, server-fin, tunnel. The timeout value specified in milliseconds by default, but can be in any other unit if the number is suffixed by the unit. More info: https://cbonte.github.io/haproxy-dconv/2.6/configuration.html |
logging DefaultsLoggingConfiguration |
Logging is used to configure default logging for all proxies. |
additionalParameters string |
AdditionalParameters can be used to specify any further configuration statements which are not covered in this section explicitly. |
Appears in:
| Field | Description |
|---|---|
enabled boolean |
Enabled will enable logs for all proxies |
httpLog boolean |
HTTPLog enables HTTP log format which is the most complete and the best suited for HTTP proxies. It provides the same level of information as the TCP format with additional features which are specific to the HTTP protocol. |
tcpLog boolean |
TCPLog enables advanced logging of TCP connections with session state and timers. By default, the log output format is very poor, as it only contains the source and destination addresses, and the instance name. |
Appears in:
| Field | Description |
|---|---|
reload boolean |
Reload enables auto-reload of the configuration using sockets. Requires an image that supports this feature. |
statsTimeout Duration |
StatsTimeout sets the timeout on the stats socket. Default is set to 10 seconds. |
logging GlobalLoggingConfiguration |
Logging is used to enable and configure logging in the global section of the HAProxy configuration. |
additionalParameters string |
AdditionalParameters can be used to specify any further configuration statements which are not covered in this section explicitly. |
additionalCertificates SSLCertificate array |
AdditionalCertificates can be used to include global ssl certificates which can bes used in any listen |
maxconn int64 |
Maxconn sets the maximum per-process number of concurrent connections. Proxies will stop accepting connections when this limit is reached. |
nbthread int64 |
Nbthread this setting is only available when support for threads was built in. It makes HAProxy run on specified number of threads. |
tune GlobalTuneOptions |
TuneOptions sets the global tune options. |
ssl GlobalSSL |
GlobalSSL sets the global SSL options. |
hardStopAfter Duration |
HardStopAfter is the maximum time the instance will remain alive when a soft-stop is received. |
Appears in:
| Field | Description |
|---|---|
enabled boolean |
Enabled will toggle the creation of a global syslog server. |
address string |
Address can be a filesystem path to a UNIX domain socket or a remote syslog target (IPv4/IPv6 address optionally followed by a colon and a UDP port). |
facility string |
Facility must be one of the 24 standard syslog facilities. |
level string |
Level can be specified to filter outgoing messages. By default, all messages are sent. |
format string |
Format is the log format used when generating syslog messages. |
sendHostname boolean |
SendHostname sets the hostname field in the syslog header. Generally used if one is not relaying logs through an intermediate syslog server. |
hostname string |
Hostname specifies a value for the syslog hostname header, otherwise uses the hostname of the system. |
Appears in:
| Field | Description |
|---|---|
defaultBindCiphers string array |
DefaultBindCiphers sets the list of cipher algorithms ("cipher suite") that are negotiated during the SSL/TLS handshake up to TLSv1.2 for all binds which do not explicitly define theirs. |
defaultBindCipherSuites string array |
DefaultBindCipherSuites sets the default list of cipher algorithms ("cipher suite") that are negotiated during the TLSv1.3 handshake for all binds which do not explicitly define theirs. |
defaultBindOptions GlobalSSLDefaultBindOptions |
DefaultBindOptions sets default ssl-options to force on all binds. |
Underlying type: struct{MinVersion *string "json:"minVersion,omitempty""}
Appears in:
Underlying type: struct{CacheSize *int64 "json:"cacheSize,omitempty""; Keylog string "json:"keylog,omitempty""; Lifetime *k8s.io/apimachinery/pkg/apis/meta/v1.Duration "json:"lifetime,omitempty""; ForcePrivateCache bool "json:"forcePrivateCache,omitempty""; MaxRecord *int64 "json:"maxRecord,omitempty""; DefaultDHParam int64 "json:"defaultDHParam,omitempty""; CtxCacheSize int64 "json:"ctxCacheSize,omitempty""; CaptureBufferSize *int64 "json:"captureBufferSize,omitempty""}
Appears in:
Appears in:
| Field | Description |
|---|---|
maxrewrite int64 |
Maxrewrite sets the reserved buffer space to this size in bytes. The reserved space is used for header rewriting or appending. The first reads on sockets will never fill more than bufsize-maxrewrite. |
bufsize int64 |
Bufsize sets the buffer size to this size (in bytes). Lower values allow more sessions to coexist in the same amount of RAM, and higher values allow some applications with very large cookies to work. |
ssl GlobalSSLTuneOptions |
SSL sets the SSL tune options. |
Instance is the Schema for the instances API
| Field | Description |
|---|---|
apiVersion string |
proxy.haproxy.com/v1alpha1 |
kind string |
Instance |
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
spec InstanceSpec |
Underlying type: string
InstancePhase is a label for the phase of a Instance at the current time.
Appears in:
InstanceSpec defines the desired state of Instance
Appears in:
| Field | Description |
|---|---|
replicas integer |
Replicas is the desired number of replicas of the HAProxy Instance. |
network Network |
Network contains the configuration of Route, Services and other network related configuration. |
configuration Configuration |
Configuration is used to bootstrap the global and defaults section of the HAProxy configuration. |
image string |
Image specifies the HaProxy image including th tag. |
sidecars Container array |
Sidecars additional sidecar containers |
serviceAccountName string |
ServiceAccountName is the name of the ServiceAccount to use to run this Instance. |
allowPrivilegedPorts boolean |
AllowPrivilegedPorts allows to bind sockets with port numbers less than 1024. |
placement Placement |
Placement define how the instance's pods should be scheduled. |
imagePullPolicy PullPolicy |
ImagePullPolicy one of Always, Never, IfNotPresent. |
metrics Metrics |
Metrics defines the metrics endpoint and scraping configuration. |
labels object (keys:string, values:string) |
Labels additional labels for the ha-proxy pods |
Appears in:
| Field | Description |
|---|---|
enabled boolean |
Enabled will enable metrics globally for Instance. |
address string |
Address to bind the metrics endpoint (default: '0.0.0.0'). |
port integer |
Port specifies the port used for metrics. |
relabelings RelabelConfig array |
RelabelConfigs to apply to samples before scraping. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
interval Duration |
Interval at which metrics should be scraped If not specified Prometheus' global scrape interval is used. |
Appears in:
| Field | Description |
|---|---|
hostNetwork boolean |
HostNetwork will enable the usage of host network. |
hostIPs object (keys:string, values:string) |
HostIPs defines an environment variable BIND_ADDRESS in the instance based on the provided host to IP mapping |
route RouteSpec |
Route defines the desired state for OpenShift Routes. |
service ServiceSpec |
Service defines the desired state for a Service. |
Appears in:
| Field | Description |
|---|---|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the pod to fit on a node. |
topologySpreadConstraints TopologySpreadConstraint array |
TopologySpreadConstraints describes how a group of pods ought to spread across topology domains. Scheduler will schedule pods in a way which abides by the constraints. |
Appears in:
| Field | Description |
|---|---|
enabled boolean |
Enabled will toggle the creation of OpenShift Routes. |
tls TLSConfig |
TLS provides the ability to configure certificates and termination for the route. |
Appears in:
| Field | Description |
|---|---|
enabled boolean |
Enabled will toggle the creation of a Service. |