Skip to content
This repository was archived by the owner on Jun 6, 2025. It is now read-only.
This repository was archived by the owner on Jun 6, 2025. It is now read-only.

Change HDFS settings to easily allow Accumulo init #246

@GCHQDeveloper314

Description

@GCHQDeveloper314

In all docker-compose.yaml files that involve Accumulo, there's this comment on each Accumulo service:

# There doesn't seem to be an easy way (with docker-compose) to init our
# HDFS instance with the right permissions so that Accumulo can create the
# file structure it needs. Using the following workaround to allow
# accumulo to "auth" with HDFS as the super user so that it can:
- HADOOP_USER_NAME=hadoop

For Kubernetes the following is done to grant "the right permissions":

- hadoop fs -mkdir -p /accumulo
- hadoop fs -chown accumulo /accumulo
- hadoop fs -chmod 700 /accumulo
- hadoop fs -ls /

The claim that this cannot be done in docker-compose doesn't seem to be correct. It should be possible to run the same commands in the HDFS container when using docker-compose.

However, seeing as secure mode is not in use and the only client is Accumulo, there's very little point in using HDFS permissions. Disabling them (by setting dfs.permissions.enabled to false) removes the need for this workaround and this tedious repeating comment in many docker-compose.yaml files.

Metadata

Metadata

Assignees

No one assigned

    Labels

    DockerIssue related to the Docker side of the projectgood first issueSmall, lower complexity and doesn't require pre-existing Gaffer knowledgetech debtRelates to Technical Debt

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions