История изменений
Исправление intelfx, (текущая версия) :
Абсолютно точно так умеет Kubernetes
На самом деле нет. Kubernetes сам по себе умеет только половину из того, что ты хочешь: следить за состоянием контейнеров, вести список живых и делать rolling upgrade. Встроенная балансировка нагрузки там тупая. Вот эту логику —
nginx proxy перецепляет роут на них
— ты бы делал отдельным компонентом-прослойкой между k8s и Nginx, которая должна связаться с apiserver’ом, вычитать оттуда список живых подов и динамически переконфигурировать Nginx. К счастью, он уже написан.
Так вот, если первые три пункта ты, может быть, и накостылишь на голом докере вручную, то прослойку между этой вундервафлей и Nginx тебе придётся натурально писать руками заново.
Поэтому бери кубер и впихивай его в свои 2G рамы. В качестве примера минимального кластера посмотри в сторону minikube --vm-driver=none
(caveat emptor: minikube создаёт кластер без контроля доступа со смотрящим наружу apiserver’ом, поэтому он годится только как proof of concept).
Исходная версия intelfx, :
Абсолютно точно так умеет Kubernetes
На самом деле нет. Kubernetes сам по себе умеет только половину из того, что ты хочешь: следить за состоянием контейнеров, вести список живых и делать rolling upgrade. Встроенная балансировка нагрузки там тупая. Вот эту логику —
nginx proxy перецепляет роут на них
— ты бы делал отдельным компонентом-прослойкой между k8s и Nginx, которая должна связаться с apiserver’ом, вычитать оттуда список живых подов и динамически переконфигурировать Nginx.
Если первые три пункта ты, может быть, и накостылишь на голом докере вручную, то прослойку между этой вундервафлей и Nginx тебе придётся натурально писать руками.
Поэтому бери кубер и впихивай его в свои 2G рамы. В качестве примера минимального кластера посмотри в сторону minikube --vm-driver=none
(caveat emptor: minikube создаёт кластер без контроля доступа со смотрящим наружу apiserver’ом, поэтому он годится только как proof of concept).