The NDB Cluster Custom Resource Definition provides the
NdbClusterPodSpec structure for
defining specifications of pods for individual management, data,
and SQL nodes using their respective
.spec.mysqlNode.ndbPodSpec fields. Values set
NdbPodSpec fields are copied into
StatefulSet definitions. This
chapter explains how these
fields can be used for assigning pods to specific worker nodes,
defining affinity rules, and specifying pod resource requirements.
Assigning NDB node pods to worker pods.
You can specify the label of the worker node on which a given
NDB Cluster node should be scheduled by specifying it in the
See Assigning Pods to Nodes for more information.
Affinity and anti-affinity.
Affinity and anti-affinity rules for NDB Cluster nodes can be
defined using the
affinity field. The
Kubernetes Cluster uses these rules to decide where to schedule
an NDB Cluster pod. These rules are applied after filtering out
the available worker node pool based on any specified
NDB Operator defines default anti-affinity rules for each of the
three MySQL Cluster node types (ndb_mgmd,
ndbmtd, and mysqld) to
prevent them from being scheduled on the same worker node whenever
possible. Such a rule is always defined as
so that it is satisfied by the Kubernetes scheduler only if there
are sufficient resources. For example, if four data nodes must be
scheduled on four worker nodes, each data node is scheduled on a
separate worker node, but if six data nodes must be scheduled on
four worker nodes, the first four data nodes are scheduled on four
separate worker nodes while the fifth and sixth data nodes must be
scheduled on worker nodes where a data node is already running.
Default anti-affinity rules can be overridden by specifying the
desired anti-affinity rules in the
For more information, see Affinity and anti-affinity.
Specify Resource Requirements. Pod resource requirements can be specified using the resources field. These requirements are copied into the container definitions.
NDB Operator defines default memory requirements for data nodes
based on the configuration of the NDB Cluster. The minimum
calculated by NDB Operator for this purpose is an estimate, and
can be overridden by specifying an alternative using the data
For more information, see Resource Management for Pods and Containers.