4

Попытка обновить многопользовательские контейнеры стручки сGoogle контейнер двигатель - обновление контроллер репликации несколько контейнеров стручков

kubectl rolling-update my_rc --image=eu.gcr.io/project_id/myimage 

я получил:

error: Image update is not supported for multi-container pods 

Какой способ обновить один контейнер или Я должен удалить и воссоздать контейнер?

ответ

0

На данный момент лучшим вариантом является обновление файла YAML определения контроллера репликации использовать новый образ и запустить:

kubectl rolling-update my_rc -f my_file.yaml 

Если у вас нет файла YAML определения контроллера репликации, может получить один, запустив:

kubectl get rc my_rc --output=yaml > my_file.yaml 

затем вы должны быть в состоянии обновить изображение, указанное в этом файле и запустить качению обновление.


В следующем выпуске Kubernetes (целевой за март), вы будете иметь возможность просто передать --container флаг, чтобы сказать kubectl какой из контейнеров в контейнере должен использовать новый образ:

kubectl rolling-update my_rc --container=my_container --image=eu.gcr.io/project_id/myimage 

Данная функция была added by a community member после версии 1.1 был разрезан.

+0

с помощью kubectl roll-update my_rc -f my_file.yaml с тем же самым ямль-файлом (который служил для создания) дал мне ошибку: monarch-redis-worker-master-controller-integration.yaml не может иметь то же имя, что и существующий Replica tionController monarch "для меня не обновление, а создание с использованием существующего, вот и все? –

+0

Ах, извините за то, что вначале не было деталей. Вы также захотите дать новому RC новое имя, чтобы отличить его от старого во время развертывания (так как оба они существуют в то же время, когда стручки перемещаются от одного к другому). –

Смежные вопросы