orchestrator, ingest, and worker each take nodeSelector, tolerations, affinity, and podAnnotations.
Run on amd64
FineParser images are built forlinux/amd64 only. If your cluster can also run arm64 nodes, pin every component:
fineparser-values.yaml
Give workers their own nodes
A large pool can fill every node it is allowed on. Put workers on a dedicated, tainted node group, and keep the orchestrator and ingest elsewhere. For nodes labeled and taintedfineparser.abbyy.com/pool=worker:
fineparser-values.yaml
Pre-pulling the worker image
When many workers start on a new node at once, their image pulls can hit the kubelet’s pull rate limit and slow the burst. Withworker.prepull enabled, workers wait until the node has pulled the image once.
fineparser-values.yaml
NoSchedule taint whose key is taintKey. A DaemonSet pulls the image on each new node and then removes the taint.
- Karpenter: list the taint in the NodePool’s
startupTaints. - Cluster Autoscaler: create the node group’s nodes with the taint. The default key’s prefix tells Cluster Autoscaler the taint is temporary.
images.worker.pullPolicy must be IfNotPresent, and worker.tolerations must not tolerate the taint. Enabling it creates a ClusterRole that can get and patch Nodes.
