OS Manuals

/usr/bin/csi-provisioner

A dynamic provisioner for Kubernetes CSI plugins.

From kubernetes-csi-external-provisioner 6.4.0-r3 (enterprise-packages), captured 2026-11-08 by running csi-provisioner --help (exit 0). permalink

Usage of /usr/bin/csi-provisioner:
      --automaxprocs boolFunc[=true]              automatically set GOMAXPROCS to match Linux container CPU quota
      --capacity-for-immediate-binding            Enables producing capacity information for storage classes with immediate binding. Not needed for the Kubernetes scheduler, maybe useful for other consumers or for debugging.
      --capacity-ownerref-level int               The level indicates the number of objects that need to be traversed starting from the pod identified by the POD_NAME and NAMESPACE environment variables to reach the owning object for CSIStorageCapacity objects: -1 for no owner, 0 for the pod itself, 1 for a StatefulSet or DaemonSet, 2 for a Deployment, etc. (default 1)
      --capacity-poll-interval duration           How long the external-provisioner waits before checking for storage capacity changes. (default 1m0s)
      --capacity-threads uint                     Number of simultaneously running threads, handling CSIStorageCapacity objects (default 1)
      --cloning-protection-threads uint           Number of simultaneously running threads, handling cloning finalizer removal (default 1)
      --controller-publish-readonly               This option enables PV to be marked as readonly at controller publish volume call if PVC accessmode has been set to ROX.
      --csi-address string                        Address of the CSI driver socket. (default "/run/csi/socket")
      --default-fstype string                     The default filesystem type of the volume to provision when fstype is unspecified in the StorageClass. If the default is not set and fstype is unset in the StorageClass, then no fstype will be set
      --enable-capacity                           This enables producing CSIStorageCapacity objects with capacity information from the driver's GetCapacity call.
      --enable-pprof /debug/pprof/                Enable pprof profiling on the TCP network address specified by --http-endpoint. The HTTP path is /debug/pprof/.
      --extra-create-metadata                     If set, add pv/pvc metadata to plugin create requests as parameters.
      --feature-gates mapStringBool               A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
                                                  APIResponseCompression=true|false (BETA - default=true)
                                                  APIServerIdentity=true|false (BETA - default=true)
                                                  APIServingWithRoutine=true|false (ALPHA - default=false)
                                                  AllAlpha=true|false (ALPHA - default=false)
                                                  AllBeta=true|false (BETA - default=false)
                                                  AllowParsingUserUIDFromCertAuth=true|false (BETA - default=true)
                                                  AllowUnsafeMalformedObjectDeletion=true|false (ALPHA - default=false)
                                                  CBORServingAndStorage=true|false (ALPHA - default=false)
                                                  ComponentFlagz=true|false (BETA - default=true)
                                                  ComponentStatusz=true|false (BETA - default=true)
                                                  ConcurrentWatchObjectDecode=true|false (BETA - default=false)
                                                  ConstrainedImpersonation=true|false (BETA - default=true)
                                                  CoordinatedLeaderElection=true|false (BETA - default=false)
                                                  CrossNamespaceVolumeDataSource=true|false (ALPHA - default=false)
                                                  DeclarativeValidationBeta=true|false (BETA - default=true)
                                                  DetectCacheInconsistency=true|false (BETA - default=true)
                                                  ListFromCacheSnapshot=true|false (BETA - default=true)
                                                  ManifestBasedAdmissionControlConfig=true|false (ALPHA - default=false)
                                                  NativeHistograms=true|false (ALPHA - default=false)
                                                  OpenAPIEnums=true|false (BETA - default=true)
                                                  ReleaseLeaderElectionOnExit=true|false (ALPHA - default=false)
                                                  RemoteRequestHeaderUID=true|false (BETA - default=true)
                                                  ShardedListAndWatch=true|false (ALPHA - default=false)
                                                  SizeBasedListCostEstimate=true|false (BETA - default=true)
                                                  StorageVersionAPI=true|false (ALPHA - default=false)
                                                  StorageVersionHash=true|false (BETA - default=true)
                                                  StructuredAuthenticationConfigurationEgressSelector=true|false (BETA - default=true)
                                                  StructuredAuthenticationConfigurationJWKSMetrics=true|false (BETA - default=true)
                                                  TokenRequestServiceAccountUIDValidation=true|false (BETA - default=true)
                                                  UnauthenticatedHTTP2DOSMitigation=true|false (BETA - default=true)
                                                  UnknownVersionInteroperabilityProxy=true|false (BETA - default=true)
                                                  WatchCacheInitializationPostStartHook=true|false (BETA - default=true)
                                                  WatchList=true|false (BETA - default=true)
      --http-endpoint :8080                       The TCP network address where the HTTP server for diagnostics, including metrics and leader election health check, will listen (example: :8080). The default is empty string, which means the server is disabled. Only one of `--metrics-address` and `--http-endpoint` can be set.
      --immediate-topology                        Immediate binding: pass aggregated cluster topologies for all nodes where the CSI driver is available (enabled, the default) or no topology requirements (if disabled). (default true)
      --kube-api-burst int                        Burst to use while communicating with the kubernetes apiserver. Defaults to 10. (default 10)
      --kube-api-capacity-burst int               Burst to use for storage capacity updates while communicating with the kubernetes apiserver. Defaults to 5. (default 5)
      --kube-api-capacity-qps float32             QPS to use for storage capacity updates while communicating with the kubernetes apiserver. Defaults to 1.0. (default 1)
      --kube-api-qps float                        QPS to use while communicating with the kubernetes apiserver. Defaults to 5.0. (default 5)
      --kubeconfig string                         Absolute path to the kubeconfig file. Required only when running out of cluster.
      --leader-election                           Enable leader election.
      --leader-election-labels stringMap          List of labels to add to lease when given replica becomes leader. Formatted as a comma seperated list of key:value labels. Example: 'my-label:my-value,my-second-label:my-second-value' (default map[])
      --leader-election-lease-duration duration   Duration, in seconds, that non-leader candidates will wait to force acquire leadership. Defaults to 15 seconds. (default 15s)
      --leader-election-namespace string          Namespace where the leader election resource lives. Defaults to the pod namespace if not set.
      --leader-election-renew-deadline duration   Duration, in seconds, that the acting leader will retry refreshing leadership before giving up. Defaults to 10 seconds. (default 10s)
      --leader-election-retry-period duration     Duration, in seconds, the LeaderElector clients should wait between tries of actions. Defaults to 5 seconds. (default 5s)
      --log-flush-frequency duration              Maximum number of seconds between log flushes (default 5s)
      --log-json-info-buffer-size quantity        [Alpha] In JSON format with split output streams, the info messages can be buffered for a while to increase performance. The default value of zero bytes disables buffering. The size can be specified as number of bytes (512), multiples of 1000 (1K), multiples of 1024 (2Ki), or powers of those (3M, 4G, 5Mi, 6Gi). Enable the LoggingAlphaOptions feature gate to use this.
      --log-json-split-stream                     [Alpha] In JSON format, write error messages to stderr and info messages to stdout. The default is to write a single stream to stdout. Enable the LoggingAlphaOptions feature gate to use this.
      --log-text-info-buffer-size quantity        [Alpha] In text format with split output streams, the info messages can be buffered for a while to increase performance. The default value of zero bytes disables buffering. The size can be specified as number of bytes (512), multiples of 1000 (1K), multiples of 1024 (2Ki), or powers of those (3M, 4G, 5Mi, 6Gi). Enable the LoggingAlphaOptions feature gate to use this.
      --log-text-split-stream                     [Alpha] In text format, write error messages to stderr and info messages to stdout. The default is to write a single stream to stdout. Enable the LoggingAlphaOptions feature gate to use this.
      --logging-format string                     Sets the log format. Permitted formats: "json" (gated by LoggingBetaOptions), "text". (default "text")
      --master string                             Master URL to build a client config from. Either this or kubeconfig needs to be set if the provisioner is being run out of cluster.
      --metrics-address :8080                     (deprecated) The TCP network address where the prometheus metrics endpoint will listen (example: :8080). The default is empty string, which means metrics endpoint is disabled. Only one of `--metrics-address` and `--http-endpoint` can be set.
      --metrics-path /metrics                     The HTTP path where prometheus metrics will be exposed. Default is /metrics. (default "/metrics")
      --node-deployment                           Enables deploying the external-provisioner together with a CSI driver on nodes to manage node-local volumes.
      --node-deployment-base-delay duration       Determines how long the external-provisioner sleeps initially before trying to own a PVC with immediate binding. (default 20s)
      --node-deployment-immediate-binding         Determines whether immediate binding is supported when deployed on each node. (default true)
      --node-deployment-max-delay duration        Determines how long the external-provisioner sleeps at most before trying to own a PVC with immediate binding. (default 1m0s)
      --prevent-volume-mode-conversion            Prevents an unauthorised user from modifying the volume mode when creating a PVC from an existing VolumeSnapshot. (default true)
      --retry-interval-max duration               Maximum retry interval of failed provisioning or deletion. (default 5m0s)
      --retry-interval-start duration             Initial retry interval of failed provisioning or deletion. It doubles with each failure, up to retry-interval-max. (default 1s)
      --snapshot-orphan-sweep-interval duration   How often to check for orphaned snapshot source-protection finalizers. Set to 0 to disable the sweep controller. (default 5m0s)
      --strict-topology                           Late binding: pass only selected node topology to CreateVolume Request, unlike default behavior of passing aggregated cluster topologies that match with topology keys of the selected node.
      --timeout duration                          Timeout for waiting for volume operation (creation, deletion, capacity queries) (default 10s)
  -v, --v Level                                   number for the log level verbosity
      --version                                   Show version.
      --vmodule pattern=N,...                     comma-separated list of pattern=N settings for file-filtered logging (only works for text log format)
      --volume-name-prefix string                 Prefix to apply to the name of a created volume. (default "pvc")
      --volume-name-uuid-length int               Truncates generated UUID of a created volume to this length. Defaults behavior is to NOT truncate. (default -1)
      --worker-threads uint                       Number of provisioner worker threads, in other words nr. of simultaneous CSI calls. (default 100)
