Configuration Properties

All Alluxio configuration settings fall into one of the six categories: Common (shared by Master and Worker), Master specific, Worker specific, User specific, Cluster specific (used for running Alluxio with cluster managers like Mesos and YARN), and Security specific (shared by Master, Worker, and User).

Common Configuration

The common configuration contains constants shared by different components.

Property NameDefaultDescription
alluxio.conf.dir ${alluxio.home}/conf The directory containing files used to configure Alluxio. Note: This property must be specified as a JVM property; it is not accepted in alluxio-site.properties.
alluxio.debug false Set to true to enable debug mode which has additional logging and info in the Web UI.
alluxio.extensions.dir ${alluxio.home}/extensions The directory containing Alluxio extensions.
alluxio.fuse.cached.paths.max 500 Maximum number of Alluxio paths to cache for FUSE conversion.
alluxio.fuse.debug.enabled false Run FUSE in debug mode, and have the fuse process log every FS request.
alluxio.fuse.fs.name alluxio-fuse The FUSE file system name.
alluxio.fuse.fs.root / The Alluxio path mounted to the FUSE file system root.
alluxio.fuse.maxwrite.bytes 128KB Maximum granularity of write operations, capped by the kernel to 128KB max (as of Linux 3.16.0).
alluxio.fuse.mount.default /mnt/alluxio Mount path in the local file system for the FUSE.
alluxio.home /opt/alluxio Alluxio installation directory.
alluxio.logger.type Console The type of logger.
alluxio.logs.dir ${alluxio.work.dir}/logs The path to store log files. Note: This property must be specified as a JVM property; it is not accepted in alluxio-site.properties.
alluxio.logserver.hostname The hostname of Alluxio logserver. Note: This property must be specified as a JVM property; it is not accepted in alluxio-site.properties.
alluxio.logserver.logs.dir ${alluxio.work.dir}/logs Default location for remote log files. Note: This property must be specified as a JVM property; it is not accepted in alluxio-site.properties.
alluxio.logserver.port 45600 Default port number to receive logs from alluxio servers. Note: This property must be specified as a JVM property; it is not accepted in alluxio-site.properties.
alluxio.logserver.threads.max 2048 The maximum number of threads used by logserver to service logging requests.
alluxio.logserver.threads.min 512 The minimum number of threads used by logserver to service logging requests.
alluxio.metrics.conf.file ${alluxio.conf.dir}/metrics.properties The file path of the metrics system configuration file. By default it is `metrics.properties` in the `conf` directory.
alluxio.network.host.resolution.timeout 5sec During startup of the Master and Worker processes Alluxio needs to ensure that they are listening on externally resolvable and reachable host names. To do this, Alluxio will automatically attempt to select an appropriate host name if one was not explicitly specified. This represents the maximum amount of time spent waiting to determine if a candidate host name is resolvable over the network.
alluxio.network.netty.heartbeat.timeout 30sec The amount of time the server will wait before closing a netty connection if there has not been any incoming traffic. The client will periodically heartbeat when there is no activity on a connection. This value should be the same on the clients and server.
alluxio.network.thrift.frame.size.bytes.max 16MB (Experimental) The largest allowable frame size used for Thrift RPC communication.
alluxio.proxy.s3.deletetype ALLUXIO_AND_UFS Delete type when deleting buckets and objects through S3 API. Valid options are `ALLUXIO_AND_UFS` (delete both in Alluxio and UFS), `ALLUXIO_ONLY` (delete only the buckets or objects in Alluxio namespace).
alluxio.proxy.s3.multipart.temporary.dir.suffix _s3_multipart_tmp Suffix for the directory which holds parts during a multipart upload.
alluxio.proxy.s3.writetype CACHE_THROUGH Write type when creating buckets and objects through S3 API. Valid options are `MUST_CACHE` (write will only go to Alluxio and must be stored in Alluxio), `CACHE_THROUGH` (try to cache, write to UnderFS synchronously), `THROUGH` (no cache, write to UnderFS synchronously).
alluxio.proxy.stream.cache.timeout 1hour The timeout for the input and output streams cache eviction in the proxy.
alluxio.proxy.web.bind.host 0.0.0.0 The hostname that the Alluxio proxy's web server runs on. See multi-homed networks.
alluxio.proxy.web.hostname The hostname Alluxio proxy's web UI binds to.
alluxio.proxy.web.port 39999 The port Alluxio proxy's web UI runs on.
alluxio.site.conf.dir ${alluxio.conf.dir}/ Comma-separated search path for alluxio-site.properties. Note: This property must be specified as a JVM property; it is not accepted in alluxio-site.properties.
alluxio.test.mode false Flag used only during tests to allow special behavior.
alluxio.underfs.address ${alluxio.work.dir}/underFSStorage Alluxio directory in the under file system.
alluxio.underfs.allow.set.owner.failure false Whether to allow setting owner in UFS to fail. When set to true, it is possible file or directory owners diverge between Alluxio and UFS.
alluxio.underfs.gcs.owner.id.to.username.mapping Optionally, specify a preset gcs owner id to Alluxio username static mapping in the format "id1=user1;id2=user2". The Google Cloud Storage IDs can be found at the console address https://console.cloud.google.com/storage/settings . Please use the "Owners" one.
alluxio.underfs.hdfs.configuration ${alluxio.conf.dir}/core-site.xml:${alluxio.conf.dir}/hdfs-site.xml Location of the hdfs configuration file.
alluxio.underfs.hdfs.impl org.apache.hadoop.hdfs.DistributedFileSystem The implementation class of the HDFS as the under storage system.
alluxio.underfs.hdfs.prefixes hdfs:// Optionally, specify which prefixes should run through the HDFS implementation of UnderFileSystem. The delimiter is any whitespace and/or ','.
alluxio.underfs.hdfs.remote false Boolean indicating whether or not the under storage worker nodes are remote with respect to Alluxio worker nodes. If set to true, Alluxio will not attempt to discover locality information from the under storage because locality is impossible. This will improve performance. The default value is false.
alluxio.underfs.listing.length 1000 The maximum number of directory entries to list in a single query to under file system. If the total number of entries is greater than the specified length, multiple queries will be issued.
alluxio.underfs.object.store.mount.shared.publicly false Whether or not to share object storage under storage system mounted point with all Alluxio users. Note that this configuration has no effect on HDFS nor local UFS.
alluxio.underfs.object.store.service.threads 20 The number of threads in executor pool for parallel object store UFS operations.
alluxio.underfs.oss.connection.max 1024 The maximum number of OSS connections.
alluxio.underfs.oss.connection.timeout 50sec The timeout when connecting to OSS.
alluxio.underfs.oss.connection.ttl -1 The TTL of OSS connections in ms.
alluxio.underfs.oss.socket.timeout 50sec The timeout of OSS socket.
alluxio.underfs.s3.admin.threads.max 20 The maximum number of threads to use for metadata operations when communicating with S3. These operations may be fairly concurrent and frequent but should not take much time to process.
alluxio.underfs.s3.disable.dns.buckets false Optionally, specify to make all S3 requests path style.
alluxio.underfs.s3.endpoint Optionally, to reduce data latency or visit resources which are separated in different AWS regions, specify a regional endpoint to make aws requests. An endpoint is a URL that is the entry point for a web service. For example, s3.cn-north-1.amazonaws.com.cn is an entry point for the Amazon S3 service in beijing region.
alluxio.underfs.s3.owner.id.to.username.mapping Optionally, specify a preset s3 canonical id to Alluxio username static mapping, in the format "id1=user1;id2=user2". The AWS S3 canonical ID can be found at the console address https://console.aws.amazon.com/iam/home?#security_credential . Please expand the "Account Identifiers" tab and refer to "Canonical User ID".
alluxio.underfs.s3.proxy.host Optionally, specify a proxy host for communicating with S3.
alluxio.underfs.s3.proxy.port Optionally, specify a proxy port for communicating with S3.
alluxio.underfs.s3.threads.max 40 The maximum number of threads to use for communicating with S3 and the maximum number of concurrent connections to S3. Includes both threads for data upload and metadata operations. This number should be at least as large as the max admin threads plus max upload threads.
alluxio.underfs.s3.upload.threads.max 20 The maximum number of threads to use for uploading data to S3 for multipart uploads. These operations can be fairly expensive, so multiple threads are encouraged. However, this also splits the bandwidth between threads, meaning the overall latency for completing an upload will be higher for more threads.
alluxio.underfs.s3a.consistency.timeout 1min The duration to wait for metadata consistency from the under storage. This is only used by internal Alluxio operations which should be successful, but may appear unsuccessful due to eventual consistency.
alluxio.underfs.s3a.directory.suffix / Directories are represented in S3 as zero-byte objects named with the specified suffix.
alluxio.underfs.s3a.inherit_acl true Optionally disable this to disable inheriting bucket ACLs on objects.
alluxio.underfs.s3a.list.objects.v1 false Whether to use version 1 of GET Bucket (List Objects) API.
alluxio.underfs.s3a.request.timeout 1min The timeout for a single request to S3. Infinity if set to 0. Setting this property to a non-zero value can improve performance by avoiding the long tail of requests to S3. For very slow connections to S3, consider increasing this value or setting it to 0.
alluxio.underfs.s3a.secure.http.enabled false Whether or not to use HTTPS protocol when communicating with S3.
alluxio.underfs.s3a.server.side.encryption.enabled false Whether or not to encrypt data stored in S3.
alluxio.underfs.s3a.signer.algorithm The signature algorithm which should be used to sign requests to the s3 service. This is optional, and if not set, the client will automatically determine it. For interacting with an S3 endpoint which only supports v2 signatures, set this to "S3SignerType".
alluxio.underfs.s3a.socket.timeout 50sec Length of the socket timeout when communicating with S3.
alluxio.version 1.7.0-SNAPSHOT Version of Alluxio. User should never modify this property.
alluxio.web.resources ${alluxio.home}/core/server/common/src/main/webapp Path to the web application resources.
alluxio.web.threads 1 How many threads to use for the web server.
alluxio.work.dir ${alluxio.home} The directory to use for Alluxio's working directory. By default, the journal, logs, and under file system data (if using local filesystem) are written here.
alluxio.zookeeper.address Address of ZooKeeper.
alluxio.zookeeper.connection.timeout 15s Connection timeout to use when connecting to Zookeeper
alluxio.zookeeper.election.path /election Election directory in ZooKeeper.
alluxio.zookeeper.enabled false If true, setup master fault tolerant mode using ZooKeeper.
alluxio.zookeeper.leader.inquiry.retry 10 The number of retries to inquire leader from ZooKeeper.
alluxio.zookeeper.leader.path /leader Leader directory in ZooKeeper.
alluxio.zookeeper.session.timeout 60s Session timeout to use when connecting to Zookeeper
aws.accessKeyId The access key of S3 bucket.
aws.secretKey The secret key of S3 bucket.
fs.gcs.accessKeyId The access key of GCS bucket.
fs.gcs.secretAccessKey The secret key of GCS bucket.
fs.oss.accessKeyId The access key of OSS bucket.
fs.oss.accessKeySecret The secret key of OSS bucket.
fs.oss.endpoint The endpoint key of OSS bucket.
fs.swift.apikey (deprecated) The API key used for user:tenant authentication.
fs.swift.auth.method Choice of authentication method: [tempauth (default), swiftauth, keystone, keystonev3].
fs.swift.auth.url Authentication URL for REST server, e.g., http://server:8090/auth/v1.0.
fs.swift.password The password used for user:tenant authentication.
fs.swift.region Service region when using Keystone authentication.
fs.swift.simulation Whether to simulate a single node Swift backend for testing purposes: true or false (default).
fs.swift.tenant Swift user for authentication.
fs.swift.use.public.url Whether the REST server is in a public domain: true (default) or false.
fs.swift.user Swift tenant for authentication.

