I would recommend keeping all of the above separate, so if you're running
multiple instances (pods/containers) on the same Node and mounting local
disk from the node into the instances as volumes, then have each instance
pointing at an instance-specific directory/file.

Each NiFi instance expects to control its own Flow definition (and NiFi
clustering will keep these in-sync between instances) and repositories - if
multiple instances write to the same directory they may
inadvertently overwrite one anothers data, which would obviously be bad.

The state management configuration file should be fine to share as that
simply points to a config file that controls state management - that said,
you'd want to have each instance use its own local state directory too (so
therefore you may need separate config files to achieve that).


---
*Chris Sampson*
IT Consultant
chris.samp...@naimuri.com
<https://www.naimuri.com/>


On Mon, 19 Jul 2021 at 16:47, Ravi Nallappan <ravi.nallap...@gmail.com>
wrote:

> Hi,
>
> I am setting up NiFi cluster using kubernetes (Apache/NiFi image).
>
> These are among paths to be persisted via persistent volumes:
>
>    - *nifi.flow.configuration.file (**flow.xml.gz)*
>    - *nifi.provenance.repository.directory.default*
>    - nifi.content.repository.directory.default
>    - nifi.flowfile.repository.directory
>    - nifi.database.directory
>    - nifi.state.management.configuration.file
>
> With the bolded are my primary concerns.
>
> In non-containter installation - each node shares nothing, as they may sit
> on their own machines.
>
> In container environment, these persistent volumes will share storage i.e
> a node can see/access files written by other nodes.
> Will these sharing storage space perfectly fine? Or do we need to make
> some tweak in nifi.properties to make each have their own directories for
> each of above?
>
> Thanks.
>
> Ravi Nallappan
>
>
>
>

Reply via email to