Skip to main content
Version: v1.11.2

NiFi NodeGroup Autoscaler

NifiNodeGroupAutoscaler is the Schema through which you configure automatic scaling of NifiCluster deployments.

apiVersion: nifi.konpyutaika.com/v1alpha1
kind: NifiNodeGroupAutoscaler
metadata:
name: nifinodegroupautoscaler-sample
spec:
# contains the reference to the NifiCluster with the one the node group autoscaler is linked.
clusterRef:
name: nificluster-name
namespace: nifikop
# defines the id of the NodeConfig contained in NifiCluster.Spec.NodeConfigGroups
nodeConfigGroupId: default-node-group
# The selector used to identify nodes in NifiCluster.Spec.Nodes this autoscaler will manage
# Use Node.Labels in combination with this selector to clearly define which nodes will be managed by this autoscaler
nodeLabelsSelector:
matchLabels:
nifi_cr: nificluster-name
nifi_node_group: default-node-group
# the strategy used to decide how to add nodes to a nifi cluster
upscaleStrategy: simple
# the strategy used to decide how to remove nodes from an existing cluster
downscaleStrategy: lifo

NifiNodeGroupAutoscaler

FieldTypeDescriptionRequiredDefault
metadataObjectMetadatais metadata that all persisted resources must have, which includes all objects nodegroupautoscalers must create.Nonil
specNifiNodeGroupAutoscalerSpecdefines the desired state of NifiNodeGroupAutoscaler.Nonil
statusNifiNodeGroupAutoscalerStatusdefines the observed state of NifiNodeGroupAutoscaler.Nonil

NifiNodeGroupAutoscalerSpec

FieldTypeDescriptionRequiredDefault
clusterRefClusterReferencecontains the reference to the NifiCluster containing the node group this autoscaler should manage.Yes-
nodeConfigGroupIdstringdefines the id of the NodeConfig contained in NifiCluster.Spec.NodeConfigGroups.Yes-
nodeLabelsSelectorLabelSelectordefines the set of labels used to identify nodes in a NifiCluster node config group. Use Node.Labels in combination with this selector to clearly define which nodes will be managed by this autoscaler. Take care to avoid having mutliple autoscalers managing the same nodes.Yes-
readOnlyConfigReadOnlyConfigdefines a readOnlyConfig to apply to each node in this node group. Any settings here will override those set in the configured nodeConfigGroupId.Yes-
nodeConfigNodeConfigdefines a nodeConfig to apply to each node in this node group. Any settings here will override those set in the configured nodeConfigGroupId.Yes-
upscaleStrategystringThe strategy NiFiKop will use to scale up the nodes managed by this autoscaler. Must be one of simple.Yes-
downscaleStrategystringThe strategy NiFiKop will use to scale down the nodes managed by this autoscaler. Must be one of lifo.Yes-
replicasintthe initial number of replicas to configure the HorizontalPodAutoscaler with. After the initial configuration, this replicas configuration will be automatically updated by the Kubernetes HorizontalPodAutoscaler controller.No0

NifiNodeGroupAutoscalerStatus

FieldTypeDescriptionRequiredDefault
statestringthe state of the nodegroup autoscaler. This is set by the autoscaler.No-
replicasintthe current number of replicas running in the node group this autoscaler is managing. This is set by the autoscaler.No-
selectorstringthe selector used by the HorizontalPodAutoscaler controller to identify the replicas in this node group. This is set by the autoscaler.No-