A collection of Dockerfiles extending uhopper/hadoop, for creating an Accumulo cluster. The following Accumulo components are provided:
All images inherit from a common base that provides hadoop, zookeeper and accumulo installations in /opt/
and allows configuration through environment variables.
The Accumulo configuration is controlled via the following environment variable groups:
CORE_CONF
: affects /etc/hadoop/core-site.xml
HDFS_CONF
: affects /etc/hadoop/hdfs-site.xml
YARN_CONF
: affects /etc/hadoop/yarn-site.xml
HTTPFS_CONF
: affects /etc/hadoop/httpfs-site.xml
KMS_CONF
: affects /etc/hadoop/KMS-site.xml
ACCUMULO_CONF
: affects /opt/accumulo/conf/accumulo-site.xml
Accumulo properties are specified by setting an environment variable with the
appropriate prefix in the form <PREFIX>_<PROPERTY>
.
Due to restrictions imposed by docker
and docker-compose
on
environment variable names the following substitutions are applied to
property names:
_
=> .
__
=> _
___
=> -
Following are some illustratory examples:
CORE_CONF_fs_defaultFS
: sets the fs.defaultFS property in
core-site.xml
ACCUMULO_CONF_instance_zookeeper_host
: sets the
instance.zookeeper.host property in accumulo-site.xml
Additionally the ACCUMULO_MEM_USAGE
environment variable is used for bootstrapping the initial Accumulo configuration memory settings. It accepts values of 1GB
, 2GB
, 3GB
, or 512MB
.
Accumulo requires running HDFS and Zookeeper instances. HDFS can be configured by following the documentation at uhopper/hadoop, and Zookeeper using the official zookeeper image.