我尝试对我的联合副本集正在使用的容器图像执行滚动更新,但我收到以下错误:
当我跑步时:kubectl rolling-update mywebapp -f mywebapp-v2.yaml
我收到错误消息:the server could not find the requested resource
;
这是Google容器引擎(GKE)上的一个全新且干净的安装,因此除了创建联合群集和部署我的第一个服务之外,没有其他任何事情已经完成。我按照Kubernetes Docs的说明操作,但没有运气。
我已经检查过以确保我处于正确的上下文中,并且我还创建了一个新的YAML文件,指向新图像并更新了元数据名称。我错过了什么吗?我这样做的简单方法是删除副本集然后重新部署,但后来我欺骗自己:)。任何指针都将不胜感激
mywebappv2.yaml - 用于滚动更新的新yaml文件
apiVersion: extensions/v1beta1
kind: ReplicaSet
metadata:
name: mywebapp-v2
spec:
replicas: 4
template:
metadata:
labels:
app: mywebapp
spec:
containers:
- name: mywebapp
image: gcr.io/xxxxxx/static-js:v2
resources:
requests:
cpu: 100m
memory: 100Mi
ports:
- containerPort: 80
name: mywebapp
我原来的mywebapp.yaml文件:
apiVersion: extensions/v1beta1
kind: ReplicaSet
metadata:
name: mywebapp
spec:
replicas: 4
template:
metadata:
labels:
app: mywebapp
spec:
containers:
- name: mywebapp
image: gcr.io/xxxxxx/static-js:v2
resources:
requests:
cpu: 100m
memory: 100Mi
ports:
- containerPort: 80
name: mywebapp
答案 0 :(得分:1)
尝试NULL
。
支持复制控制器的大多数kubectl命令也是如此 支持ReplicaSet。 rolling-update命令是一个例外。如果 您想要滚动更新功能请考虑使用 而是Deployments。
此外,滚动更新命令势在必行 虽然部署是声明性的,但我们建议使用部署 通过rollout命令。