Usage of :
--acme-check-period duration Time between checks of invalid or expiring certificates (default 24h0m0s)
--acme-election-id string Prefix of the election ID used to choose the acme leader (default "acme-leader")
--acme-fail-initial-duration duration The initial time to wait to retry sign a new certificate after a failure. The
time between retries will grow exponentially until 'acme-fail-max-duration' (default 5m0s)
--acme-fail-max-duration duration The maximum time to wait after failing to sign a new certificate (default 8h0m0s)
--acme-secret-key-name string Name and an optional namespace of the secret which will store the acme account
private key. If a namespace is not provided, the secret will be created in the
same namespace of the controller pod (default "acme-private-key")
--acme-server Enables ACME server. This server is used to receive and answer challenges from
Let's Encrypt or other ACME implementations.
--acme-token-configmap-name string Name and an optional namespace of the configmap which will store acme tokens
used to answer the acme challenges. If a namespace is not provided, the secret
will be created in the same namespace of the controller pod (default "acme-validation-tokens")
--acme-track-tls-annotation Enable tracking of ingress objects annotated with 'kubernetes.io/tls-acme'
--allow-cross-namespace Defines if the ingress controller can reference resources of another
namespaces. Cannot be used if force-namespace-isolation is true
--annotations-prefix string Defines a comma-separated list of annotation prefix for ingress and service (default "haproxy-ingress.github.io,ingress.kubernetes.io")
--apiserver-host string The address of the Kubernetes API server to connect to, in the format of
protocol://address:port, e.g., http://localhost:8080. If not specified, the
assumption is that the binary runs inside a Kubernetes cluster and local
discovery is attempted.
--backend-shards int Defines how much files should be used to configure the haproxy backends
--buckets-response-time float64Slice Configures the buckets of the histogram used to compute the response time of
the haproxy's admin socket. The response time unit is in seconds. (default [0.000500,0.001000,0.002000,0.005000,0.010000])
--configmap string Name of the ConfigMap that contains the custom configuration to use
--connection-timeout duration Defines the maximum amount of time HAProxy Ingress should wait for HAProxy
responses when connecting to its master or admin sockets. (default 30s)
--controller-class string Defines an alternative controller name this controller should listen to. If
empty, this controller will listen to ingress resources whose controller's
IngressClass is 'haproxy-ingress.github.io/controller'. Non-empty values add a
new /path, e.g., controller-class=staging will make this controller look for
'haproxy-ingress.github.io/controller/staging'
--default-backend-service string Service used to serve a 404 page for the default backend. Takes the form
namespace/name. The controller uses the first node port of this Service for the
default backend.
--default-ssl-certificate string Name of the secret that contains a SSL certificate to be used as
default for a HTTPS catch-all server
--disable-api-warnings Disable warnings from the API server.
--disable-config-keywords string Defines a comma-separated list of HAProxy keywords that should not be used on
annotation based configuration snippets. Configuration snippets added as a
global config does not follow this option. Use an asterisk * to disable
configuration snippets using annotations.
--disable-external-name Disables services of type ExternalName
--disable-node-list DEPRECATED: This flag used to disable node listing due to missing permissions.
Actually node listing isn't needed and it is always disabled
--disable-pod-list Defines if HAProxy Ingress should disable pod watch and in memory list. Pod
list is mandatory for drain-support (should not be disabled) and optional for
blue/green.
--election-id string Election id to be used for status update. (default "ingress-controller-leader")
--enable-endpointslices-api Enables EndpointSlices API and disables watching Endpoints API. Only enable in
k8s >=1.21+
--force-namespace-isolation Force namespace isolation. This flag is required to avoid the reference of
secrets, configmaps or the default backend service located in a different
namespace than the specified in the flag --watch-namespace.
--health-check-path string Defines the URL to be used as health check inside in the default server. (default "/healthz")
--healthz-port int port for healthz endpoint. (default 10254)
--ignore-ingress-without-class DEPRECATED, this option is ignored. Use --watch-ingress-without-class
command-line option instead to define if ingress without class should be
tracked.
--ingress-class string Name of the IngressClass to route through this controller. (default "haproxy")
--ingress-class-precedence Defines if IngressClass resource should take precedence over
kubernetes.io/ingress.class annotation if both are defined and conflicting.
--kubeconfig string Path to kubeconfig file with authorization and master location information.
--local-filesystem-prefix string Defines the prefix of a temporary directory HAProxy Ingress should create and
maintain all the configuration files. Useful for local deployment.
--log-caller Defines if the log output should add a reference of the caller with file name
and line number. Needs --log-zap enabled.
--log-dev Defines if development style logging should be used. Needs --log-zap enabled.
--log-enable-stacktrace Defines if error output should add stracktraces. Needs --log-zap enabled.
--log-encode-time string Configures the encode time used in the logs. Options are: rfc3339nano, rfc3339,
iso8601, millis, nanos. Defaults to 'rfc3339nano' if --log-dev is false and
'iso8601' if --log-dev is true. Needs --log-zap enabled.
--log-encoder string Defines the log encoder. Options are: 'console' or 'json'. Defaults to 'json' if
--log-dev is false and 'console' if --log-dev is true. Needs --log-zap enabled.
--log-zap Enables zap as the log sink for all the logging outputs.
--master-socket string Defines the master CLI unix socket of an external HAProxy running in
master-worker mode. Defaults to use the embedded HAProxy if not declared.
--master-worker Defines if haproxy should be configured in master-worker mode. If 'false', one
single process is forked in the background. If 'true', a master process is
started in the foreground and can be used to manage current and old worker
processes.
--max-old-config-files int Maximum number of old HAProxy timestamped config files to retain. Older files
are cleaned up. A value <= 0 indicates only a single non-timestamped config
file will be retained.
--profiling Enable profiling via web interface host:port/debug/pprof/ (default true)
--publish-service string Service fronting the ingress controllers. Takes the form namespace/name. The
controller will set the endpoint records on the ingress objects to reflect
those on the service.
--rate-limit-update float32 Maximum of updates per second this controller should perform. Default is 0.5,
which means wait 2 seconds between Ingress updates in order to add more changes
in a single reload (default 0.5)
--reload-interval duration Minimal time between two consecutive HAProxy reloads. The default value is 0,
which means to always reload HAProxy just after a configuration change enforces
a reload. The interval should be configured with a time suffix, eg 30s means
that if two distinct and consecutive configuration changes enforce a reload,
the second reload will be enqueued until 30 seconds have passed from the first
one, applying every new configuration changes made between this interval
--reload-strategy string Name of the reload strategy. Options are: native or reusesocket (default "reusesocket")
--report-node-internal-ip-address Defines if the nodes IP address to be returned in the ingress status should be
the internal instead of the external IP address
--sort-backends Defines if backend's endpoints should be sorted by name. This option has less
precedence than --sort-endpoints-by if both are declared.
--sort-endpoints-by string Defines how to sort backend's endpoints. Allowed values are: 'endpoint' - same
k8s endpoint order (default); 'name' - server/endpoint name;
'ip' - server/endpoint IP and port; 'random' - shuffle endpoints on every
haproxy reload
--stats-collect-processing-period duration Defines the interval between two consecutive readings of haproxy's Idle_pct.
haproxy updates Idle_pct every 500ms, which makes that the best configuration
value. Change to 0 (zero) to disable this metric. (default 500ms)
--sync-period duration Configures the default resync period of Kubernetes' informer factory. (default 10m0s)
--tcp-services-configmap string Name of the ConfigMap that contains the definition of the TCP services to
expose. The key in the map indicates the external port to be used. The value is
the name of the service with the format namespace/serviceName and the port of
the service could be a number of the name of the port. The ports 80 and 443 are
not allowed as external ports. This ports are reserved for the backend
--track-old-instances Creates an internal list of connections to old HAProxy instances. These
connections are used to read or send data to stopping instances, which is
usually serving long lived connections like TCP services or websockets.
--update-status Indicates if the controller should update the 'status' attribute of all the
Ingress resources that this controller is tracking. (default true)
--update-status-on-shutdown Indicates if the ingress controller should update the Ingress status
IP/hostname when the controller is being stopped. (default true)
-v, --v Level Number for the log level verbosity. 1: info; 2: add low verbosity debug. (default 2)
--validate-config Define if the resulting configuration files should be validated when a dynamic
update was applied. Default value is false, which means the validation will
only happen when HAProxy needs to be reloaded. If validation fails, HAProxy
Ingress will log the error and set the metric 'haproxyingress_update_success'
as failed (zero)
--verify-hostname Defines if the controller should verify if the provided certificate is valid,
ie, it's SAN extension has the hostname. (default true)
--version Shows release information about the Ingress controller
--wait-before-shutdown int Define time controller waits until it shuts down when SIGTERM signal was
received
--wait-before-update duration Amount of time to wait before start a reconciliation and update haproxy, giving
the time to receive all/most of the changes of a batch update. (default 200ms)
--watch-gateway Watch and parse resources from the Gateway API (default true)
--watch-ingress-without-class Defines if this controller should also listen to ingress resources that don't
declare neither the kubernetes.io/ingress.class annotation nor the
<ingress>.spec.ingressClassName field. Defaults to false
--watch-namespace string Namespace to watch for Ingress. Default is to watch all namespaces
pflag: help requested
Options (65)
| Option | Description | Source |
|---|---|---|
--acme-check-period duration | Time between checks of invalid or expiring certificates (default 24h0m0s) | help |
--acme-election-id string | Prefix of the election ID used to choose the acme leader (default "acme-leader") | help |
--acme-fail-initial-duration duration | The initial time to wait to retry sign a new certificate after a failure. | help |
--acme-fail-max-duration duration | The maximum time to wait after failing to sign a new certificate (default 8h0m0s) | help |
--acme-secret-key-name string | Name and an optional namespace of the secret which will store the acme account private key. | help |
--acme-server | Enables ACME server. | help |
--acme-token-configmap-name string | Name and an optional namespace of the configmap which will store acme tokens used to answer the acme challenges. | help |
--acme-track-tls-annotation | Enable tracking of ingress objects annotated with 'kubernetes.io/tls-acme' | help |
--allow-cross-namespace | Defines if the ingress controller can reference resources of another namespaces. | help |
--annotations-prefix string | Defines a comma-separated list of annotation prefix for ingress and service (default "haproxy-ingress.github.io,ingress.kubernetes.io") | help |
--apiserver-host string | The address of the Kubernetes API server to connect to, in the format of protocol://address:port, e.g., http://localhost:8080. | help |
--backend-shards int | Defines how much files should be used to configure the haproxy backends | help |
--buckets-response-time float64Slice | Configures the buckets of the histogram used to compute the response time of the haproxy's admin socket. | help |
--configmap string | Name of the ConfigMap that contains the custom configuration to use | help |
--connection-timeout duration | Defines the maximum amount of time HAProxy Ingress should wait for HAProxy responses when connecting to its master or admin sockets. | help |
--controller-class string | Defines an alternative controller name this controller should listen to. | help |
--default-backend-service string | Service used to serve a 404 page for the default backend. | help |
--default-ssl-certificate string | Name of the secret that contains a SSL certificate to be used as default for a HTTPS catch-all server | help |
--disable-api-warnings | Disable warnings from the API server. | help |
--disable-config-keywords string | Defines a comma-separated list of HAProxy keywords that should not be used on annotation based configuration snippets. | help |
--disable-external-name | Disables services of type ExternalName | help |
--disable-node-list | DEPRECATED: This flag used to disable node listing due to missing permissions. | help |
--disable-pod-list | Defines if HAProxy Ingress should disable pod watch and in memory list. | help |
--election-id string | Election id to be used for status update. | help |
--enable-endpointslices-api | Enables EndpointSlices API and disables watching Endpoints API. | help |
--force-namespace-isolation | Force namespace isolation. | help |
--health-check-path string | Defines the URL to be used as health check inside in the default server. | help |
--healthz-port int | port for healthz endpoint. | help |
--ignore-ingress-without-class | DEPRECATED, this option is ignored. | help |
--ingress-class string | Name of the IngressClass to route through this controller. | help |
--ingress-class-precedence | Defines if IngressClass resource should take precedence over kubernetes.io/ingress.class annotation if both are defined and conflicting. | help |
--kubeconfig string | Path to kubeconfig file with authorization and master location information. | help |
--local-filesystem-prefix string | Defines the prefix of a temporary directory HAProxy Ingress should create and maintain all the configuration files. | help |
--log-caller | Defines if the log output should add a reference of the caller with file name and line number. | help |
--log-dev | Defines if development style logging should be used. | help |
--log-enable-stacktrace | Defines if error output should add stracktraces. | help |
--log-encode-time string | Configures the encode time used in the logs. | help |
--log-encoder string | Defines the log encoder. | help |
--log-zap | Enables zap as the log sink for all the logging outputs. | help |
--master-socket string | Defines the master CLI unix socket of an external HAProxy running in master-worker mode. | help |
--master-worker | Defines if haproxy should be configured in master-worker mode. | help |
--max-old-config-files int | Maximum number of old HAProxy timestamped config files to retain. | help |
--profiling | Enable profiling via web interface host:port/debug/pprof/ (default true) | help |
--publish-service string | Service fronting the ingress controllers. | help |
--rate-limit-update float32 | Maximum of updates per second this controller should perform. | help |
--reload-interval duration | Minimal time between two consecutive HAProxy reloads. | help |
--reload-strategy string | Name of the reload strategy. | help |
--report-node-internal-ip-address | Defines if the nodes IP address to be returned in the ingress status should be the internal instead of the external IP address | help |
--sort-backends | Defines if backend's endpoints should be sorted by name. | help |
--sort-endpoints-by string | Defines how to sort backend's endpoints. | help |
--stats-collect-processing-period duration | Defines the interval between two consecutive readings of haproxy's Idle_pct. | help |
--sync-period duration | Configures the default resync period of Kubernetes' informer factory. | help |
--tcp-services-configmap string | Name of the ConfigMap that contains the definition of the TCP services to expose. | help |
--track-old-instances | Creates an internal list of connections to old HAProxy instances. | help |
--update-status | Indicates if the controller should update the 'status' attribute of all the Ingress resources that this controller is tracking. | help |
--update-status-on-shutdown | Indicates if the ingress controller should update the Ingress status IP/hostname when the controller is being stopped. | help |
-v, --v Level | Number for the log level verbosity. | help |
--validate-config | Define if the resulting configuration files should be validated when a dynamic update was applied. | help |
--verify-hostname | Defines if the controller should verify if the provided certificate is valid, ie, it's SAN extension has the hostname. | help |
--version | Shows release information about the Ingress controller | help |
--wait-before-shutdown int | Define time controller waits until it shuts down when SIGTERM signal was received | help |
--wait-before-update duration | Amount of time to wait before start a reconciliation and update haproxy, giving the time to receive all/most of the changes of a batch update. | help |
--watch-gateway | Watch and parse resources from the Gateway API (default true) | help |
--watch-ingress-without-class | Defines if this controller should also listen to ingress resources that don't declare neither the kubernetes.io/ingress.class annotation nor the <ingress>.spec.ingressClassName field. | help |
--watch-namespace string | Namespace to watch for Ingress. | help |