Accumulo has the following configuration files which can be found in the conf/
directory of the Accumulo release tarball.
The {% ghc assemble/conf/accumulo.properties %} file configures Accumulo server processes using [server properties]({% durl configuration/server-properties %}). This file can be found in the conf/
directory. It is needed on every host that runs Accumulo processes. Therefore, any configuration should be replicated to all hosts of the Accumulo cluster. If a property is not configured here, it might have been [configured another way]({% durl configuration/overview %}). See the [quick start] for help with configuring this file.
The accumulo-client.properties
file configures Accumulo client processes using [client properties]({% durl configuration/client-properties %}). If accumulo shell
is run without arguments, the Accumulo connection information in this file will be used. This file can be used to create an AccumuloClient in Java using the following code:
AccumuloClient client = Accumulo.newClient().from("/path/to/accumulo-client.properties").build();
See the [quick start] for help with configuring this file.
The {% ghc assemble/conf/accumulo-env.sh %} file configures the Java classpath and JVM options needed to run Accumulo processes. See the [quick start] for help with configuring this file.
The {% ghc assemble/conf/log4j-service.properties %} file configures logging for most Accumulo services (i.e [Manager], [Tablet Server], [Garbage Collector]) except for the Monitor.
The {% ghc assemble/conf/log4j-monitor.properties %} file configures logging for the [Monitor].
The {% ghc assemble/conf/log4j.properties %} file configures logging for Accumulo commands (i.e accumulo init
, accumulo shell
, etc).
The accumulo-cluster
script uses the cluster.yaml
file to determine where Accumulo processes should be run. This file is not in the conf/
directory of the Accumulo release tarball by default. It can be created by running the command accumulo-cluster create-config
. The cluster.yaml
file contains the following sections:
Contains a list of hosts where [Garbage Collector] processes should run. While only one host is needed, others can be specified to run standby Garbage Collectors that can take over if the lead Garbage Collector fails.
Contains a list of hosts where [Manager] processes should run. While only one host is needed, others can be specified to run on standby Managers that can take over if the lead Manager fails.
Contains a list of hosts where [Monitor] processes should run. While only one host is needed, others can be specified to run standby Monitors that can take over if the lead Monitor fails.
Contains list of hosts where [Tablet Server] processes should run. While only one host is needed, it is recommended that multiple tablet servers are run for improved fault tolerance and performance.
Contains a list of hosts where [ScanServer] processes should run. While only one host is needed, it is recommended that multiple ScanServers are run for improved performance.
Contains a list of hosts where [CompactionCoordinator] processes should run. While only one host is needed, others can be specified to run standby CompactionCoordinators that can take over if the lead CompactionCoordinator fails.
Contains a list of hosts where [Compactor] processes should run. While only one host is needed, it is recommended that multiple Compactors are run for improved external compaction performance.
[Garbage Collector]: {% durl getting-started/design#garbage-collector %} [Manager]: {% durl getting-started/design#manager %} [Tablet Server]: {% durl getting-started/design#tablet-server %} [Monitor]: {% durl getting-started/design#monitor %} [CompactionCoordinator]: {% durl getting-started/design#compaction-coordinator-experimental %} [Compactor]: {% durl getting-started/design#compactor-experimental %} [ScanServer]: {% durl getting-started/design#scan-server-experimental %} [quick start]: {% durl getting-started/quickstart#configuring-accumulo %}