Master Configuration

The master configuration specifies information regarding the master node, such as the address and the port number.

Property NameDefaultDescription
alluxio.master.audit.logging.enabled false Set to true to enable file system master audit. Note: This property must be specified as a JVM property; it is not accepted in alluxio-site.properties.
alluxio.master.audit.logging.queue.capacity 10000 Capacity of the queue used by audit logging.
alluxio.master.bind.host 0.0.0.0 The hostname that Alluxio master binds to. See multi-homed networks.
alluxio.master.connection.timeout 0ms Timeout of connections between master and client.
alluxio.master.file.async.persist.handler alluxio.master.file.async.DefaultAsyncPersistHandler The handler for processing the async persistence requests.
alluxio.master.format.file_prefix _format_ The file prefix of the file generated in the journal directory when the journal is formatted. The master will search for a file with this prefix when determining if the journal is formatted.
alluxio.master.heartbeat.interval 1sec The interval between Alluxio masters' heartbeats.
alluxio.master.hostname The hostname of Alluxio master.
alluxio.master.journal.checkpoint.period.entries 2000000 The number of journal entries to write before creating a new journal checkpoint.
alluxio.master.journal.flush.batch.time 5ms Time to wait for batching journal writes.
alluxio.master.journal.flush.timeout 5min The amount of time to keep retrying journal writes before giving up and shutting down the master.
alluxio.master.journal.folder ${alluxio.work.dir}/journal The path to store master journal logs.
alluxio.master.journal.formatter.class alluxio.master.journalv0.ProtoBufJournalFormatter The class to serialize the journal in a specified format.
alluxio.master.journal.gc.period 2min Frequency with which to scan for and delete stale journal checkpoints.
alluxio.master.journal.gc.threshold 5min Minimum age for garbage collecting checkpoints.
alluxio.master.journal.log.size.bytes.max 10MB If a log file is bigger than this value, it will rotate to next file.
alluxio.master.journal.tailer.shutdown.quiet.wait.time 5sec Before the standby master shuts down its tailer thread, there should be no update to the leader master's journal in this specified time period.
alluxio.master.journal.tailer.sleep.time 1sec Time for the standby master to sleep for when it cannot find anything new in leader master's journal.
alluxio.master.journal.temporary.file.gc.threshold 30min Minimum age for garbage collecting temporary checkpoint files.
alluxio.master.journal.type UFS The type of journal to use. Valid options are UFS (store journal in UFS) and NOOP (do not use a journal).
alluxio.master.journal.ufs.option The configuration to use for the journal operations.
alluxio.master.keytab.file Kerberos keytab file for Alluxio master.
alluxio.master.lineage.checkpoint.class alluxio.master.lineage.checkpoint.CheckpointLatestPlanner The class name of the checkpoint strategy for lineage output files. The default strategy is to checkpoint the latest completed lineage, i.e. the lineage whose output files are completed.
alluxio.master.lineage.checkpoint.interval 5min The interval between Alluxio's checkpoint scheduling.
alluxio.master.lineage.recompute.interval 5min The interval between Alluxio's recompute execution. The executor scans the all the lost files tracked by lineage, and re-executes the corresponding jobs.
alluxio.master.lineage.recompute.log.path ${alluxio.logs.dir}/recompute.log The path to the log that the recompute executor redirects the job's stdout into.
alluxio.master.mount.table.root.alluxio / Alluxio root mount point.
alluxio.master.mount.table.root.option Configuration for the UFS of Alluxio root mount point.
alluxio.master.mount.table.root.readonly false Whether Alluxio root mount point is readonly.
alluxio.master.mount.table.root.shared true Whether Alluxio root mount point is shared.
alluxio.master.mount.table.root.ufs ${alluxio.underfs.address} The UFS mounted to Alluxio root mount point.
alluxio.master.port 19998 The port that Alluxio master node runs on.
alluxio.master.principal Kerberos principal for Alluxio master.
alluxio.master.retry ${alluxio.user.rpc.retry.max.num.retry} The number of retries that the client connects to master. (NOTE: this property is deprecated, use `alluxio.user.rpc.retry.max.num.retry` instead).
alluxio.master.startup.consistency.check.enabled true Whether the system should be checked for consistency with the underlying storage on startup. During the time the check is running, Alluxio will be in read only mode. Enabled by default.
alluxio.master.tieredstore.global.level0.alias MEM The name of the highest storage tier in the entire system.
alluxio.master.tieredstore.global.level1.alias SSD The name of the second highest storage tier in the entire system.
alluxio.master.tieredstore.global.level2.alias HDD The name of the third highest storage tier in the entire system.
alluxio.master.tieredstore.global.levels 3 The total number of storage tiers in the system.
alluxio.master.ttl.checker.interval 1hour Time interval to periodically delete the files with expired ttl value.
alluxio.master.ufs.path.cache.capacity 100000 The capacity of the UFS path cache. This cache is used to approximate the `Once` metadata load behavior (see `alluxio.user.file.metadata.load.type`). Larger caches will consume more memory, but will better approximate the `Once` behavior.
alluxio.master.ufs.path.cache.threads 64 The maximum size of the thread pool for asynchronously processing paths for the UFS path cache. Greater number of threads will decrease the amount of staleness in the async cache, but may impact performance. If this is set to 0, the cache will be disabled, and `alluxio.user.file.metadata.load.type=Once` will behave like `Always`.
alluxio.master.web.bind.host 0.0.0.0 The hostname Alluxio master web UI binds to. See multi-homed networks.
alluxio.master.web.hostname The hostname of Alluxio Master web UI.
alluxio.master.web.port 19999 The port Alluxio web UI runs on.
alluxio.master.whitelist / A comma-separated list of prefixes of the paths which are cacheable, separated by semi-colons. Alluxio will try to cache the cacheable file when it is read for the first time.
alluxio.master.worker.threads.max 2048 The maximum number of incoming RPC requests to master that can be handled. This value is used to configure maximum number of threads in Thrift thread pool with master.
alluxio.master.worker.threads.min 512 The minimum number of threads used to handle incoming RPC requests to master. This value is used to configure minimum number of threads in Thrift thread pool with master.
alluxio.master.worker.timeout 5min Timeout between master and worker indicating a lost worker.

