Кластер - это концепция соединения нескольких узлов, у вас нет кластера вокруг узлов, узлы - это кластер. В Kubernetes кластер также имеет некоторые службы управления для отслеживания участников и управления распределением ресурсов, используемых приложениями, узлы, на которых размещаются эти службы, называются главными.
Вы не должны пытаться найти связь между узлами и приложениями, приложения - это просто двоичные файлы (в форме контейнеров), работающие в кластере, узел можно рассматривать как место, где они были размещены, Kubernetes делает хорошую работу абстрагируясь от вашего приложения, именно поэтому каждый POD получает свой собственный IP вместо использования IP-адреса узла, потому что приложению не нужно знать, где оно работает.
Что касается вопросов масштабирования, вы можете масштабировать кластер или приложение.
Когда вы масштабируете приложение, вы добавляете больше его копий (копий) в кластер, чтобы обрабатывать больше.
Когда вы масштабируете кластер, вы добавляете больше ресурсов (память / ЦП / диск), чтобы освободить место для хранения большего количества приложений, добавление узлов - только один из способов сделать это.
Если вашему приложению требуется большая емкость, а кластер может предоставить его, вы можете масштабировать только pods \ deployments, чтобы предоставить приложению достаточно ресурсов.
Самовосстановление - это то, что делают службы управления, оно отслеживает ресурсы, и в случае, если что-то пойдет не так, например: узел в кластере потерян, службы управления будут компенсировать это, распределяя приложения на других доступных узлах, или перезапустите приложение, если произошла ошибка POD.
Эти документы объясняют архитектуру немного подробнее.