【问题标题】:Google container engine - update replication controller multi-container podsGoogle 容器引擎 - 更新复制控制器多容器 pod
【发布时间】:2016-02-29 13:18:49
【问题描述】:

尝试使用

更新多容器 pod
kubectl rolling-update my_rc --image=eu.gcr.io/project_id/myimage

我明白了:

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

更新单个容器的方法是什么,或者我必须删除并重新创建 pod ?

【问题讨论】:

    标签: google-cloud-platform kubernetes google-kubernetes-engine


    【解决方案1】:

    目前,您最好的选择是更新定义复制控制器的 yaml 文件以使用新映像并运行:

    kubectl rolling-update my_rc -f my_file.yaml
    

    如果您没有定义复制控制器的 yaml 文件,您可以通过运行获得一个:

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

    然后您应该能够更新该文件中指定的图像并运行滚动更新。


    在 Kubernetes 的下一个版本(目标是 3 月)中,您将能够只传递 --container 标志来告诉 kubectl pod 中的哪些容器应该使用新镜像:

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

    这个功能是added by a community member 1.1 版被删减后的。

    【讨论】:

    • 将 kubectl rolling-update my_rc -f my_file.yaml 与相同的 yaml 文件(用于创建)给我“错误:monarch-redis-worker-master-controller-integration.yaml 不能与现有的 ReplicationController monarch 同名”对我来说不是更新,而是使用现有的创建,就这样?
    • 啊,很抱歉最初没有包含更多细节。您还需要给新的 RC 起一个新名称,以便在推出期间将其与旧名称区分开来(因为它们都在 pod 从一个移动到另一个的同时存在)。
    猜你喜欢
    • 1970-01-01
    • 2016-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-25
    • 1970-01-01
    相关资源
    最近更新 更多