Worker Configuration

The worker configuration specifies information regarding the worker nodes, such as the address and the port number.

Property NameDefaultDescription
alluxio.worker.allocator.class alluxio.worker.block.allocator.MaxFreeAllocator The strategy that a worker uses to allocate space among storage directories in certain storage layer. Valid options include: `alluxio.worker.block.allocator.MaxFreeAllocator`, `alluxio.worker.block.allocator.GreedyAllocator`, `alluxio.worker.block.allocator.RoundRobinAllocator`.
alluxio.worker.bind.host 0.0.0.0 The hostname Alluxio's worker node binds to. See multi-homed networks.
alluxio.worker.block.heartbeat.interval 1sec The interval between block workers' heartbeats.
alluxio.worker.block.heartbeat.timeout 5min The timeout value of block workers' heartbeats.
alluxio.worker.block.master.client.pool.size 11 The block master client pool size on the Alluxio workers.
alluxio.worker.block.threads.max 2048 The maximum number of incoming RPC requests to block worker that can be handled. This value is used to configure maximum number of threads in Thrift thread pool with block worker. This value should be greater than the sum of `alluxio.user.block.worker.client.threads` across concurrent Alluxio clients. Otherwise, the worker connection pool can be drained, preventing new connections from being established.
alluxio.worker.block.threads.min 256 The minimum number of threads used to handle incoming RPC requests to block worker. This value is used to configure minimum number of threads in Thrift thread pool with block worker.
alluxio.worker.data.bind.host 0.0.0.0 The hostname that the Alluxio worker's data server runs on. See multi-homed networks.
alluxio.worker.data.folder /alluxioworker/ A relative path within each storage directory used as the data folder for Alluxio worker to put data for tiered store.
alluxio.worker.data.folder.tmp .tmp_blocks A relative path in alluxio.worker.data.folder used to store the temporary data for uncommitted files.
alluxio.worker.data.hostname The hostname of Alluxio worker data service.
alluxio.worker.data.port 29999 The port Alluxio's worker's data server runs on.
alluxio.worker.data.server.class alluxio.worker.netty.NettyDataServer Selects the networking stack to run the worker with. Valid options are: `alluxio.worker.netty.NettyDataServer`.
alluxio.worker.data.server.domain.socket.address The path to the domain socket. Short-circuit reads make use of a UNIX domain socket when this is set (non-empty). This is a special path in the file system that allows the client and the AlluxioWorker to communicate. You will need to set a path to this socket. The AlluxioWorker needs to be able to create this path.
alluxio.worker.data.tmp.subdir.max 1024 The maximum number of sub-directories allowed to be created in alluxio.worker.data.tmp.folder.
alluxio.worker.evictor.class alluxio.worker.block.evictor.LRUEvictor The strategy that a worker uses to evict block files when a storage layer runs out of space. Valid options include `alluxio.worker.block.evictor.LRFUEvictor`, `alluxio.worker.block.evictor.GreedyEvictor`, `alluxio.worker.block.evictor.LRUEvictor`.
alluxio.worker.evictor.lrfu.attenuation.factor 2.0 A attenuation factor in [2, INF) to control the behavior of LRFU.
alluxio.worker.evictor.lrfu.step.factor 0.25 A factor in [0, 1] to control the behavior of LRFU: smaller value makes LRFU more similar to LFU; and larger value makes LRFU closer to LRU.
alluxio.worker.file.buffer.size 1MB The buffer size for worker to write data into the tiered storage.
alluxio.worker.file.persist.pool.size 64 The size of the thread pool per worker, in which the thread persists an ASYNC_THROUGH file to under storage.
alluxio.worker.file.persist.rate.limit 2GB The rate limit of asynchronous persistence per second.
alluxio.worker.file.persist.rate.limit.enabled false Whether to enable rate limiting when performing asynchronous persistence.
alluxio.worker.filesystem.heartbeat.interval 1sec The heartbeat interval between the worker and file system master.
alluxio.worker.hostname The hostname of Alluxio worker.
alluxio.worker.keytab.file Kerberos keytab file for Alluxio worker.
alluxio.worker.memory.size 1GB Memory capacity of each worker node.
alluxio.worker.network.netty.backlog Netty socket option for SO_BACKLOG: the number of connections queued.
alluxio.worker.network.netty.block.reader.threads.max 2048 The maximum number of threads used to read blocks in the netty data server.
alluxio.worker.network.netty.block.writer.threads.max 1024 The maximum number of threads used to write blocks in the netty data server.
alluxio.worker.network.netty.boss.threads 1 How many threads to use for accepting new requests.
alluxio.worker.network.netty.buffer.receive Netty socket option for SO_RCVBUF: the proposed buffer size that will be used for receives.
alluxio.worker.network.netty.buffer.send Netty socket option for SO_SNDBUF: the proposed buffer size that will be used for sends.
alluxio.worker.network.netty.channel Netty channel type: NIO or EPOLL.
alluxio.worker.network.netty.file.transfer MAPPED When returning files to the user, select how the data is transferred; valid options are `MAPPED` (uses java MappedByteBuffer) and `TRANSFER` (uses Java FileChannel.transferTo).
alluxio.worker.network.netty.file.writer.threads.max 1024 The maximum number of threads used to write files to UFS in the netty data server.
alluxio.worker.network.netty.reader.buffer.size.packets 16 The maximum number of parallel data packets when a client reads from a worker.
alluxio.worker.network.netty.rpc.threads.max 2048 The maximum number of threads used to handle worker side RPCs in the netty data server.
alluxio.worker.network.netty.shutdown.quiet.period 2sec The quiet period. When the netty server is shutting down, it will ensure that no RPCs occur during the quiet period. If an RPC occurs, then the quiet period will restart before shutting down the netty server.
alluxio.worker.network.netty.shutdown.timeout 15sec Maximum amount of time to wait until the netty server is shutdown (regardless of the quiet period).
alluxio.worker.network.netty.watermark.high 32KB Determines how many bytes can be in the write queue before switching to non-writable.
alluxio.worker.network.netty.watermark.low 8KB Once the high watermark limit is reached, the queue must be flushed down to the low watermark before switching back to writable.
alluxio.worker.network.netty.worker.threads 0 How many threads to use for processing requests. Zero defaults to #cpuCores * 2.
alluxio.worker.network.netty.writer.buffer.size.packets 16 The maximum number of parallel data packets when a client writes to a worker.
alluxio.worker.port 29998 The port Alluxio's worker node runs on.
alluxio.worker.principal Kerberos principal for Alluxio worker.
alluxio.worker.session.timeout 1min Timeout between worker and client connection indicating a lost session connection.
alluxio.worker.tieredstore.block.lock.readers 1000 The max number of concurrent readers for a block lock.
alluxio.worker.tieredstore.block.locks 1000 Total number of block locks for an Alluxio block worker. Larger value leads to finer locking granularity, but uses more space.
alluxio.worker.tieredstore.level0.alias MEM The alias of the top storage tier on this worker. It must match one of the global storage tiers from the master configuration. We disable placing an alias lower in the global hierarchy before an alias with a higher postion on the worker hierarchy. So by default, SSD cannot come before MEM on any worker.
alluxio.worker.tieredstore.level0.dirs.path /mnt/ramdisk The path of storage directory for the top storage tier. Note for MacOS the value should be `/Volumes/`.
alluxio.worker.tieredstore.level0.dirs.quota ${alluxio.worker.memory.size} The capacity of the top storage tier.
alluxio.worker.tieredstore.level0.reserved.ratio Fraction of space reserved in the top storage tier. This has been deprecated, please use high and low watermark instead.
alluxio.worker.tieredstore.level0.watermark.high.ratio 0.95 The high watermark of the space in the top storage tier (a value between 0 and 1).
alluxio.worker.tieredstore.level0.watermark.low.ratio 0.7 The low watermark of the space in the top storage tier (a value between 0 and 1).
alluxio.worker.tieredstore.level1.alias The alias of the second storage tier on this worker.
alluxio.worker.tieredstore.level1.dirs.path The path of storage directory for the second storage tier.
alluxio.worker.tieredstore.level1.dirs.quota The capacity of the second storage tier.
alluxio.worker.tieredstore.level1.reserved.ratio Fraction of space reserved in the second storage tier. This has been deprecated, please use high and low watermark instead.
alluxio.worker.tieredstore.level1.watermark.high.ratio 0.95 The high watermark of the space in the second storage tier (a value between 0 and 1).
alluxio.worker.tieredstore.level1.watermark.low.ratio 0.7 The low watermark of the space in the second storage tier (a value between 0 and 1).
alluxio.worker.tieredstore.level2.alias The alias of the third storage tier on this worker.
alluxio.worker.tieredstore.level2.dirs.path The path of storage directory for the third storage tier.
alluxio.worker.tieredstore.level2.dirs.quota The capacity of the third storage tier.
alluxio.worker.tieredstore.level2.reserved.ratio Fraction of space reserved in the third storage tier. This has been deprecated, please use high and low watermark instead.
alluxio.worker.tieredstore.level2.watermark.high.ratio 0.95 The high watermark of the space in the third storage tier (a value between 0 and 1).
alluxio.worker.tieredstore.level2.watermark.low.ratio 0.7 The low watermark of the space in the third storage tier (a value between 0 and 1).
alluxio.worker.tieredstore.levels 1 The number of storage tiers on the worker.
alluxio.worker.tieredstore.reserver.enabled false Whether to enable tiered store reserver service or not.
alluxio.worker.tieredstore.reserver.interval 1sec The time period of space reserver service, which keeps certain portion of available space on each layer.
alluxio.worker.tieredstore.retry 3 The number of retries that the worker uses to process blocks.
alluxio.worker.ufs.block.open.timeout 5min Timeout to open a block from UFS.
alluxio.worker.web.bind.host 0.0.0.0 The hostname Alluxio worker's web server binds to. See multi-homed networks.
alluxio.worker.web.hostname The hostname Alluxio worker's web UI binds to.
alluxio.worker.web.port 30000 The port Alluxio worker's web UI runs on.

