Upgrade Nifi from 1.13.2-alpine to 1.15.3-alpine

3/4/2022

I have created a custom Dockerfile of Nifi-1.13.2 with Alpine-3.14.2 as the base image and I want to upgrade it to Nifi-1.15.3 with Alpine-3.15.0 as the base image but I get error related to sensitive properties when I deploy the image in a pod on my Kubernetes setup even though the image works fine without any errors when run locally on my machine. The init-container is terminated properly but the main container logs shows the error.

I have a set of 4 files for kubernetes:- nifi-secret.yaml, nifi-service.yaml, nifi-configmap.yaml, and nifi-statefuleset.yaml. The sensitive properties have been set and the setup was working fine with Nifi-1.13.2. How can I solve this issue?

Nifi pod logs

Base Alpine custom Dockerfile

Nifi Dockerfile part 1

Nifi Dockerfile part 2

-- Dolly
alpine
apache-nifi
docker
kubernetes

2 Answers

3/4/2022

Are you using any volume mount PVC or NFS in deployment?

Nifi official doc states that it generates random keys when nifi.sensitive.props.key is empty from version 1.14 however you are migrating from 1.13 to 1.15.

Ref doc : https://nifi.apache.org/docs/nifi-docs/html/administration-guide.html#nifi_sensitive_props_key

You can also check out this bug issue you need to update the start.sh file and resolve the issue.

https://issues.apache.org/jira/browse/NIFI-8943

replacing line in start.sh

prop_replace 'nifi.sensitive.props.key'   "${NIFI_SENSITIVE_PROPS_KEY:-}"

Changes you could apply in start.sh

if [ -n "${KEY}" ]; then
    prop_replace 'nifi.sensitive.props.key' "${KEY}"
fi
-- Harsh Manvar
Source: StackOverflow

3/4/2022

This is the command I added in my nifi-statefulset.yaml file: prop_replace nifi.sensitive.props.key mysenstivkey /tmp/conf/nifi.properties and it worked perfectly fine. This is the only change I made in my statefulset.yaml file when migrating from Nifi-1.13.2_alpine to Nifi-1.15.3_alpine.

-- Dolly
Source: StackOverflow