Node configuration
NodeConfig defines the node configuration
default_group:
# provenanceStorage allow to specify the maximum amount of data provenance information to store at a time
# https://nifi.apache.org/docs/nifi-docs/html/administration-guide.html#write-ahead-provenance-repository-properties
provenanceStorage: "10 GB"
#RunAsUser define the id of the user to run in the Nifi image
# +kubebuilder:validation:Minimum=1
runAsUser: 1000
# Set this to true if the instance is a node in a cluster.
# https://nifi.apache.org/docs/nifi-docs/html/administration-guide.html#basic-cluster-setup
isNode: true
# Additionnal metadata to merge to the pod associated
podMetadata:
annotations:
node-annotation: "node-annotation-value"
labels:
node-label: "node-label-value"
# Docker image used by the operator to create the node associated
# https://hub.docker.com/r/apache/nifi/
# image: "apache/nifi:1.11.2"
# nodeAffinity can be specified, operator populates this value if new pvc added later to node
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
# nodeAffinity:
# imagePullPolicy define the pull policy for NiFi cluster docker image
imagePullPolicy: IfNotPresent
# priorityClassName define the name of the priority class to be applied to these nodes
priorityClassName: "example-priority-class-name"
# externalVolumeConfigs specifies a list of volume to mount into the main container.
externalVolumeConfigs:
- name: example-volume
mountPath: "/opt/nifi/example"
secret:
secretName: "raw-controller"
# storageConfigs specifies the node related configs
storageConfigs:
# Name of the storage config, used to name PV to reuse into sidecars for example.
- name: provenance-repository
# Path where the volume will be mount into the main nifi container inside the pod.
mountPath: "/opt/nifi/provenance_repository"
# Kubernetes PVC spec
# https://kubernetes.io/docs/tasks/configure-pod-container/configure-persistent-volume-storage/#create-a-persistentvolumeclaim
pvcSpec:
accessModes:
- ReadWriteOnce
storageClassName: "standard"
resources:
requests:
storage: 10Gi
- mountPath: "/opt/nifi/nifi-current/logs"
name: logs
pvcSpec:
accessModes:
- ReadWriteOnce
storageClassName: "standard"
resources:
requests:
storage: 10Gi
NodeConfig
Field | Type | Description | Required | Default |
---|---|---|---|---|
provenanceStorage | string | provenanceStorage allow to specify the maximum amount of data provenance information to store at a time: write-ahead-provenance-repository-properties | No | "8 GB" |
runAsUser | int64 | define the id of the user to run in the Nifi image | No | 1000 |
fsGroup | int64 | define the id of the group for each volumes in Nifi image | No | 1000 |
isNode | boolean | Set this to true if the instance is a node in a cluster: basic-cluster-setup | No | true |
image | string | Docker image used by the operator to create the node associated. Nifi docker registry | No | "" |
imagePullPolicy | PullPolicy | define the pull policy for NiFi cluster docker image. | No | "" |
nodeAffinity | string | operator populates this value if new pvc added later to node node-affinity | No | nil |
storageConfigs | [ ]StorageConfig | specifies the node related configs. | No | nil |
externalVolumeConfigs | [ ]ExternalVolumeConfig | specifies a list of volume to mount into the main container. | No | nil |
serviceAccountName | string | specifies the serviceAccount used for this specific node. | No | "default" |
resourcesRequirements | ResourceRequirements | works exactly like Container resources, the user can specify the limit and the requests through this property manage-compute-resources-container. | No | nil |
imagePullSecrets | [ ]LocalObjectReference | specifies the secret to use when using private registry. | No | nil |
nodeSelector | map[string]string | nodeSelector can be specified, which set the pod to fit on a node nodeselector | No | nil |
tolerations | [ ]Toleration | tolerations can be specified, which set the pod's tolerations taint-and-toleration. | No | nil |
podMetadata | Metadata | define additionnal metadata to merge to the pod associated. | No | nil |
hostAliases | [ ]HostAlias | A list of host aliases to include in each pod's /etc/hosts configuration in the scenario where DNS is not available. | No | [ ] |
priorityClassName | string | Specify the name of the priority class to apply to pods created with this node config | No | nil |
StorageConfig
Field | Type | Description | Required | Default |
---|---|---|---|---|
name | string | Name of the storage config, used to name PV to reuse into sidecars for example. | Yes | - |
mountPath | string | Path where the volume will be mount into the main nifi container inside the pod. | Yes | - |
pvcSpec | PersistentVolumeClaimSpec | Kubernetes PVC spec. create-a-persistentvolumeclaim. | Yes | - |
ExternalVolumeConfig
Field | Type | Description | Required | Default |
---|---|---|---|---|
VolumeMount | describes a mounting of a Volume within a container. | Yes | - | |
VolumeSource | VolumeSource represents the location and type of the mounted volume. | Yes | - |
Metadata
Field | Type | Description | Required | Default |
---|---|---|---|---|
annotations | map[string]string | Additionnal annotation to merge to the pod associated annotations. | No | nil |
labels | map[string]string | Additionnal labels to merge to the pod associated labels. | No | nil |