Options (51)
OptionDescriptionSource
--automaxprocs boolFunc[=trueautomatically set GOMAXPROCS to match Linux container CPU quotahelp
--capacity-for-immediate-bindingEnables producing capacity information for storage classes with immediate binding.help
--capacity-ownerref-level intThe level indicates the number of objects that need to be traversed starting from the pod identified by the POD_NAME and NAMESPACE environment variables to reach the owning object for…help
--capacity-poll-interval durationHow long the external-provisioner waits before checking for storage capacity changes.help
--capacity-threads uintNumber of simultaneously running threads, handling CSIStorageCapacity objects (default 1)help
--cloning-protection-threads uintNumber of simultaneously running threads, handling cloning finalizer removal (default 1)help
--controller-publish-readonlyThis option enables PV to be marked as readonly at controller publish volume call if PVC accessmode has been set to ROX.help
--csi-address stringAddress of the CSI driver socket.help
--default-fstype stringThe default filesystem type of the volume to provision when fstype is unspecified in the StorageClass.help
--enable-capacityThis enables producing CSIStorageCapacity objects with capacity information from the driver's GetCapacity call.help
--enable-pprof /debug/pprof/Enable pprof profiling on the TCP network address specified by --http-endpoint.help
--extra-create-metadataIf set, add pv/pvc metadata to plugin create requests as parameters.help
--feature-gates mapStringBoolA set of key=value pairs that describe feature gates for alpha/experimental features.help
--http-endpoint :8080The TCP network address where the HTTP server for diagnostics, including metrics and leader election health check, will listen (example: :8080).help
--immediate-topologyImmediate binding: pass aggregated cluster topologies for all nodes where the CSI driver is available (enabled, the default) or no topology requirements (if disabled).help
--kube-api-burst intBurst to use while communicating with the kubernetes apiserver.help
--kube-api-capacity-burst intBurst to use for storage capacity updates while communicating with the kubernetes apiserver.help
--kube-api-capacity-qps float32QPS to use for storage capacity updates while communicating with the kubernetes apiserver.help
--kube-api-qps floatQPS to use while communicating with the kubernetes apiserver.help
--kubeconfig stringAbsolute path to the kubeconfig file.help
--leader-electionEnable leader election.help
--leader-election-labels stringMapList of labels to add to lease when given replica becomes leader.help
--leader-election-lease-duration durationDuration, in seconds, that non-leader candidates will wait to force acquire leadership.help
--leader-election-namespace stringNamespace where the leader election resource lives.help
--leader-election-renew-deadline durationDuration, in seconds, that the acting leader will retry refreshing leadership before giving up.help
--leader-election-retry-period durationDuration, in seconds, the LeaderElector clients should wait between tries of actions.help
--log-flush-frequency durationMaximum number of seconds between log flushes (default 5s)help
--log-json-info-buffer-size quantity[Alpha] In JSON format with split output streams, the info messages can be buffered for a while to increase performance.help
--log-json-split-stream[Alpha] In JSON format, write error messages to stderr and info messages to stdout.help
--log-text-info-buffer-size quantity[Alpha] In text format with split output streams, the info messages can be buffered for a while to increase performance.help
--log-text-split-stream[Alpha] In text format, write error messages to stderr and info messages to stdout.help
--logging-format stringSets the log format.help
--master stringMaster URL to build a client config from.help
--metrics-address :8080(deprecated) The TCP network address where the prometheus metrics endpoint will listen (example: :8080).help
--metrics-path /metricsThe HTTP path where prometheus metrics will be exposed.help
--node-deploymentEnables deploying the external-provisioner together with a CSI driver on nodes to manage node-local volumes.help
--node-deployment-base-delay durationDetermines how long the external-provisioner sleeps initially before trying to own a PVC with immediate binding.help
--node-deployment-immediate-bindingDetermines whether immediate binding is supported when deployed on each node.help
--node-deployment-max-delay durationDetermines how long the external-provisioner sleeps at most before trying to own a PVC with immediate binding.help
--prevent-volume-mode-conversionPrevents an unauthorised user from modifying the volume mode when creating a PVC from an existing VolumeSnapshot.help
--retry-interval-max durationMaximum retry interval of failed provisioning or deletion.help
--retry-interval-start durationInitial retry interval of failed provisioning or deletion.help
--snapshot-orphan-sweep-interval durationHow often to check for orphaned snapshot source-protection finalizers.help
--strict-topologyLate binding: pass only selected node topology to CreateVolume Request, unlike default behavior of passing aggregated cluster topologies that match with topology keys of the selected node.help
--timeout durationTimeout for waiting for volume operation (creation, deletion, capacity queries) (default 10s)help
-v, --v Levelnumber for the log level verbosityhelp
--versionShow version.help
--vmodule pattern=Ncomma-separated list of pattern=N settings for file-filtered logging (only works for text log format)help
--volume-name-prefix stringPrefix to apply to the name of a created volume.help
--volume-name-uuid-length intTruncates generated UUID of a created volume to this length.help
--worker-threads uintNumber of provisioner worker threads, in other words nr.help

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.