Kubernetes Tree

I’ve chose to navigate in the Kubernetes world by breaking down its components’ structure. Here what I’ve got:

  • Pod Spec
    • containers
      • containers
      • initContainers
      • imagePoolSecrects
    • volumes
    • scheduling
      • nodeSelector/nodeName/affinity/toleration
      • schedulerName
      • runtimeClassName
      • priorityClassName/priority
    • lifecycle
      • restartPolicy
      • terminationGracePeriodSeconds
      • readiness-Gates
    • hostname and name resolution
      • host-name/FQDN(subdomain)/hostAliases(/etc/resolv.conf)/dnsConfig/dns-Policy
    • host namespaces (will help indicate if the Pod must use host namespaces for network and if containers will share the same (non-host) process namespace)
      • hostNetwork/hostPID/hostIPC
      • shareProcessNamespace
    • serviceAccount
      • serviceAccountName
      • automountServiceAccountToken
    • securityContext
  • Container spec
    • (fields related to container runtime)
    • image
      • image
      • imagePullPolicy
    • entrypoint
      • command/args/workingDir
    • ports
    • variables
      • env (environment variables)
      • configMap
      • envFrom (secretValues)
    • volumes
      • volumeMounts
      • volume-Devices
    • (fields related to kubernetes)
    • resources
    • lifecycle
      • livecycle events
      • terminationMessagePath / terminationMessagePolicy
      • livenessProbe / readinessProbe
    • security context
    • debugging
      • stdin / stdinOnce / tty
  • Pod Controller
    • ReplicaSet
    • Deployment
    • StatefulSet
    • DaemonSet
    • Job
    • CronJob
  • ReplicaSet Controller
    • replicas
    • selector
    • template
    • minReadySeconds
  • Deployment
    • replicas
    • selector
    • template
    • minReadySeconds
    • strategy
    • revisionHistoricalLimit
    • paused
    • progressDeadlineSeconds

Resource: Kubernetes: Preparing for the CKA and CKAD Certifications