User Configuration

The user configuration specifies values regarding file system access.

Property NameDefaultDescription
alluxio.user.block.master.client.threads 10 The number of threads used by a block master client pool to talk to the block master.
alluxio.user.block.remote.read.buffer.size.bytes 8MB The size of the file buffer to read data from remote Alluxio worker.
alluxio.user.block.remote.reader.class alluxio.client.netty.NettyRemoteBlockReader Selects networking stack to run the client with. Currently only `alluxio.client.netty.NettyRemoteBlockReader` (read remote data using netty) is valid.
alluxio.user.block.remote.writer.class alluxio.client.netty.NettyRemoteBlockWriter Selects networking stack to run the client with for block writes.
alluxio.user.block.size.bytes.default 512MB Default block size for Alluxio files.
alluxio.user.block.worker.client.pool.gc.threshold 300sec A block worker client is closed if it has been idle for more than this threshold.
alluxio.user.block.worker.client.pool.size.max 128 The maximum number of block worker clients cached in the block worker client pool.
alluxio.user.block.worker.client.threads 10 The number of threads used by a block worker client pool for heartbeating to a worker. Increase this value if worker failures affect client connections to healthy workers.
alluxio.user.date.format.pattern MM-dd-yyyy HH:mm:ss:SSS Display formatted date in cli command and web UI by given date format pattern.
alluxio.user.failed.space.request.limits 3 The number of times to request space from the file system before aborting.
alluxio.user.file.buffer.bytes 8MB The size of the file buffer to use for file system reads/writes.
alluxio.user.file.cache.partially.read.block true When read type is CACHE_PROMOTE or CACHE and this property is set to true, the entire block will be cached by Alluxio space even if the client only reads a part of this block.
alluxio.user.file.copyfromlocal.write.location.policy.class alluxio.client.file.policy.RoundRobinPolicy The default location policy for choosing workers for writing a file's blocks using copyFromLocal command.
alluxio.user.file.delete.unchecked false Whether to check if the UFS contents are in sync with Alluxio before attempting to delete persisted directories recursively.
alluxio.user.file.master.client.threads 10 The number of threads used by a file master client to talk to the file master.
alluxio.user.file.metadata.load.type Once The behavior of loading metadata from UFS. When information about a path is requested and the path does not exist in Alluxio, metadata can be loaded from the UFS. Valid options are `Always`, `Never`, and `Once`. `Always` will always access UFS to see if the path exists in the UFS. `Never` will never consult the UFS. `Once` will access the UFS the "first" time (according to a cache), but not after that.
alluxio.user.file.passive.cache.enabled true Whether to cache files to local Alluxio workers when the files are read from remote workers (not UFS).
alluxio.user.file.readtype.default CACHE_PROMOTE Default read type when creating Alluxio files. Valid options are `CACHE_PROMOTE` (move data to highest tier if already in Alluxio storage, write data into highest tier of local Alluxio if data needs to be read from under storage), `CACHE` (write data into highest tier of local Alluxio if data needs to be read from under storage), `NO_CACHE` (no data interaction with Alluxio, if the read is from Alluxio data migration or eviction will not occur).
alluxio.user.file.seek.buffer.size.bytes 1MB The file seek buffer size. This is only used when alluxio.user.file.cache.partially.read.block is enabled.
alluxio.user.file.waitcompleted.poll 1sec The time interval to poll a file for its completion status when using waitCompleted.
alluxio.user.file.write.avoid.eviction.policy.reserved.size.bytes 0MB The portion of space reserved in worker when user use the LocalFirstAvoidEvictionPolicy class as file write location policy.
alluxio.user.file.write.location.policy.class alluxio.client.file.policy.LocalFirstPolicy The default location policy for choosing workers for writing a file's blocks.
alluxio.user.file.write.tier.default 0 The default tier for choosing a where to write a block. Valid option is any integer. Non-negative values identify tiers starting from top going down (0 identifies the first tier, 1 identifies the second tier, and so on). If the provided value is greater than the number of tiers, it identifies the last tier. Negative values identify tiers starting from the bottom going up (-1 identifies the last tier, -2 identifies the second to last tier, and so on). If the absolute value of the provided value is greater than the number of tiers, it identifies the first tier.
alluxio.user.file.writetype.default MUST_CACHE Default write type when creating Alluxio files. Valid options are `MUST_CACHE` (write will only go to Alluxio and must be stored in Alluxio), `CACHE_THROUGH` (try to cache, write to UnderFS synchronously), `THROUGH` (no cache, write to UnderFS synchronously).
alluxio.user.heartbeat.interval 1sec The interval between Alluxio workers' heartbeats.
alluxio.user.hostname The hostname to use for the client.
alluxio.user.lineage.enabled false Flag to enable lineage feature.
alluxio.user.lineage.master.client.threads 10 The number of threads used by a lineage master client to talk to the lineage master.
alluxio.user.local.reader.packet.size.bytes 8MB When a client reads from a local worker, the maximum data packet size.
alluxio.user.local.writer.packet.size.bytes 64KB When a client writes to a local worker, the maximum data packet size.
alluxio.user.network.netty.channel Type of netty channels.
alluxio.user.network.netty.channel.pool.disabled false Disable netty channel pool. This should be turned on if the client version is >= 1.3.0 but server version is <= 1.2.x.
alluxio.user.network.netty.channel.pool.gc.threshold 300sec A netty channel is closed if it has been idle for more than this threshold.
alluxio.user.network.netty.channel.pool.size.max 1024 The maximum number of netty channels cached in the netty channel pool.
alluxio.user.network.netty.reader.buffer.size.packets 16 When a client reads from a remote worker, the maximum number of packets to buffer by the client.
alluxio.user.network.netty.reader.packet.size.bytes 64KB When a client reads from a remote worker, the maximum packet size.
alluxio.user.network.netty.timeout 30sec The maximum time for a netty client (for block reads and block writes) to wait for a response from the data server.
alluxio.user.network.netty.worker.threads 0 How many threads to use for remote block worker client to read from remote block workers.
alluxio.user.network.netty.writer.buffer.size.packets 16 When a client writes to a remote worker, the maximum number of packets to buffer by the client.
alluxio.user.network.netty.writer.close.timeout 5min The timeout to close a netty writer client.
alluxio.user.network.netty.writer.packet.size.bytes 64KB When a client writes to a remote worker, the maximum packet size.
alluxio.user.rpc.retry.base.sleep 50ms Alluxio client RPCs automatically retry for transient errors with an exponential backoff. This property determines the base time in the exponential backoff.
alluxio.user.rpc.retry.max.num.retry 20 Alluxio client RPCs automatically retry for transient errors with an exponential backoff. This property determines the maximum number of retries.
alluxio.user.rpc.retry.max.sleep 30sec Alluxio client RPCs automatically retry for transient errors with an exponential backoff. This property determines the maximum wait time in the backoff.
alluxio.user.short.circuit.enabled true The short circuit read/write which allows the clients to read/write data without going through Alluxio workers if the data is local is enabled if set to true.
alluxio.user.ufs.block.read.concurrency.max 2147483647 The maximum concurrent readers for one UFS block on one Block Worker.
alluxio.user.ufs.block.read.location.policy alluxio.client.file.policy.LocalFirstPolicy The policy block workers follow for reading UFS blocks.
alluxio.user.ufs.block.read.location.policy.deterministic.hash.shards 1 When alluxio.user.ufs.block.read.location.policy is set to alluxio.client.block.policy.DeterministicHashPolicy, this specifies the number of hash shards.
alluxio.user.ufs.delegation.read.buffer.size.bytes 8MB Size of the read buffer when reading from the ufs through the Alluxio worker. Each read request will fetch at least this many bytes, unless the read reaches the end of the file.
alluxio.user.ufs.delegation.write.buffer.size.bytes 2MB Size of the write buffer when writing to the ufs through the Alluxio worker. Each write request will write at least this many bytes, unless the write is at the end of the file.
alluxio.user.ufs.file.reader.class alluxio.client.netty.NettyUnderFileSystemFileReader Selects networking stack to run the client with for reading from under file system through a worker's data server. Currently only `alluxio.client.netty.NettyUnderFileSystemFileReader` (remote read using netty) is valid.
alluxio.user.ufs.file.writer.class alluxio.client.netty.NettyUnderFileSystemFileWriter Selects networking stack to run the client with for writing to under file system through a worker's data server. Currently only `alluxio.client.netty.NettyUnderFileSystemFileWriter` (remote write using netty) is valid.

