Chapter 38. PodTemplate schema reference Used in: CruiseControlTemplate , EntityOperatorTemplate , JmxTransTemplate , KafkaBridgeTemplate , KafkaClusterTemplate , KafkaConnectTemplate , KafkaExporterTemplate , KafkaMirrorMakerTemplate , KafkaNodePoolTemplate , ZookeeperClusterTemplate Full list of PodTemplate schema properties Configures the template for Kafka pods. Example PodTemplate configuration # ... template: pod: metadata: labels: label1: value1 annotations: anno1: value1 imagePullSecrets: - name: my-docker-credentials securityContext: runAsUser: 1000001 fsGroup: 0 terminationGracePeriodSeconds: 120 hostAliases: - ip: "192.168.1.86" hostnames: - "my-host-1" - "my-host-2" #... Use the hostAliases property to a specify a list of hosts and IP addresses, which are injected into the /etc/hosts file of the pod. This configuration is especially useful for Kafka Connect or MirrorMaker when a connection outside of the cluster is also requested by users. 38.1. PodTemplate schema properties Property Property type Description metadata MetadataTemplate Metadata applied to the resource. imagePullSecrets LocalObjectReference array List of references to secrets in the same namespace to use for pulling any of the images used by this Pod. When the STRIMZI_IMAGE_PULL_SECRETS environment variable in Cluster Operator and the imagePullSecrets option are specified, only the imagePullSecrets variable is used and the STRIMZI_IMAGE_PULL_SECRETS variable is ignored. securityContext PodSecurityContext Configures pod-level security attributes and common container settings. terminationGracePeriodSeconds integer The grace period is the duration in seconds after the processes running in the pod are sent a termination signal, and the time when the processes are forcibly halted with a kill signal. Set this value to longer than the expected cleanup time for your process. Value must be a non-negative integer. A zero value indicates delete immediately. You might need to increase the grace period for very large Kafka clusters, so that the Kafka brokers have enough time to transfer their work to another broker before they are terminated. Defaults to 30 seconds. affinity Affinity The pod's affinity rules. tolerations Toleration array The pod's tolerations. topologySpreadConstraints TopologySpreadConstraint array The pod's topology spread constraints. priorityClassName string The name of the priority class used to assign priority to the pods. schedulerName string The name of the scheduler used to dispatch this Pod . If not specified, the default scheduler will be used. hostAliases HostAlias array The pod's HostAliases. HostAliases is an optional list of hosts and IPs that will be injected into the Pod's hosts file if specified. enableServiceLinks boolean Indicates whether information about services should be injected into Pod's environment variables. tmpDirSizeLimit string Defines the total amount of pod memory allocated for the temporary EmptyDir volume /tmp . Specify the allocation in memory units, for example, 100Mi for 100 mebibytes. Default value is 5Mi . The /tmp volume is backed by pod memory, not disk storage, so avoid setting a high value as it consumes pod memory resources. volumes AdditionalVolume array Additional volumes that can be mounted to the pod.

Commands:
template: pod: metadata: labels: label1: value1 annotations: anno1: value1 imagePullSecrets: - name: my-docker-credentials securityContext: runAsUser: 1000001 fsGroup: 0 terminationGracePeriodSeconds: 120 hostAliases: - ip: "192.168.1.86" hostnames: - "my-host-1" - "my-host-2" #