Package org.apache.storm

# Class DaemonConfig

java.lang.Object
org.apache.storm.DaemonConfig

All Implemented Interfaces:
  `Validated`

public class DaemonConfig extends Object implements Validated
Storm configs are specified as a plain old map. This class provides constants for all the configurations possible on a Storm cluster. Each constant is paired with an annotation that defines the validity criterion of the corresponding field. Default values for these configs can be found in defaults.yaml.

This class extends `Config` for supporting Storm Daemons.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `BLACKLIST_SCHEDULER_ASSUME_SUPERVISOR_BAD_BASED_ON_BAD_SLOT`
  Whether `BlacklistScheduler` will assume the supervisor is bad based on bad slots or not.
  `static final String`
  `BLACKLIST_SCHEDULER_ENABLE_SEND_ASSIGNMENT_FAILURES`
  Enables blacklisting support for supervisors with failed send assignment calls.
  `static final String`
  `BLACKLIST_SCHEDULER_REPORTER`
  The class that the blacklist scheduler will report the blacklist.
  `static final String`
  `BLACKLIST_SCHEDULER_RESUME_TIME`
  The number of seconds that the blacklisted slots or supervisor will be resumed.
  `static final String`
  `BLACKLIST_SCHEDULER_STRATEGY`
  The class that specifies the eviction strategy to use in blacklist scheduler.
  `static final String`
  `BLACKLIST_SCHEDULER_TOLERANCE_COUNT`
  The number of hit count that will trigger blacklist in tolerance time.
  `static final String`
  `BLACKLIST_SCHEDULER_TOLERANCE_TIME`
  The number of seconds that the blacklist scheduler will concern of bad slots or supervisors.
  `static final String`
  `DEV_ZOOKEEPER_PATH`
  The path to use as the zookeeper dir when running a zookeeper server via "storm dev-zookeeper".
  `static final String`
  `DRPC_AUTHORIZER`
  Class name for authorization plugin for DRPC client.
  `static final String`
  `DRPC_CHILDOPTS`
  Childopts for Storm DRPC Java process.
  `static final String`
  `DRPC_DISABLE_HTTP_BINDING`
  This controls wheather Storm DRPC should bind to http port even if drpc.http.port is > 0.
  `static final String`
  `DRPC_HTTP_CREDS_PLUGIN`
  Class name of the HTTP credentials plugin for DRPC.
  `static final String`
  `DRPC_HTTP_FILTER`
  A class implementing jakarta.servlet.Filter for DRPC HTTP requests.
  `static final String`
  `DRPC_HTTP_FILTER_PARAMS`
  Initialization parameters for the jakarta.servlet.Filter of the DRPC HTTP service.
  `static final String`
  `DRPC_HTTP_PORT`
  This port is used by Storm DRPC for receiving HTTP DPRC requests from clients.
  `static final String`
  `DRPC_HTTPS_ENABLE_SSL_RELOAD`
  If set to true, keystore and truststore for DRPC Server will be automatically reloaded when modified.
  `static final String`
  `DRPC_HTTPS_KEY_PASSWORD`
  Password to the private key in the keystore for setting up HTTPS (SSL).
  `static final String`
  `DRPC_HTTPS_KEYSTORE_PASSWORD`
  Password to the keystore used by Storm DRPC for setting up HTTPS (SSL).
  `static final String`
  `DRPC_HTTPS_KEYSTORE_PATH`
  Path to the keystore used by Storm DRPC for setting up HTTPS (SSL).
  `static final String`
  `DRPC_HTTPS_KEYSTORE_TYPE`
  Type of keystore used by Storm DRPC for setting up HTTPS (SSL).
  `static final String`
  `DRPC_HTTPS_NEED_CLIENT_AUTH`
  `static final String`
  `DRPC_HTTPS_PORT`
  This port is used by Storm DRPC for receiving HTTPS (SSL) DPRC requests from clients.
  `static final String`
  `DRPC_HTTPS_TRUSTSTORE_PASSWORD`
  Password to the truststore used by Storm DRPC setting up HTTPS (SSL).
  `static final String`
  `DRPC_HTTPS_TRUSTSTORE_PATH`
  Path to the truststore used by Storm DRPC setting up HTTPS (SSL).
  `static final String`
  `DRPC_HTTPS_TRUSTSTORE_TYPE`
  Type of truststore used by Storm DRPC for setting up HTTPS (SSL).
  `static final String`
  `DRPC_HTTPS_WANT_CLIENT_AUTH`
  Password to the truststore used by Storm DRPC setting up HTTPS (SSL).
  `static final String`
  `DRPC_REQUEST_TIMEOUT_SECS`
  The timeout on DRPC requests within the DRPC server.
  `static final String`
  `ISOLATION_SCHEDULER_MACHINES`
  A map from topology name to the number of machines that should be dedicated for that topology.
  `static final String`
  `JAVA_LIBRARY_PATH`
  This value is passed to spawned JVMs (e.g., Nimbus, Supervisor, and Workers) for the java.library.path value.
  `static final String`
  `LOGS_GROUPS`
  A list of groups allowed to view logs via the Log Viewer.
  `static final String`
  `LOGS_USERS`
  A list of users allowed to view logs via the Log Viewer.
  `static final String`
  `LOGVIEWER_APPENDER_NAME`
  Appender name used by log viewer to determine log directory.
  `static final String`
  `LOGVIEWER_CHILDOPTS`
  Childopts for log viewer java process.
  `static final String`
  `LOGVIEWER_CLEANUP_AGE_MINS`
  How many minutes since a log was last modified for the log to be considered for clean-up.
  `static final String`
  `LOGVIEWER_CLEANUP_INTERVAL_SECS`
  How often to clean up old log files.
  `static final String`
  `LOGVIEWER_DISABLE_HTTP_BINDING`
  This controls wheather Storm Logviewer should bind to http port even if logviewer.port is > 0.
  `static final String`
  `LOGVIEWER_FILTER`
  A class implementing jakarta.servlet.Filter for authenticating/filtering Logviewer requests.
  `static final String`
  `LOGVIEWER_FILTER_PARAMS`
  Initialization parameters for the jakarta.servlet.Filter for Logviewer.
  `static final String`
  `LOGVIEWER_HTTPS_ENABLE_SSL_RELOAD`
  If set to true, keystore and truststore for Logviewer will be automatically reloaded when modified.
  `static final String`
  `LOGVIEWER_HTTPS_KEY_PASSWORD`
  Password to the private key in the keystore for setting up HTTPS (SSL).
  `static final String`
  `LOGVIEWER_HTTPS_KEYSTORE_PASSWORD`
  Password for the keystore for HTTPS for Storm Logviewer.
  `static final String`
  `LOGVIEWER_HTTPS_KEYSTORE_PATH`
  Path to the keystore containing the certs used by Storm Logviewer for HTTPS communications.
  `static final String`
  `LOGVIEWER_HTTPS_KEYSTORE_TYPE`
  Type of the keystore for HTTPS for Storm Logviewer.
  `static final String`
  `LOGVIEWER_HTTPS_NEED_CLIENT_AUTH`
  `static final String`
  `LOGVIEWER_HTTPS_PORT`
  Storm Logviewer HTTPS port.
  `static final String`
  `LOGVIEWER_HTTPS_TRUSTSTORE_PASSWORD`
  Password for the truststore for HTTPS for Storm Logviewer.
  `static final String`
  `LOGVIEWER_HTTPS_TRUSTSTORE_PATH`
  Path to the truststore containing the certs used by Storm Logviewer for HTTPS communications.
  `static final String`
  `LOGVIEWER_HTTPS_TRUSTSTORE_TYPE`
  Type of the truststore for HTTPS for Storm Logviewer.
  `static final String`
  `LOGVIEWER_HTTPS_WANT_CLIENT_AUTH`
  Password to the truststore used by Storm Logviewer setting up HTTPS (SSL).
  `static final String`
  `LOGVIEWER_MAX_PER_WORKER_LOGS_SIZE_MB`
  The maximum number of bytes per worker's files can take up in MB.
  `static final String`
  `LOGVIEWER_MAX_SUM_WORKER_LOGS_SIZE_MB`
  The maximum number of bytes all worker log files can take up in MB.
  `static final String`
  `LOGVIEWER_PORT`
  HTTP UI port for log viewer.
  `static final String`
  `MULTITENANT_SCHEDULER_USER_POOLS`
  A map from the user name to the number of machines that should that user is allowed to use.
  `static final String`
  `NIMBUS_ASSIGNMENTS_SERVICE_THREAD_QUEUE_SIZE`
  This controls the number of working thread queue size of assignment service.
  `static final String`
  `NIMBUS_ASSIGNMENTS_SERVICE_THREADS`
  This controls the number of working threads for distributing master assignments to supervisors.
  `static final String`
  `NIMBUS_AUTHORIZER`
  Class name for authorization plugin for Nimbus.
  `static final String`
  `NIMBUS_BLOBSTORE`
  What blobstore implementation nimbus should use.
  `static final String`
  `NIMBUS_BLOBSTORE_EXPIRATION_SECS`
  During operations with the blob store, via master, how long a connection is idle before nimbus considers it dead and drops the session and any associated connections.
  `static final String`
  `NIMBUS_CHILDOPTS`
  This parameter is used by the storm-deploy project to configure the jvm options for the nimbus daemon.
  `static final String`
  `NIMBUS_CLEANUP_INBOX_FREQ_SECS`
  How often nimbus should wake the cleanup thread to clean the inbox.
  `static final String`
  `NIMBUS_CODE_SYNC_FREQ_SECS`
  How often nimbus's background thread to sync code for missing topologies should run.
  `static final String`
  `NIMBUS_CREDENTIAL_RENEW_FREQ_SECS`
  How often nimbus should wake up to renew credentials if needed.
  `static final String`
  `NIMBUS_DAEMON_USER`
  This is the user that the Nimbus daemon process is running as.
  `static final String`
  `NIMBUS_EXECUTORS_PER_TOPOLOGY`
  A number representing the maximum number of executors any single topology can acquire.
  `static final String`
  `NIMBUS_FILE_COPY_EXPIRATION_SECS`
  During upload/download with the master, how long an upload or download connection is idle before nimbus considers it dead and drops the connection.
  `static final String`
  `NIMBUS_IMPERSONATION_AUTHORIZER`
  Impersonation user ACL config entries.
  `static final String`
  `NIMBUS_INBOX_JAR_EXPIRATION_SECS`
  The length of time a jar file lives in the inbox before being deleted by the cleanup thread.
  `static final String`
  `NIMBUS_MONITOR_FREQ_SECS`
  How often nimbus should wake up to check heartbeats and do reassignments.
  `static final String`
  `NIMBUS_SLOTS_PER_TOPOLOGY`
  A number representing the maximum number of workers any single topology can acquire.
  `static final String`
  `NIMBUS_SUPERVISOR_TIMEOUT_SECS`
  How long before a supervisor can go without heartbeating before nimbus considers it dead and stops assigning new work to it.
  `static final String`
  `NIMBUS_TASK_LAUNCH_SECS`
  A special timeout used when a task is initially launched.
  `static final String`
  `NIMBUS_TASK_TIMEOUT_SECS`
  How long without heartbeating a task can go before nimbus will consider the task dead and reassign it to another location.
  `static final String`
  `NIMBUS_TOPOLOGY_ACTION_NOTIFIER_PLUGIN`
  FQCN of a class that implements `I` @see org.apache.storm.nimbus.ITopologyActionNotifierPlugin for details.
  `static final String`
  `NIMBUS_TOPOLOGY_BLOBSTORE_DELETION_DELAY_MS`
  This controls the number of milliseconds nimbus will wait before deleting a topology blobstore once detected it is able to delete.
  `static final String`
  `NIMBUS_TOPOLOGY_VALIDATOR`
  A custom class that implements ITopologyValidator that is run whenever a topology is submitted.
  `static final String`
  `NIMBUS_WORKER_HEARTBEATS_RECOVERY_STRATEGY_CLASS`
  class controls heartbeats recovery strategy.
  `static final String`
  `PACEMAKER_CHILDOPTS`
  This parameter is used by the storm-deploy project to configure the jvm options for the pacemaker daemon.
  `static final String`
  `PACEMAKER_MAX_THREADS`
  The maximum number of threads that should be used by the Pacemaker.
  `static final String`
  `RESOURCE_AWARE_SCHEDULER_MAX_STATE_SEARCH`
  `static final String`
  `RESOURCE_AWARE_SCHEDULER_MAX_TOPOLOGY_SCHEDULING_ATTEMPTS`
  The maximum number of times that the RAS will attempt to schedule a topology.
  `static final String`
  `RESOURCE_AWARE_SCHEDULER_PRIORITY_STRATEGY`
  the class that specifies the scheduling priority strategy to use in ResourceAwareScheduler.
  `static final String`
  `RESOURCE_AWARE_SCHEDULER_USER_POOLS`
  A map of users to another map of the resource guarantees of the user.
  `static final String`
  `SCHEDULER_CONFIG_CACHE_EXPIRATION_SECS`
  How long before a scheduler considers its config cache expired.
  `static final String`
  `SCHEDULER_CONFIG_LOADER_ARTIFACTORY_BASE_DIRECTORY`
  It is the part of the uri, configurable in Artifactory, which represents the top of the directory tree.
  `static final String`
  `SCHEDULER_CONFIG_LOADER_POLLTIME_SECS`
  It is the frequency at which the plugin will call out to artifactory instead of returning the most recently cached result.
  `static final String`
  `SCHEDULER_CONFIG_LOADER_TIMEOUT_SECS`
  It is the amount of time an http connection to the artifactory server will wait before timing out.
  `static final String`
  `SCHEDULER_CONFIG_LOADER_URI`
  For ArtifactoryConfigLoader, this can either be a reference to an individual file in Artifactory or to a directory.
  `static final String`
  `SCHEDULER_DISPLAY_RESOURCE`
  Whether we want to display all the resource capacity and scheduled usage on the UI page.
  `static final String`
  `SCHEDULING_TIMEOUT_SECONDS_PER_TOPOLOGY`
  Max time to attempt to schedule one topology.
  `static String`
  `STORM_CGROUP_CGEXEC_CMD`
  full path to cgexec command.
  `static final String`
  `STORM_CGROUP_HIERARCHY_NAME`
  name for the cgroup hierarchy.
  `static String`
  `STORM_CGROUP_INHERIT_CPUSET_CONFIGS`
  To determine whether or not to cgroups should inherit cpuset.cpus and cpuset.mems config values form parent cgroup Note that cpuset.cpus and cpuset.mems configs in a cgroup must be initialized (i.e.
  `static String`
  `STORM_CGROUP_MEMORY_ENFORCEMENT_ENABLE`
  Java does not always play nicely with cgroups.
  `static String`
  `STORM_CGROUP_MEMORY_LIMIT_TOLERANCE_MARGIN_MB`
  Please use STORM_SUPERVISOR_MEMORY_LIMIT_TOLERANCE_MARGIN_MB instead.
  `static final String`
  `STORM_CGROUP_RESOURCES`
  resources to to be controlled by cgroups.
  `static final String`
  `STORM_CLUSTER_METRICS_CONSUMER_PUBLISH_INTERVAL_SECS`
  How often cluster metrics data is published to metrics consumer.
  `static final String`
  `STORM_CLUSTER_METRICS_CONSUMER_REGISTER`
  A list of classes implementing IClusterMetricsConsumer (See storm.yaml.example for exact config format).
  `static final String`
  `STORM_DAEMON_METRICS_REPORTER_CSV_LOG_DIR`
  Specify the csv reporter directory for CvsPreparableReporter daemon metrics reporter.
  `static final String`
  `STORM_DAEMON_METRICS_REPORTER_INTERVAL_SECS`
  We report the metrics with this interval period.
  `static final String`
  `STORM_DAEMON_METRICS_REPORTER_PLUGIN_DOMAIN`
  Specify the domain for daemon metrics reporter plugin to limit reporting to specific domain.
  `static final String`
  `STORM_DAEMON_METRICS_REPORTER_PLUGINS`
  A list of daemon metrics reporter plugin class names.
  `static final String`
  `STORM_HEALTH_CHECK_DIR`
  The directory where storm's health scripts go.
  `static final String`
  `STORM_HEALTH_CHECK_FAIL_ON_TIMEOUTS`
  Boolean setting to configure if health checks should fail when timeouts occur or not.
  `static final String`
  `STORM_HEALTH_CHECK_TIMEOUT_MS`
  The time to allow any given healthcheck script to run before it is marked failed due to timeout.
  `static final String`
  `STORM_LOG4J2_CONF_DIR`
  A directory that holds configuration files for log4j2.
  `static final String`
  `STORM_METRIC_PROCESSOR_CLASS`
  Class implementing WorkerMetricsProcessor.
  `static final String`
  `STORM_METRIC_STORE_CLASS`
  Class implementing MetricStore.
  `static final String`
  `STORM_NETTY_FLUSH_CHECK_INTERVAL_MS`
  We check with this interval that whether the Netty channel is writable and try to write pending messages.
  `static final String`
  `STORM_NIMBUS_ZOOKEEPER_ACLS_CHECK`
  In nimbus on startup check if all of the zookeeper ACLs are correct before starting.
  `static final String`
  `STORM_NIMBUS_ZOOKEEPER_ACLS_FIXUP`
  In nimbus on startup check if all of the zookeeper ACLs are correct before starting.
  `static String`
  `STORM_OCI_ALLOWED_IMAGES`
  A list of oci image that are allowed.
  `static String`
  `STORM_OCI_CGROUP_PARENT`
  The cgroup root for oci container.
  `static String`
  `STORM_OCI_IMAGE`
  Default oci image to use if the topology doesn't specify which oci image to use.
  `static String`
  `STORM_OCI_IMAGE_HDFS_TOPLEVEL_DIR`
  The HDFS location under which the oci image manifests, layers, and configs directories exist.
  `static final String`
  `STORM_OCI_IMAGE_TAG_TO_MANIFEST_PLUGIN`
  The plugin to be used to get the image-tag to manifest mappings.
  `static final String`
  `STORM_OCI_LAYER_MOUNTS_TO_KEEP`
  Target count of OCI layer mounts that we should keep on disk at one time.
  `static final String`
  `STORM_OCI_MANIFEST_TO_RESOURCES_PLUGIN`
  The plugin to be used to get oci resource according to the manifest.
  `static String`
  `STORM_OCI_NSCD_DIR`
  The directory of nscd - name service cache daemon, e.g.
  `static String`
  `STORM_OCI_READONLY_BINDMOUNTS`
  A list of read only bind mounted directories.
  `static String`
  `STORM_OCI_READWRITE_BINDMOUNTS`
  A list of read-write bind mounted directories.
  `static final String`
  `STORM_OCI_RESOURCES_LOCAL_DIR`
  The local directory for localized oci resources.
  `static final String`
  `STORM_OCI_RESOURCES_LOCALIZER`
  The plugin to use for oci resources localization.
  `static String`
  `STORM_OCI_SECCOMP_PROFILE`
  Specify the seccomp Json file to be used as a seccomp filter.
  `static final String`
  `STORM_RESOURCE_ISOLATION_PLUGIN`
  The plugin to be used for resource isolation.
  `static final String`
  `STORM_RESOURCE_ISOLATION_PLUGIN_ENABLE`
  flag to determine whether to use a resource isolation plugin Also determines whether the unit tests for cgroup runs.
  `static final String`
  `STORM_ROCKSDB_CREATE_IF_MISSING`
  RocksDB create if missing flag.
  `static final String`
  `STORM_ROCKSDB_LOCATION`
  RocksDB file location.
  `static final String`
  `STORM_ROCKSDB_METADATA_STRING_CACHE_CAPACITY`
  RocksDB metadata cache capacity.
  `static final String`
  `STORM_ROCKSDB_METRIC_DELETION_PERIOD_HOURS`
  RocksDB setting for period of metric deletion thread.
  `static final String`
  `STORM_ROCKSDB_METRIC_RETENTION_HOURS`
  RocksDB setting for length of metric retention.
  `static final String`
  `STORM_SCHEDULER`
  A global task scheduler used to assign topologies's tasks to supervisors' workers.
  `static String`
  `STORM_SUPERVISOR_CGROUP_ROOTDIR`
  root directory for cgoups.
  `static String`
  `STORM_SUPERVISOR_HARD_LIMIT_MEMORY_OVERAGE_MB`
  If the memory usage of a worker goes over its limit by this value is it shot immediately.
  `static String`
  `STORM_SUPERVISOR_HARD_MEMORY_LIMIT_MULTIPLIER`
  A multiplier for the memory limit of a worker that will have the supervisor shoot it immediately.
  `static String`
  `STORM_SUPERVISOR_LOW_MEMORY_THRESHOLD_MB`
  If the amount of memory that is free in the system (either on the box or in the supervisor's cgroup) is below this number (in MB) consider the system to be in low memory mode and start shooting workers if they are over their limit.
  `static String`
  `STORM_SUPERVISOR_MEDIUM_MEMORY_GRACE_PERIOD_MS`
  The number of milliseconds that a worker is allowed to be over their limit when there is a medium amount of memory free in the system.
  `static String`
  `STORM_SUPERVISOR_MEDIUM_MEMORY_THRESHOLD_MB`
  If the amount of memory that is free in the system (either on the box or in the supervisor's cgroup) is below this number (in MB) consider the system to be a little low on memory and start shooting workers if they are over their limit for a given grace period STORM_SUPERVISOR_MEDIUM_MEMORY_GRACE_PERIOD_MS.
  `static String`
  `STORM_SUPERVISOR_MEMORY_LIMIT_TOLERANCE_MARGIN_MB`
  Memory given to each worker for free (because java and storm have some overhead).
  `static final String`
  `STORM_TOPOLOGY_CLASSPATH_BEGINNING_ENABLED`
  Enables user-first classpath.
  `static String`
  `STORM_WORKER_CGROUP_CPU_LIMIT`
  the manually set cpu share for each CGroup on supervisor node.
  `static String`
  `STORM_WORKER_CGROUP_MEMORY_MB_LIMIT`
  the manually set memory limit (in MB) for each CGroup on supervisor node.
  `static String`
  `STORM_WORKER_MIN_CPU_PCORE_PERCENT`
  The config indicates the minimum percentage of cpu for a core that a worker will use.
  `static String`
  `STORM_WORKER_TOKEN_LIFE_TIME_HOURS`
  The number of hours a worker token is valid for.
  `static final String`
  `SUPERVISOR_AUTHORIZER`
  Class name for authorization plugin for supervisor.
  `static final String`
  `SUPERVISOR_BLOBSTORE`
  What blobstore implementation the supervisor should use.
  `static final String`
  `SUPERVISOR_BLOBSTORE_DOWNLOAD_MAX_RETRIES`
  Maximum number of retries a supervisor is allowed to make for downloading a blob.
  `static final String`
  `SUPERVISOR_BLOBSTORE_DOWNLOAD_THREAD_COUNT`
  What blobstore download parallelism the supervisor should use.
  `static final String`
  `SUPERVISOR_CHILDOPTS`
  This parameter is used by the storm-deploy project to configure the jvm options for the supervisor daemon.
  `static final String`
  `SUPERVISOR_ENABLE`
  Whether or not the supervisor should launch workers assigned to it.
  `static final String`
  `SUPERVISOR_HEARTBEAT_FREQUENCY_SECS`
  how often the supervisor sends a heartbeat to the master.
  `static final String`
  `SUPERVISOR_LOCALIZER_CACHE_CLEANUP_INTERVAL_MS`
  The distributed cache cleanup interval.
  `static final String`
  `SUPERVISOR_LOCALIZER_CACHE_TARGET_SIZE_MB`
  The distributed cache target size in MB.
  `static final String`
  `SUPERVISOR_LOCALIZER_UPDATE_BLOB_INTERVAL_SECS`
  The distributed cache interval for checking for blobs to update.
  `static final String`
  `SUPERVISOR_MONITOR_FREQUENCY_SECS`
  How often the supervisor checks the worker heartbeats to see if any of them need to be restarted.
  `static final String`
  `SUPERVISOR_NUMA_META`
  A map with keys mapped to each NUMA Node on the supervisor that will be used by scheduler.
  `static final String`
  `SUPERVISOR_SCHEDULER_META`
  the metadata configured on the supervisor.
  `static final String`
  `SUPERVISOR_SLOTS_PORTS`
  A list of ports that can run workers on this supervisor.
  `static final String`
  `SUPERVISOR_WORKER_START_TIMEOUT_SECS`
  How long a worker can go without heartbeating during the initial launch before the supervisor tries to restart the worker process.
  `static final String`
  `UI_CENTRAL_LOGGING_URL`
  Storm UI Central Logging URL.
  `static final String`
  `UI_CHILDOPTS`
  Childopts for Storm UI Java process.
  `static final String`
  `UI_DISABLE_HTTP_BINDING`
  This controls wheather Storm UI should bind to http port even if ui.port is > 0.
  `static final String`
  `UI_DISABLE_SPOUT_LAG_MONITORING`
  This controls whether Storm UI displays spout lag for the Kafka spout.
  `static final String`
  `UI_FILTER`
  A class implementing jakarta.servlet.Filter for authenticating/filtering UI requests.
  `static final String`
  `UI_FILTER_PARAMS`
  Initialization parameters for the jakarta.servlet.Filter for UI.
  `static final String`
  `UI_HEADER_BUFFER_BYTES`
  The size of the header buffer for the UI in bytes.
  `static final String`
  `UI_HOST`
  Storm UI binds to this host/interface.
  `static final String`
  `UI_HTTP_CREDS_PLUGIN`
  Class name of the HTTP credentials plugin for the UI.
  `static final String`
  `UI_HTTPS_ENABLE_SSL_RELOAD`
  If set to true, keystore and truststore for UI will be automatically reloaded when modified.
  `static final String`
  `UI_HTTPS_KEY_PASSWORD`
  Password to the private key in the keystore for setting up HTTPS (SSL).
  `static final String`
  `UI_HTTPS_KEYSTORE_PASSWORD`
  Password to the keystore used by Storm UI for setting up HTTPS (SSL).
  `static final String`
  `UI_HTTPS_KEYSTORE_PATH`
  Path to the keystore used by Storm UI for setting up HTTPS (SSL).
  `static final String`
  `UI_HTTPS_KEYSTORE_TYPE`
  Type of keystore used by Storm UI for setting up HTTPS (SSL).
  `static final String`
  `UI_HTTPS_NEED_CLIENT_AUTH`
  `static final String`
  `UI_HTTPS_PORT`
  This port is used by Storm UI for receiving HTTPS (SSL) requests from clients.
  `static final String`
  `UI_HTTPS_TRUSTSTORE_PASSWORD`
  Password to the truststore used by Storm UI setting up HTTPS (SSL).
  `static final String`
  `UI_HTTPS_TRUSTSTORE_PATH`
  Path to the truststore used by Storm UI setting up HTTPS (SSL).
  `static final String`
  `UI_HTTPS_TRUSTSTORE_TYPE`
  Type of truststore used by Storm UI for setting up HTTPS (SSL).
  `static final String`
  `UI_HTTPS_WANT_CLIENT_AUTH`
  Password to the truststore used by Storm DRPC setting up HTTPS (SSL).
  `static final String`
  `UI_PAGINATION`
  Storm UI drop-down pagination value.
  `static final String`
  `UI_PORT`
  Storm UI binds to this port.
  `static final String`
  `UI_PROJECT_BUGTRACKER_URL`
  Storm UI Project BUGTRACKER Link for reporting issue.
  `static final String`
  `UI_TITLE`
  Storm UI's title.
  `static final String`
  `VALIDATE_TOPOLOGY_SCHEDULER_STRATEGY`
  Server side validation that @{see Config#TOPOLOGY_SCHEDULER_STRATEGY} is set ot a subclass of IStrategy.
  `static final String`
  `WORKER_PROFILER_CHILDOPTS`
  The jvm profiler opts provided to workers launched by this supervisor.
  `static final String`
  `WORKER_PROFILER_COMMAND`
  The command launched supervisor with worker arguments pid, action and [target_directory] Where action is - start profile, stop profile, jstack, heapdump and kill against pid.
  `static final String`
  `WORKER_PROFILER_ENABLED`
  Enable profiling of worker JVMs using Oracle's Java Flight Recorder.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DaemonConfig()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static String`
  `getCgroupRootDir(Map<String,Object> conf)`
  `static String`
  `getCgroupStormHierarchyDir(Map<String,Object> conf)`
  `static String`
  `getCgroupStormHierarchyName(Map<String,Object> conf)`
  `static ArrayList<String>`
  `getCgroupStormResources(Map<String,Object> conf)`
  Get the cgroup resources from the conf.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### STORM_NETTY_FLUSH_CHECK_INTERVAL_MS

    public static final String STORM_NETTY_FLUSH_CHECK_INTERVAL_MS
    We check with this interval that whether the Netty channel is writable and try to write pending messages.
    See Also:
      - Constant Field Values

  - ### STORM_DAEMON_METRICS_REPORTER_PLUGINS

    public static final String STORM_DAEMON_METRICS_REPORTER_PLUGINS
    A list of daemon metrics reporter plugin class names. These plugins must implement `PreparableReporter` interface.
    See Also:
      - Constant Field Values

  - ### STORM_DAEMON_METRICS_REPORTER_PLUGIN_DOMAIN

    public static final String STORM_DAEMON_METRICS_REPORTER_PLUGIN_DOMAIN
    Specify the domain for daemon metrics reporter plugin to limit reporting to specific domain.
    See Also:
      - Constant Field Values

  - ### STORM_DAEMON_METRICS_REPORTER_INTERVAL_SECS

    public static final String STORM_DAEMON_METRICS_REPORTER_INTERVAL_SECS
    We report the metrics with this interval period.
    See Also:
      - Constant Field Values

  - ### STORM_DAEMON_METRICS_REPORTER_CSV_LOG_DIR

    public static final String STORM_DAEMON_METRICS_REPORTER_CSV_LOG_DIR
    Specify the csv reporter directory for CvsPreparableReporter daemon metrics reporter.
    See Also:
      - Constant Field Values

  - ### STORM_LOG4J2_CONF_DIR

    public static final String STORM_LOG4J2_CONF_DIR
    A directory that holds configuration files for log4j2. It can be either a relative or an absolute directory. If relative, it is relative to the storm's home directory.
    See Also:
      - Constant Field Values

  - ### STORM_SCHEDULER

    public static final String STORM_SCHEDULER
    A global task scheduler used to assign topologies's tasks to supervisors' workers.

    If this is not set, a default system scheduler will be used.

    See Also:
      - Constant Field Values

  - ### SCHEDULING_TIMEOUT_SECONDS_PER_TOPOLOGY

    public static final String SCHEDULING_TIMEOUT_SECONDS_PER_TOPOLOGY
    Max time to attempt to schedule one topology. The default is 60 seconds
    See Also:
      - Constant Field Values

  - ### BLACKLIST_SCHEDULER_TOLERANCE_TIME

    public static final String BLACKLIST_SCHEDULER_TOLERANCE_TIME
    The number of seconds that the blacklist scheduler will concern of bad slots or supervisors.
    See Also:
      - Constant Field Values

  - ### BLACKLIST_SCHEDULER_TOLERANCE_COUNT

    public static final String BLACKLIST_SCHEDULER_TOLERANCE_COUNT
    The number of hit count that will trigger blacklist in tolerance time.
    See Also:
      - Constant Field Values

  - ### BLACKLIST_SCHEDULER_RESUME_TIME

    public static final String BLACKLIST_SCHEDULER_RESUME_TIME
    The number of seconds that the blacklisted slots or supervisor will be resumed.
    See Also:
      - Constant Field Values

  - ### BLACKLIST_SCHEDULER_ENABLE_SEND_ASSIGNMENT_FAILURES

    public static final String BLACKLIST_SCHEDULER_ENABLE_SEND_ASSIGNMENT_FAILURES
    Enables blacklisting support for supervisors with failed send assignment calls.
    See Also:
      - Constant Field Values

  - ### BLACKLIST_SCHEDULER_REPORTER

    public static final String BLACKLIST_SCHEDULER_REPORTER
    The class that the blacklist scheduler will report the blacklist.
    See Also:
      - Constant Field Values

  - ### BLACKLIST_SCHEDULER_STRATEGY

    public static final String BLACKLIST_SCHEDULER_STRATEGY
    The class that specifies the eviction strategy to use in blacklist scheduler. If you are using the RAS scheduler please set this to "org.apache.storm.scheduler.blacklist.strategies.RasBlacklistStrategy" or you may get odd behavior when the cluster is full and there are blacklisted nodes.
    See Also:
      - Constant Field Values

  - ### BLACKLIST_SCHEDULER_ASSUME_SUPERVISOR_BAD_BASED_ON_BAD_SLOT

    public static final String BLACKLIST_SCHEDULER_ASSUME_SUPERVISOR_BAD_BASED_ON_BAD_SLOT
    Whether `BlacklistScheduler` will assume the supervisor is bad based on bad slots or not. A bad slot indicates the situation where the nimbus doesn't receive heartbeat from the worker in time, it's hard to differentiate if it's because of the supervisor node or the worker itself. If this is set to true, the scheduler will consider a supervisor is bad when seeing bad slots in it. Otherwise, the scheduler will assume a supervisor is bad only when it does not receive supervisor heartbeat in time.
    See Also:
      - Constant Field Values

  - ### SCHEDULER_DISPLAY_RESOURCE

    public static final String SCHEDULER_DISPLAY_RESOURCE
    Whether we want to display all the resource capacity and scheduled usage on the UI page. You MUST have this variable set if you are using any kind of resource-related scheduler.

    If this is not set, we will not display resource capacity and usage on the UI.
    See Also:
      - Constant Field Values

  - ### STORM_HEALTH_CHECK_DIR

    public static final String STORM_HEALTH_CHECK_DIR
    The directory where storm's health scripts go.
    See Also:
      - Constant Field Values

  - ### STORM_HEALTH_CHECK_TIMEOUT_MS

    public static final String STORM_HEALTH_CHECK_TIMEOUT_MS
    The time to allow any given healthcheck script to run before it is marked failed due to timeout.
    See Also:
      - Constant Field Values

  - ### STORM_HEALTH_CHECK_FAIL_ON_TIMEOUTS

    public static final String STORM_HEALTH_CHECK_FAIL_ON_TIMEOUTS
    Boolean setting to configure if health checks should fail when timeouts occur or not.
    See Also:
      - Constant Field Values

  - ### NIMBUS_DAEMON_USER

    public static final String NIMBUS_DAEMON_USER
    This is the user that the Nimbus daemon process is running as. May be used when security is enabled to authorize actions in the cluster.
    See Also:
      - Constant Field Values

  - ### NIMBUS_CHILDOPTS

    public static final String NIMBUS_CHILDOPTS
    This parameter is used by the storm-deploy project to configure the jvm options for the nimbus daemon.
    See Also:
      - Constant Field Values

  - ### NIMBUS_TASK_TIMEOUT_SECS

    public static final String NIMBUS_TASK_TIMEOUT_SECS
    How long without heartbeating a task can go before nimbus will consider the task dead and reassign it to another location. Can be exceeded when `Config.TOPOLOGY_WORKER_TIMEOUT_SECS` is set.
    See Also:
      - Constant Field Values

  - ### NIMBUS_MONITOR_FREQ_SECS

    public static final String NIMBUS_MONITOR_FREQ_SECS
    How often nimbus should wake up to check heartbeats and do reassignments. Note that if a machine ever goes down Nimbus will immediately wake up and take action. This parameter is for checking for failures when there's no explicit event like that occurring.
    See Also:
      - Constant Field Values

  - ### NIMBUS_CLEANUP_INBOX_FREQ_SECS

    public static final String NIMBUS_CLEANUP_INBOX_FREQ_SECS
    How often nimbus should wake the cleanup thread to clean the inbox.
    See Also:
      - `NIMBUS_INBOX_JAR_EXPIRATION_SECS`
      - Constant Field Values

  - ### NIMBUS_INBOX_JAR_EXPIRATION_SECS

    public static final String NIMBUS_INBOX_JAR_EXPIRATION_SECS
    The length of time a jar file lives in the inbox before being deleted by the cleanup thread.

    Probably keep this value greater than or equal to NIMBUS_CLEANUP_INBOX_JAR_EXPIRATION_SECS. Note that the time it takes to delete an inbox jar file is going to be somewhat more than NIMBUS_CLEANUP_INBOX_JAR_EXPIRATION_SECS (depending on how often NIMBUS_CLEANUP_FREQ_SECS is set to).

    See Also:
      - `NIMBUS_CLEANUP_INBOX_FREQ_SECS`
      - Constant Field Values

  - ### NIMBUS_SUPERVISOR_TIMEOUT_SECS

    public static final String NIMBUS_SUPERVISOR_TIMEOUT_SECS
    How long before a supervisor can go without heartbeating before nimbus considers it dead and stops assigning new work to it.
    See Also:
      - Constant Field Values

  - ### NIMBUS_TASK_LAUNCH_SECS

    public static final String NIMBUS_TASK_LAUNCH_SECS
    A special timeout used when a task is initially launched. During launch, this is the timeout used until the first heartbeat, overriding nimbus.task.timeout.secs.

    A separate timeout exists for launch because there can be quite a bit of overhead to launching new JVM's and configuring them.

    Can be exceeded when `Config.TOPOLOGY_WORKER_TIMEOUT_SECS` is set.
    See Also:
      - Constant Field Values

  - ### NIMBUS_FILE_COPY_EXPIRATION_SECS

    public static final String NIMBUS_FILE_COPY_EXPIRATION_SECS
    During upload/download with the master, how long an upload or download connection is idle before nimbus considers it dead and drops the connection.
    See Also:
      - Constant Field Values

  - ### NIMBUS_TOPOLOGY_VALIDATOR

    public static final String NIMBUS_TOPOLOGY_VALIDATOR
    A custom class that implements ITopologyValidator that is run whenever a topology is submitted. Can be used to provide business-specific logic for whether topologies are allowed to run or not.
    See Also:
      - Constant Field Values

  - ### NIMBUS_AUTHORIZER

    public static final String NIMBUS_AUTHORIZER
    Class name for authorization plugin for Nimbus.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_AUTHORIZER

    public static final String SUPERVISOR_AUTHORIZER
    Class name for authorization plugin for supervisor.
    See Also:
      - Constant Field Values

  - ### NIMBUS_IMPERSONATION_AUTHORIZER

    public static final String NIMBUS_IMPERSONATION_AUTHORIZER
    Impersonation user ACL config entries.
    See Also:
      - Constant Field Values

  - ### NIMBUS_CREDENTIAL_RENEW_FREQ_SECS

    public static final String NIMBUS_CREDENTIAL_RENEW_FREQ_SECS
    How often nimbus should wake up to renew credentials if needed.
    See Also:
      - Constant Field Values

  - ### NIMBUS_TOPOLOGY_ACTION_NOTIFIER_PLUGIN

    public static final String NIMBUS_TOPOLOGY_ACTION_NOTIFIER_PLUGIN
    FQCN of a class that implements `I` @see org.apache.storm.nimbus.ITopologyActionNotifierPlugin for details.
    See Also:
      - Constant Field Values

  - ### NIMBUS_ASSIGNMENTS_SERVICE_THREADS

    public static final String NIMBUS_ASSIGNMENTS_SERVICE_THREADS
    This controls the number of working threads for distributing master assignments to supervisors.
    See Also:
      - Constant Field Values

  - ### NIMBUS_ASSIGNMENTS_SERVICE_THREAD_QUEUE_SIZE

    public static final String NIMBUS_ASSIGNMENTS_SERVICE_THREAD_QUEUE_SIZE
    This controls the number of working thread queue size of assignment service.
    See Also:
      - Constant Field Values

  - ### NIMBUS_WORKER_HEARTBEATS_RECOVERY_STRATEGY_CLASS

    public static final String NIMBUS_WORKER_HEARTBEATS_RECOVERY_STRATEGY_CLASS
    class controls heartbeats recovery strategy.
    See Also:
      - Constant Field Values

  - ### NIMBUS_TOPOLOGY_BLOBSTORE_DELETION_DELAY_MS

    public static final String NIMBUS_TOPOLOGY_BLOBSTORE_DELETION_DELAY_MS
    This controls the number of milliseconds nimbus will wait before deleting a topology blobstore once detected it is able to delete.
    See Also:
      - Constant Field Values

  - ### UI_HOST

    public static final String UI_HOST
    Storm UI binds to this host/interface.
    See Also:
      - Constant Field Values

  - ### UI_PORT

    public static final String UI_PORT
    Storm UI binds to this port.
    See Also:
      - Constant Field Values

  - ### UI_TITLE

    public static final String UI_TITLE
    Storm UI's title.
    See Also:
      - Constant Field Values

  - ### UI_DISABLE_HTTP_BINDING

    public static final String UI_DISABLE_HTTP_BINDING
    This controls wheather Storm UI should bind to http port even if ui.port is > 0.
    See Also:
      - Constant Field Values

  - ### UI_DISABLE_SPOUT_LAG_MONITORING

    public static final String UI_DISABLE_SPOUT_LAG_MONITORING
    This controls whether Storm UI displays spout lag for the Kafka spout.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_DISABLE_HTTP_BINDING

    public static final String LOGVIEWER_DISABLE_HTTP_BINDING
    This controls wheather Storm Logviewer should bind to http port even if logviewer.port is > 0.
    See Also:
      - Constant Field Values

  - ### DRPC_DISABLE_HTTP_BINDING

    public static final String DRPC_DISABLE_HTTP_BINDING
    This controls wheather Storm DRPC should bind to http port even if drpc.http.port is > 0.
    See Also:
      - Constant Field Values

  - ### UI_PROJECT_BUGTRACKER_URL

    public static final String UI_PROJECT_BUGTRACKER_URL
    Storm UI Project BUGTRACKER Link for reporting issue.
    See Also:
      - Constant Field Values

  - ### UI_CENTRAL_LOGGING_URL

    public static final String UI_CENTRAL_LOGGING_URL
    Storm UI Central Logging URL.
    See Also:
      - Constant Field Values

  - ### UI_PAGINATION

    public static final String UI_PAGINATION
    Storm UI drop-down pagination value. Set ui.pagination to be a positive integer or -1 (displays all entries). Valid values: -1, 10, 20, 25 etc.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_PORT

    public static final String LOGVIEWER_PORT
    HTTP UI port for log viewer.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_CHILDOPTS

    public static final String LOGVIEWER_CHILDOPTS
    Childopts for log viewer java process.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_CLEANUP_INTERVAL_SECS

    public static final String LOGVIEWER_CLEANUP_INTERVAL_SECS
    How often to clean up old log files.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_CLEANUP_AGE_MINS

    public static final String LOGVIEWER_CLEANUP_AGE_MINS
    How many minutes since a log was last modified for the log to be considered for clean-up.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_MAX_SUM_WORKER_LOGS_SIZE_MB

    public static final String LOGVIEWER_MAX_SUM_WORKER_LOGS_SIZE_MB
    The maximum number of bytes all worker log files can take up in MB.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_MAX_PER_WORKER_LOGS_SIZE_MB

    public static final String LOGVIEWER_MAX_PER_WORKER_LOGS_SIZE_MB
    The maximum number of bytes per worker's files can take up in MB.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_PORT

    public static final String LOGVIEWER_HTTPS_PORT
    Storm Logviewer HTTPS port. Logviewer must use HTTPS if Storm UI is using HTTPS.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_KEYSTORE_PATH

    public static final String LOGVIEWER_HTTPS_KEYSTORE_PATH
    Path to the keystore containing the certs used by Storm Logviewer for HTTPS communications.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_KEYSTORE_PASSWORD

    public static final String LOGVIEWER_HTTPS_KEYSTORE_PASSWORD
    Password for the keystore for HTTPS for Storm Logviewer.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_KEYSTORE_TYPE

    public static final String LOGVIEWER_HTTPS_KEYSTORE_TYPE
    Type of the keystore for HTTPS for Storm Logviewer. see http://docs.oracle.com/javase/8/docs/api/java/security/KeyStore.html for more details.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_KEY_PASSWORD

    public static final String LOGVIEWER_HTTPS_KEY_PASSWORD
    Password to the private key in the keystore for setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_TRUSTSTORE_PATH

    public static final String LOGVIEWER_HTTPS_TRUSTSTORE_PATH
    Path to the truststore containing the certs used by Storm Logviewer for HTTPS communications.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_TRUSTSTORE_PASSWORD

    public static final String LOGVIEWER_HTTPS_TRUSTSTORE_PASSWORD
    Password for the truststore for HTTPS for Storm Logviewer.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_TRUSTSTORE_TYPE

    public static final String LOGVIEWER_HTTPS_TRUSTSTORE_TYPE
    Type of the truststore for HTTPS for Storm Logviewer. see http://docs.oracle.com/javase/8/docs/api/java/security/Truststore.html for more details.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_WANT_CLIENT_AUTH

    public static final String LOGVIEWER_HTTPS_WANT_CLIENT_AUTH
    Password to the truststore used by Storm Logviewer setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_NEED_CLIENT_AUTH

    public static final String LOGVIEWER_HTTPS_NEED_CLIENT_AUTH
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_HTTPS_ENABLE_SSL_RELOAD

    public static final String LOGVIEWER_HTTPS_ENABLE_SSL_RELOAD
    If set to true, keystore and truststore for Logviewer will be automatically reloaded when modified.
    See Also:
      - Constant Field Values

  - ### LOGS_USERS

    public static final String LOGS_USERS
    A list of users allowed to view logs via the Log Viewer.
    See Also:
      - Constant Field Values

  - ### LOGS_GROUPS

    public static final String LOGS_GROUPS
    A list of groups allowed to view logs via the Log Viewer.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_APPENDER_NAME

    public static final String LOGVIEWER_APPENDER_NAME
    Appender name used by log viewer to determine log directory.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_FILTER

    public static final String LOGVIEWER_FILTER
    A class implementing jakarta.servlet.Filter for authenticating/filtering Logviewer requests.
    See Also:
      - Constant Field Values

  - ### LOGVIEWER_FILTER_PARAMS

    public static final String LOGVIEWER_FILTER_PARAMS
    Initialization parameters for the jakarta.servlet.Filter for Logviewer.
    See Also:
      - Constant Field Values

  - ### UI_CHILDOPTS

    public static final String UI_CHILDOPTS
    Childopts for Storm UI Java process.
    See Also:
      - Constant Field Values

  - ### UI_FILTER

    public static final String UI_FILTER
    A class implementing jakarta.servlet.Filter for authenticating/filtering UI requests.
    See Also:
      - Constant Field Values

  - ### UI_FILTER_PARAMS

    public static final String UI_FILTER_PARAMS
    Initialization parameters for the jakarta.servlet.Filter for UI.
    See Also:
      - Constant Field Values

  - ### UI_HEADER_BUFFER_BYTES

    public static final String UI_HEADER_BUFFER_BYTES
    The size of the header buffer for the UI in bytes.
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_PORT

    public static final String UI_HTTPS_PORT
    This port is used by Storm UI for receiving HTTPS (SSL) requests from clients.
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_KEYSTORE_PATH

    public static final String UI_HTTPS_KEYSTORE_PATH
    Path to the keystore used by Storm UI for setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_KEYSTORE_PASSWORD

    public static final String UI_HTTPS_KEYSTORE_PASSWORD
    Password to the keystore used by Storm UI for setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_KEYSTORE_TYPE

    public static final String UI_HTTPS_KEYSTORE_TYPE
    Type of keystore used by Storm UI for setting up HTTPS (SSL). see http://docs.oracle.com/javase/7/docs/api/java/security/KeyStore .html for more details.
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_KEY_PASSWORD

    public static final String UI_HTTPS_KEY_PASSWORD
    Password to the private key in the keystore for setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_TRUSTSTORE_PATH

    public static final String UI_HTTPS_TRUSTSTORE_PATH
    Path to the truststore used by Storm UI setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_TRUSTSTORE_PASSWORD

    public static final String UI_HTTPS_TRUSTSTORE_PASSWORD
    Password to the truststore used by Storm UI setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_TRUSTSTORE_TYPE

    public static final String UI_HTTPS_TRUSTSTORE_TYPE
    Type of truststore used by Storm UI for setting up HTTPS (SSL). see http://docs.oracle .com/javase/7/docs/api/java/security/KeyStore.html for more details.
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_WANT_CLIENT_AUTH

    public static final String UI_HTTPS_WANT_CLIENT_AUTH
    Password to the truststore used by Storm DRPC setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_NEED_CLIENT_AUTH

    public static final String UI_HTTPS_NEED_CLIENT_AUTH
    See Also:
      - Constant Field Values

  - ### UI_HTTPS_ENABLE_SSL_RELOAD

    public static final String UI_HTTPS_ENABLE_SSL_RELOAD
    If set to true, keystore and truststore for UI will be automatically reloaded when modified.
    See Also:
      - Constant Field Values

  - ### PACEMAKER_MAX_THREADS

    public static final String PACEMAKER_MAX_THREADS
    The maximum number of threads that should be used by the Pacemaker. When Pacemaker gets loaded it will spawn new threads, up to this many total, to handle the load.
    See Also:
      - Constant Field Values

  - ### PACEMAKER_CHILDOPTS

    public static final String PACEMAKER_CHILDOPTS
    This parameter is used by the storm-deploy project to configure the jvm options for the pacemaker daemon.
    See Also:
      - Constant Field Values

  - ### DRPC_HTTP_PORT

    public static final String DRPC_HTTP_PORT
    This port is used by Storm DRPC for receiving HTTP DPRC requests from clients.
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_PORT

    public static final String DRPC_HTTPS_PORT
    This port is used by Storm DRPC for receiving HTTPS (SSL) DPRC requests from clients.
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_KEYSTORE_PATH

    public static final String DRPC_HTTPS_KEYSTORE_PATH
    Path to the keystore used by Storm DRPC for setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_KEYSTORE_PASSWORD

    public static final String DRPC_HTTPS_KEYSTORE_PASSWORD
    Password to the keystore used by Storm DRPC for setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_KEYSTORE_TYPE

    public static final String DRPC_HTTPS_KEYSTORE_TYPE
    Type of keystore used by Storm DRPC for setting up HTTPS (SSL). see http://docs.oracle .com/javase/7/docs/api/java/security/KeyStore.html for more details.
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_KEY_PASSWORD

    public static final String DRPC_HTTPS_KEY_PASSWORD
    Password to the private key in the keystore for setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_TRUSTSTORE_PATH

    public static final String DRPC_HTTPS_TRUSTSTORE_PATH
    Path to the truststore used by Storm DRPC setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_TRUSTSTORE_PASSWORD

    public static final String DRPC_HTTPS_TRUSTSTORE_PASSWORD
    Password to the truststore used by Storm DRPC setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_TRUSTSTORE_TYPE

    public static final String DRPC_HTTPS_TRUSTSTORE_TYPE
    Type of truststore used by Storm DRPC for setting up HTTPS (SSL). see http://docs.oracle .com/javase/7/docs/api/java/security/KeyStore.html for more details.
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_WANT_CLIENT_AUTH

    public static final String DRPC_HTTPS_WANT_CLIENT_AUTH
    Password to the truststore used by Storm DRPC setting up HTTPS (SSL).
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_NEED_CLIENT_AUTH

    public static final String DRPC_HTTPS_NEED_CLIENT_AUTH
    See Also:
      - Constant Field Values

  - ### DRPC_HTTPS_ENABLE_SSL_RELOAD

    public static final String DRPC_HTTPS_ENABLE_SSL_RELOAD
    If set to true, keystore and truststore for DRPC Server will be automatically reloaded when modified.
    See Also:
      - Constant Field Values

  - ### DRPC_AUTHORIZER

    public static final String DRPC_AUTHORIZER
    Class name for authorization plugin for DRPC client.
    See Also:
      - Constant Field Values

  - ### DRPC_REQUEST_TIMEOUT_SECS

    public static final String DRPC_REQUEST_TIMEOUT_SECS
    The timeout on DRPC requests within the DRPC server. Defaults to 10 minutes. Note that requests can also timeout based on the socket timeout on the DRPC client, and separately based on the topology message timeout for the topology implementing the DRPC function.
    See Also:
      - Constant Field Values

  - ### DRPC_CHILDOPTS

    public static final String DRPC_CHILDOPTS
    Childopts for Storm DRPC Java process.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_SCHEDULER_META

    public static final String SUPERVISOR_SCHEDULER_META
    the metadata configured on the supervisor.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_SLOTS_PORTS

    public static final String SUPERVISOR_SLOTS_PORTS
    A list of ports that can run workers on this supervisor. Each worker uses one port, and the supervisor will only run one worker per port. Use this configuration to tune how many workers run on each machine.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_BLOBSTORE

    public static final String SUPERVISOR_BLOBSTORE
    What blobstore implementation the supervisor should use.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_LOCALIZER_CACHE_TARGET_SIZE_MB

    public static final String SUPERVISOR_LOCALIZER_CACHE_TARGET_SIZE_MB
    The distributed cache target size in MB. This is a soft limit to the size of the distributed cache contents.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_LOCALIZER_CACHE_CLEANUP_INTERVAL_MS

    public static final String SUPERVISOR_LOCALIZER_CACHE_CLEANUP_INTERVAL_MS
    The distributed cache cleanup interval. Controls how often it scans to attempt to cleanup anything over the cache target size.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_LOCALIZER_UPDATE_BLOB_INTERVAL_SECS

    public static final String SUPERVISOR_LOCALIZER_UPDATE_BLOB_INTERVAL_SECS
    The distributed cache interval for checking for blobs to update.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_BLOBSTORE_DOWNLOAD_THREAD_COUNT

    public static final String SUPERVISOR_BLOBSTORE_DOWNLOAD_THREAD_COUNT
    What blobstore download parallelism the supervisor should use.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_BLOBSTORE_DOWNLOAD_MAX_RETRIES

    public static final String SUPERVISOR_BLOBSTORE_DOWNLOAD_MAX_RETRIES
    Maximum number of retries a supervisor is allowed to make for downloading a blob.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_NUMA_META

    public static final String SUPERVISOR_NUMA_META
    A map with keys mapped to each NUMA Node on the supervisor that will be used by scheduler. CPUs, memory and ports available on each NUMA node will be provided. Each supervisor will have different map of NUMAs. Example: "supervisor.numa.meta": { "0": { "numa.memory.mb": 122880, "numa.cores": [ 0, 12, 1, 13, 2, 14, 3, 15, 4, 16, 5, 17], "numa.ports": [6700, 6701]}, "1" : {"numa.memory.mb": 122880, "numa.cores": [ 6, 18, 7, 19, 8, 20, 9, 21, 10, 22, 11, 23], "numa.ports": [6702, 6703], "numa.generic.resources.map": {"gpu.count" : 1}} }
    See Also:
      - Constant Field Values

  - ### NIMBUS_BLOBSTORE

    public static final String NIMBUS_BLOBSTORE
    What blobstore implementation nimbus should use.
    See Also:
      - Constant Field Values

  - ### NIMBUS_BLOBSTORE_EXPIRATION_SECS

    public static final String NIMBUS_BLOBSTORE_EXPIRATION_SECS
    During operations with the blob store, via master, how long a connection is idle before nimbus considers it dead and drops the session and any associated connections.
    See Also:
      - Constant Field Values

  - ### NIMBUS_SLOTS_PER_TOPOLOGY

    public static final String NIMBUS_SLOTS_PER_TOPOLOGY
    A number representing the maximum number of workers any single topology can acquire. This will be ignored if the Resource Aware Scheduler is used.
    See Also:
      - Constant Field Values

  - ### DRPC_HTTP_FILTER

    public static final String DRPC_HTTP_FILTER
    A class implementing jakarta.servlet.Filter for DRPC HTTP requests.
    See Also:
      - Constant Field Values

  - ### DRPC_HTTP_FILTER_PARAMS

    public static final String DRPC_HTTP_FILTER_PARAMS
    Initialization parameters for the jakarta.servlet.Filter of the DRPC HTTP service.
    See Also:
      - Constant Field Values

  - ### NIMBUS_EXECUTORS_PER_TOPOLOGY

    public static final String NIMBUS_EXECUTORS_PER_TOPOLOGY
    A number representing the maximum number of executors any single topology can acquire.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_CHILDOPTS

    public static final String SUPERVISOR_CHILDOPTS
    This parameter is used by the storm-deploy project to configure the jvm options for the supervisor daemon.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_WORKER_START_TIMEOUT_SECS

    public static final String SUPERVISOR_WORKER_START_TIMEOUT_SECS
    How long a worker can go without heartbeating during the initial launch before the supervisor tries to restart the worker process. This value override supervisor.worker.timeout.secs during launch because there is additional overhead to starting and configuring the JVM on launch. Can be exceeded when `Config.TOPOLOGY_WORKER_TIMEOUT_SECS` is set.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_ENABLE

    public static final String SUPERVISOR_ENABLE
    Whether or not the supervisor should launch workers assigned to it. Defaults to true -- and you should probably never change this value. This configuration is used in the Storm unit tests.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_HEARTBEAT_FREQUENCY_SECS

    public static final String SUPERVISOR_HEARTBEAT_FREQUENCY_SECS
    how often the supervisor sends a heartbeat to the master.
    See Also:
      - Constant Field Values

  - ### SUPERVISOR_MONITOR_FREQUENCY_SECS

    public static final String SUPERVISOR_MONITOR_FREQUENCY_SECS
    How often the supervisor checks the worker heartbeats to see if any of them need to be restarted.
    See Also:
      - Constant Field Values

  - ### WORKER_PROFILER_CHILDOPTS

    public static final String WORKER_PROFILER_CHILDOPTS
    The jvm profiler opts provided to workers launched by this supervisor.
    See Also:
      - Constant Field Values

  - ### WORKER_PROFILER_ENABLED

    public static final String WORKER_PROFILER_ENABLED
    Enable profiling of worker JVMs using Oracle's Java Flight Recorder. Unlocking commercial features requires a special license from Oracle. See http://www.oracle.com/technetwork/java/javase/terms/products/index.html
    See Also:
      - Constant Field Values

  - ### WORKER_PROFILER_COMMAND

    public static final String WORKER_PROFILER_COMMAND
    The command launched supervisor with worker arguments pid, action and [target_directory] Where action is - start profile, stop profile, jstack, heapdump and kill against pid.
    See Also:
      - Constant Field Values

  - ### STORM_CLUSTER_METRICS_CONSUMER_REGISTER

    public static final String STORM_CLUSTER_METRICS_CONSUMER_REGISTER
    A list of classes implementing IClusterMetricsConsumer (See storm.yaml.example for exact config format). Each listed class will be routed cluster related metrics data. Each listed class maps 1:1 to a ClusterMetricsConsumerExecutor and they're executed in Nimbus. Only consumers which run in leader Nimbus receives metrics data.
    See Also:
      - Constant Field Values

  - ### STORM_CLUSTER_METRICS_CONSUMER_PUBLISH_INTERVAL_SECS

    public static final String STORM_CLUSTER_METRICS_CONSUMER_PUBLISH_INTERVAL_SECS
    How often cluster metrics data is published to metrics consumer.
    See Also:
      - Constant Field Values

  - ### STORM_TOPOLOGY_CLASSPATH_BEGINNING_ENABLED

    public static final String STORM_TOPOLOGY_CLASSPATH_BEGINNING_ENABLED
    Enables user-first classpath. See topology.classpath.beginning.
    See Also:
      - Constant Field Values

  - ### JAVA_LIBRARY_PATH

    public static final String JAVA_LIBRARY_PATH
    This value is passed to spawned JVMs (e.g., Nimbus, Supervisor, and Workers) for the java.library.path value. java.library.path tells the JVM where to look for native libraries. It is necessary to set this config correctly since Storm uses the ZeroMQ and JZMQ native libs.
    See Also:
      - Constant Field Values

  - ### DEV_ZOOKEEPER_PATH

    public static final String DEV_ZOOKEEPER_PATH
    The path to use as the zookeeper dir when running a zookeeper server via "storm dev-zookeeper". This zookeeper instance is only intended for development; it is not a production grade zookeeper setup.
    See Also:
      - Constant Field Values

  - ### ISOLATION_SCHEDULER_MACHINES

    public static final String ISOLATION_SCHEDULER_MACHINES
    A map from topology name to the number of machines that should be dedicated for that topology. Set storm.scheduler to org.apache.storm.scheduler.IsolationScheduler to make use of the isolation scheduler.
    See Also:
      - Constant Field Values

  - ### SCHEDULER_CONFIG_CACHE_EXPIRATION_SECS

    public static final String SCHEDULER_CONFIG_CACHE_EXPIRATION_SECS
    How long before a scheduler considers its config cache expired.
    See Also:
      - Constant Field Values

  - ### SCHEDULER_CONFIG_LOADER_URI

    public static final String SCHEDULER_CONFIG_LOADER_URI
    For ArtifactoryConfigLoader, this can either be a reference to an individual file in Artifactory or to a directory. If it is a directory, the file with the largest lexographic name will be returned. Users need to add "artifactory+" to the beginning of the real URI to use ArtifactoryConfigLoader. For FileConfigLoader, this is the URI pointing to a file.
    See Also:
      - Constant Field Values

  - ### SCHEDULER_CONFIG_LOADER_POLLTIME_SECS

    public static final String SCHEDULER_CONFIG_LOADER_POLLTIME_SECS
    It is the frequency at which the plugin will call out to artifactory instead of returning the most recently cached result. Currently it's only used in ArtifactoryConfigLoader.
    See Also:
      - Constant Field Values

  - ### SCHEDULER_CONFIG_LOADER_TIMEOUT_SECS

    public static final String SCHEDULER_CONFIG_LOADER_TIMEOUT_SECS
    It is the amount of time an http connection to the artifactory server will wait before timing out. Currently it's only used in ArtifactoryConfigLoader.
    See Also:
      - Constant Field Values

  - ### SCHEDULER_CONFIG_LOADER_ARTIFACTORY_BASE_DIRECTORY

    public static final String SCHEDULER_CONFIG_LOADER_ARTIFACTORY_BASE_DIRECTORY
    It is the part of the uri, configurable in Artifactory, which represents the top of the directory tree. It's only used in ArtifactoryConfigLoader.
    See Also:
      - Constant Field Values

  - ### MULTITENANT_SCHEDULER_USER_POOLS

    public static final String MULTITENANT_SCHEDULER_USER_POOLS
    A map from the user name to the number of machines that should that user is allowed to use. Set storm.scheduler to org.apache.storm.scheduler.multitenant.MultitenantScheduler
    See Also:
      - Constant Field Values

  - ### RESOURCE_AWARE_SCHEDULER_USER_POOLS

    public static final String RESOURCE_AWARE_SCHEDULER_USER_POOLS
    A map of users to another map of the resource guarantees of the user. Used by Resource Aware Scheduler to ensure per user resource guarantees.
    See Also:
      - Constant Field Values

  - ### RESOURCE_AWARE_SCHEDULER_PRIORITY_STRATEGY

    public static final String RESOURCE_AWARE_SCHEDULER_PRIORITY_STRATEGY
    the class that specifies the scheduling priority strategy to use in ResourceAwareScheduler.
    See Also:
      - Constant Field Values

  - ### RESOURCE_AWARE_SCHEDULER_MAX_TOPOLOGY_SCHEDULING_ATTEMPTS

    public static final String RESOURCE_AWARE_SCHEDULER_MAX_TOPOLOGY_SCHEDULING_ATTEMPTS
    The maximum number of times that the RAS will attempt to schedule a topology. The default is 5.
    See Also:
      - Constant Field Values

  - ### RESOURCE_AWARE_SCHEDULER_MAX_STATE_SEARCH

    public static final String RESOURCE_AWARE_SCHEDULER_MAX_STATE_SEARCH
    See Also:
      - Constant Field Values

  - ### NIMBUS_CODE_SYNC_FREQ_SECS

    public static final String NIMBUS_CODE_SYNC_FREQ_SECS
    How often nimbus's background thread to sync code for missing topologies should run.
    See Also:
      - Constant Field Values

  - ### STORM_RESOURCE_ISOLATION_PLUGIN

    public static final String STORM_RESOURCE_ISOLATION_PLUGIN
    The plugin to be used for resource isolation.
    See Also:
      - Constant Field Values

  - ### STORM_CGROUP_RESOURCES

    public static final String STORM_CGROUP_RESOURCES
    resources to to be controlled by cgroups.
    See Also:
      - Constant Field Values

  - ### STORM_CGROUP_HIERARCHY_NAME

    public static final String STORM_CGROUP_HIERARCHY_NAME
    name for the cgroup hierarchy.
    See Also:
      - Constant Field Values

  - ### STORM_RESOURCE_ISOLATION_PLUGIN_ENABLE

    public static final String STORM_RESOURCE_ISOLATION_PLUGIN_ENABLE
    flag to determine whether to use a resource isolation plugin Also determines whether the unit tests for cgroup runs. If storm.resource.isolation.plugin.enable is set to false the unit tests for cgroups will not run
    See Also:
      - Constant Field Values

  - ### STORM_METRIC_STORE_CLASS

    public static final String STORM_METRIC_STORE_CLASS
    Class implementing MetricStore. Runs on Nimbus.
    See Also:
      - Constant Field Values

  - ### STORM_METRIC_PROCESSOR_CLASS

    public static final String STORM_METRIC_PROCESSOR_CLASS
    Class implementing WorkerMetricsProcessor. Runs on Supervisors.
    See Also:
      - Constant Field Values

  - ### STORM_ROCKSDB_LOCATION

    public static final String STORM_ROCKSDB_LOCATION
    RocksDB file location. This setting is specific to the org.apache.storm.metricstore.rocksdb.RocksDbStore implementation for the storm.metricstore.class.
    See Also:
      - Constant Field Values

  - ### STORM_ROCKSDB_CREATE_IF_MISSING

    public static final String STORM_ROCKSDB_CREATE_IF_MISSING
    RocksDB create if missing flag. This setting is specific to the org.apache.storm.metricstore.rocksdb.RocksDbStore implementation for the storm.metricstore.class.
    See Also:
      - Constant Field Values

  - ### STORM_ROCKSDB_METADATA_STRING_CACHE_CAPACITY

    public static final String STORM_ROCKSDB_METADATA_STRING_CACHE_CAPACITY
    RocksDB metadata cache capacity. This setting is specific to the org.apache.storm.metricstore.rocksdb.RocksDbStore implementation for the storm.metricstore.class.
    See Also:
      - Constant Field Values

  - ### STORM_ROCKSDB_METRIC_RETENTION_HOURS

    public static final String STORM_ROCKSDB_METRIC_RETENTION_HOURS
    RocksDB setting for length of metric retention. This setting is specific to the org.apache.storm.metricstore.rocksdb.RocksDbStore implementation for the storm.metricstore.class.
    See Also:
      - Constant Field Values

  - ### STORM_ROCKSDB_METRIC_DELETION_PERIOD_HOURS

    public static final String STORM_ROCKSDB_METRIC_DELETION_PERIOD_HOURS
    RocksDB setting for period of metric deletion thread. This setting is specific to the org.apache.storm.metricstore.rocksdb .RocksDbStore implementation for the storm.metricstore.class.
    See Also:
      - Constant Field Values

  - ### STORM_NIMBUS_ZOOKEEPER_ACLS_CHECK

    public static final String STORM_NIMBUS_ZOOKEEPER_ACLS_CHECK
    In nimbus on startup check if all of the zookeeper ACLs are correct before starting. If not don't start nimbus.
    See Also:
      - Constant Field Values

  - ### STORM_NIMBUS_ZOOKEEPER_ACLS_FIXUP

    public static final String STORM_NIMBUS_ZOOKEEPER_ACLS_FIXUP
    In nimbus on startup check if all of the zookeeper ACLs are correct before starting. If not do your best to fix them before nimbus starts, if it cannot fix them nimbus will not start. This overrides any value set for storm.nimbus.zookeeper.acls.check.
    See Also:
      - Constant Field Values

  - ### VALIDATE_TOPOLOGY_SCHEDULER_STRATEGY

    public static final String VALIDATE_TOPOLOGY_SCHEDULER_STRATEGY
    Server side validation that @{see Config#TOPOLOGY_SCHEDULER_STRATEGY} is set ot a subclass of IStrategy.
    See Also:
      - Constant Field Values

  - ### UI_HTTP_CREDS_PLUGIN

    public static final String UI_HTTP_CREDS_PLUGIN
    Class name of the HTTP credentials plugin for the UI.
    See Also:
      - Constant Field Values

  - ### DRPC_HTTP_CREDS_PLUGIN

    public static final String DRPC_HTTP_CREDS_PLUGIN
    Class name of the HTTP credentials plugin for DRPC.
    See Also:
      - Constant Field Values

  - ### STORM_SUPERVISOR_CGROUP_ROOTDIR

    public static String STORM_SUPERVISOR_CGROUP_ROOTDIR
    root directory for cgoups.

  - ### STORM_WORKER_CGROUP_MEMORY_MB_LIMIT

    public static String STORM_WORKER_CGROUP_MEMORY_MB_LIMIT
    the manually set memory limit (in MB) for each CGroup on supervisor node.

  - ### STORM_WORKER_CGROUP_CPU_LIMIT

    public static String STORM_WORKER_CGROUP_CPU_LIMIT
    the manually set cpu share for each CGroup on supervisor node.

  - ### STORM_CGROUP_CGEXEC_CMD

    public static String STORM_CGROUP_CGEXEC_CMD
    full path to cgexec command.

  - ### STORM_CGROUP_MEMORY_LIMIT_TOLERANCE_MARGIN_MB

    public static String STORM_CGROUP_MEMORY_LIMIT_TOLERANCE_MARGIN_MB
    Please use STORM_SUPERVISOR_MEMORY_LIMIT_TOLERANCE_MARGIN_MB instead. The amount of memory a worker can exceed its allocation before cgroup will kill it.

  - ### STORM_CGROUP_INHERIT_CPUSET_CONFIGS

    public static String STORM_CGROUP_INHERIT_CPUSET_CONFIGS
    To determine whether or not to cgroups should inherit cpuset.cpus and cpuset.mems config values form parent cgroup Note that cpuset.cpus and cpuset.mems configs in a cgroup must be initialized (i.e. contain a valid value) prior to being able to launch processes in that cgroup. The common use case for this config is when the linux distribution that is used does not support the cgroup.clone_children config.

  - ### STORM_CGROUP_MEMORY_ENFORCEMENT_ENABLE

    public static String STORM_CGROUP_MEMORY_ENFORCEMENT_ENABLE
    Java does not always play nicely with cgroups. It is coming but not fully implemented and not for the way storm uses cgroups. In the short term you can disable the hard memory enforcement by cgroups and let the supervisor handle shooting workers going over their limit in a kinder way.

  - ### STORM_SUPERVISOR_MEMORY_LIMIT_TOLERANCE_MARGIN_MB

    public static String STORM_SUPERVISOR_MEMORY_LIMIT_TOLERANCE_MARGIN_MB
    Memory given to each worker for free (because java and storm have some overhead). This is memory on the box that the workers can use. This should not be included in SUPERVISOR_MEMORY_CAPACITY_MB, as nimbus does not use this memory for scheduling.

  - ### STORM_SUPERVISOR_HARD_MEMORY_LIMIT_MULTIPLIER

    public static String STORM_SUPERVISOR_HARD_MEMORY_LIMIT_MULTIPLIER
    A multiplier for the memory limit of a worker that will have the supervisor shoot it immediately. 1.0 means shoot the worker as soon as it goes over. 2.0 means shoot the worker if its usage is double what was requested. This value is combined with STORM_SUPERVISOR_HARD_MEMORY_LIMIT_OVERAGE and which ever is greater is used for enforcement. This allows small workers to not be shot.

  - ### STORM_SUPERVISOR_HARD_LIMIT_MEMORY_OVERAGE_MB

    public static String STORM_SUPERVISOR_HARD_LIMIT_MEMORY_OVERAGE_MB
    If the memory usage of a worker goes over its limit by this value is it shot immediately. This value is combined with STORM_SUPERVISOR_HARD_LIMIT_MEMORY_MULTIPLIER and which ever is greater is used for enforcement. This allows small workers to not be shot.

  - ### STORM_SUPERVISOR_LOW_MEMORY_THRESHOLD_MB

    public static String STORM_SUPERVISOR_LOW_MEMORY_THRESHOLD_MB
    If the amount of memory that is free in the system (either on the box or in the supervisor's cgroup) is below this number (in MB) consider the system to be in low memory mode and start shooting workers if they are over their limit.

  - ### STORM_SUPERVISOR_MEDIUM_MEMORY_THRESHOLD_MB

    public static String STORM_SUPERVISOR_MEDIUM_MEMORY_THRESHOLD_MB
    If the amount of memory that is free in the system (either on the box or in the supervisor's cgroup) is below this number (in MB) consider the system to be a little low on memory and start shooting workers if they are over their limit for a given grace period STORM_SUPERVISOR_MEDIUM_MEMORY_GRACE_PERIOD_MS.

  - ### STORM_SUPERVISOR_MEDIUM_MEMORY_GRACE_PERIOD_MS

    public static String STORM_SUPERVISOR_MEDIUM_MEMORY_GRACE_PERIOD_MS
    The number of milliseconds that a worker is allowed to be over their limit when there is a medium amount of memory free in the system.

  - ### STORM_WORKER_MIN_CPU_PCORE_PERCENT

    public static String STORM_WORKER_MIN_CPU_PCORE_PERCENT
    The config indicates the minimum percentage of cpu for a core that a worker will use. Assuming the a core value to be 100, a value of 10 indicates 10% of the core. The P in PCORE represents the term "physical". A default value will be set for this config if user does not override.

    Workers in containers or cgroups may require a minimum amount of CPU in order to launch within the supervisor timeout. This setting allows configuring this to occur.

  - ### STORM_WORKER_TOKEN_LIFE_TIME_HOURS

    public static String STORM_WORKER_TOKEN_LIFE_TIME_HOURS
    The number of hours a worker token is valid for. This also sets how frequently worker tokens will be renewed.

  - ### STORM_OCI_NSCD_DIR

    public static String STORM_OCI_NSCD_DIR
    The directory of nscd - name service cache daemon, e.g. "/var/run/nscd/". nscd must be running so that profiling can work properly.

  - ### STORM_OCI_READONLY_BINDMOUNTS

    public static String STORM_OCI_READONLY_BINDMOUNTS
    A list of read only bind mounted directories.

  - ### STORM_OCI_READWRITE_BINDMOUNTS

    public static String STORM_OCI_READWRITE_BINDMOUNTS
    A list of read-write bind mounted directories.

  - ### STORM_OCI_CGROUP_PARENT

    public static String STORM_OCI_CGROUP_PARENT
    The cgroup root for oci container. (Also a --cgroup-parent config for docker command) Must follow the constraints of the docker command. The path will be made as absolute path if it's a relative path because we saw some weird bugs (the cgroup memory directory disappears after a while) when a relative path is used. Note that we only support cgroupfs cgroup driver because of some issues with systemd; restricting to `cgroupfs` also makes cgroup paths simple.

  - ### STORM_OCI_IMAGE

    public static String STORM_OCI_IMAGE
    Default oci image to use if the topology doesn't specify which oci image to use.

  - ### STORM_OCI_ALLOWED_IMAGES

    public static String STORM_OCI_ALLOWED_IMAGES
    A list of oci image that are allowed. A special entry of asterisk(*) means any image is allowed, but the image has to pass other checks. Storm currently assumes OCI container is not supported on the cluster if this is not configured.

  - ### STORM_OCI_SECCOMP_PROFILE

    public static String STORM_OCI_SECCOMP_PROFILE
    Specify the seccomp Json file to be used as a seccomp filter.

  - ### STORM_OCI_IMAGE_HDFS_TOPLEVEL_DIR

    public static String STORM_OCI_IMAGE_HDFS_TOPLEVEL_DIR
    The HDFS location under which the oci image manifests, layers, and configs directories exist.

  - ### STORM_OCI_IMAGE_TAG_TO_MANIFEST_PLUGIN

    public static final String STORM_OCI_IMAGE_TAG_TO_MANIFEST_PLUGIN
    The plugin to be used to get the image-tag to manifest mappings.
    See Also:
      - Constant Field Values

  - ### STORM_OCI_MANIFEST_TO_RESOURCES_PLUGIN

    public static final String STORM_OCI_MANIFEST_TO_RESOURCES_PLUGIN
    The plugin to be used to get oci resource according to the manifest.
    See Also:
      - Constant Field Values

  - ### STORM_OCI_RESOURCES_LOCALIZER

    public static final String STORM_OCI_RESOURCES_LOCALIZER
    The plugin to use for oci resources localization.
    See Also:
      - Constant Field Values

  - ### STORM_OCI_RESOURCES_LOCAL_DIR

    public static final String STORM_OCI_RESOURCES_LOCAL_DIR
    The local directory for localized oci resources.
    See Also:
      - Constant Field Values

  - ### STORM_OCI_LAYER_MOUNTS_TO_KEEP

    public static final String STORM_OCI_LAYER_MOUNTS_TO_KEEP
    Target count of OCI layer mounts that we should keep on disk at one time.
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### DaemonConfig

    public DaemonConfig()

- ## Method Details

  - ### getCgroupRootDir

    public static String getCgroupRootDir(Map<String,Object> conf)

  - ### getCgroupStormHierarchyDir

    public static String getCgroupStormHierarchyDir(Map<String,Object> conf)

  - ### getCgroupStormResources

    public static ArrayList<String> getCgroupStormResources(Map<String,Object> conf)
    Get the cgroup resources from the conf.
    Parameters:
      `conf` - the config to read
    Returns:
      the resources.

  - ### getCgroupStormHierarchyName

    public static String getCgroupStormHierarchyName(Map<String,Object> conf)