Resource Manager Configuration

When running Alluxio with resource managers like Mesos and YARN, Alluxio has additional configuration options.

Property NameDefaultDescription
alluxio.integration.master.resource.cpu 1 The number of CPUs to run an Alluxio master for YARN framework.
alluxio.integration.master.resource.mem 1024MB The amount of memory to run an Alluxio master for YARN framework.
alluxio.integration.mesos.alluxio.jar.url http://downloads.alluxio.org/downloads/files/${alluxio.version}/alluxio-${alluxio.version}-bin.tar.gz Url to download an Alluxio distribution from during Mesos deployment.
alluxio.integration.mesos.jdk.path jdk1.7.0_79 If installing java from a remote URL during mesos deployment, this must be set to the directory name of the untarred jdk.
alluxio.integration.mesos.jdk.url https://alluxio-mesos.s3.amazonaws.com/jdk-7u79-linux-x64.tar.gz A url from which to install the jdk during Mesos deployment. When using this property, alluxio.integration.mesos.jdk.path must also be set correctly.
alluxio.integration.mesos.master.name AlluxioMaster The name of the master process to use within Mesos.
alluxio.integration.mesos.master.node.count 1 The number of Alluxio master process to run within Mesos.
alluxio.integration.mesos.principal alluxio The Mesos principal for the Alluxio Mesos Framework.
alluxio.integration.mesos.role * Mesos role for the Alluxio Mesos Framework.
alluxio.integration.mesos.secret Secret token for authenticating with Mesos.
alluxio.integration.mesos.user The Mesos user for the Alluxio Mesos Framework. Defaults to the current user.
alluxio.integration.mesos.worker.name AlluxioWorker The name of the worker process to use within Mesos.
alluxio.integration.worker.resource.cpu 1 The number of CPUs to run an Alluxio worker for YARN framework.
alluxio.integration.worker.resource.mem 1024MB The amount of memory to run an Alluxio worker for YARN framework.
alluxio.integration.yarn.workers.per.host.max 1 The number of workers to run on an Alluxio host for YARN framework.

