As Appian on Kubernetes is only supported for non-production environments, there is no supported path for upgrading from 21.4 to 22.1 or higher. For environments where future upgrades are desired, use Appian 22.1.
Appian on Kubernetes allows self-managed customers to host Appian as a containerized application running on Kubernetes.
Appian runs using various components: application server, search server, data server, and others. On a typical Appian install you'd configure and run these components separately on a given machine. Appian on Kubernetes instead orchestrates running all the various components as Pods, light-weight container-based units that run on machine processes.
Appian on Kubernetes provides a great deal of resilience with pods. If one Appian component running on a pod goes down, Kubernetes will spin another up to quickly replace it. Replicas of pods can be scaled up to meet demand. For example, Appian on Kubernetes can be set up so that if the CPU load of the Apache web server component spikes due to traffic, it can automatically scale up replicas to meet the increased demand.
Appian on Kubernetes uses a Kubernetes Operator to orchestrate standing up and maintaining all the Appian components. You can tell Appian to start or stop, and the Operator will gracefully start or stop the Appian components in the correct order. The Operator runs constantly to correct the state of the components if any get out of wack. Appian also runs using a single configuration (Custom Resource Definition) for all the components. The resulting site is easy to self-host and configure.
For more on how Appian works with the Operator, see What is the Appian Operator?