Security Configuration

The security configuration specifies information regarding the security features, such as authentication and file permission. Settings for authentication take effect for master, worker, and user. Settings for file permission only take effect for master. See Security for more information about security features.

Property NameDefaultDescription
alluxio.security.authentication.custom.provider.class The class to provide customized authentication implementation, when alluxio.security.authentication.type is set to CUSTOM. It must implement the interface 'alluxio.security.authentication.AuthenticationProvider'.
alluxio.security.authentication.socket.timeout 10min The maximum amount of time for a user to create a Thrift socket which will connect to the master.
alluxio.security.authentication.type SIMPLE The authentication mode. Currently three modes are supported: NOSASL, SIMPLE, CUSTOM. The default value SIMPLE indicates that a simple authentication is enabled. Server trusts whoever the client claims to be.
alluxio.security.authorization.permission.enabled true Whether to enable access control based on file permission.
alluxio.security.authorization.permission.supergroup supergroup The super group of Alluxio file system. All users in this group have super permission.
alluxio.security.authorization.permission.umask 022 The umask of creating file and directory. The initial creation permission is 777, and the difference between directory and file is 111. So for default umask value 022, the created directory has permission 755 and file has permission 644.
alluxio.security.group.mapping.cache.timeout 1min Time for cached group mapping to expire.
alluxio.security.group.mapping.class alluxio.security.group.provider.ShellBasedUnixGroupsMapping The class to provide user-to-groups mapping service. Master could get the various group memberships of a given user. It must implement the interface 'alluxio.security.group.GroupMappingService'. The default implementation execute the 'groups' shell command to fetch the group memberships of a given user.
alluxio.security.login.username When alluxio.security.authentication.type is set to SIMPLE or CUSTOM, user application uses this property to indicate the user requesting Alluxio service. If it is not set explicitly, the OS login user will be used.
Need help? Ask a Question