如何更新使用kubernetes清单创建的所有资源?
我使用kubernetes清单文件来部署代码。我的清单通常包含许多内容,如部署、服务、入口等。。如何对应用于清单的所有内容执行“卷展”或“重新启动”类型 我知道我可以通过运行来更新部署如何更新使用kubernetes清单创建的所有资源?,kubernetes,Kubernetes,我使用kubernetes清单文件来部署代码。我的清单通常包含许多内容,如部署、服务、入口等。。如何对应用于清单的所有内容执行“卷展”或“重新启动”类型 我知道我可以通过运行来更新部署 kubectl rollout restart deployment <deployment name> kubectl卷展栏重新启动部署 但如果我需要更新入口/服务等所有资源,该怎么办?这一切可以一起完成吗?我建议您将清单存储在一个目录中,例如部署、服务和入口,例如 然后使用kubectl a
kubectl rollout restart deployment <deployment name>
kubectl卷展栏重新启动部署
但如果我需要更新入口/服务等所有资源,该怎么办?这一切可以一起完成吗?我建议您将清单存储在一个目录中,例如
部署
、服务
和入口
,例如
然后使用kubectl apply
将这些文件“应用”到Kubernetes,例如:
kubectl apply -f <directory>/
kubectl应用-f/
请参阅有关的详细信息
当你的<代码>部署<代码>被这样更新时,你的吊舱将在新的版本中被替换为滚动部署(你可以配置为使用另一个部署策略)。
这是一个社区wiki的答案,所以可以自由地编辑它并添加任何你认为重要的附加细节。 正如他在评论中所建议的,您可以简单地使用:kubectl apply -f your-manifest.yaml
它会将您在清单文件中所做的所有更改应用于已部署的资源
但是,请注意,运行:
kubectl rollout restart -f your-manifest.yaml
由于此文件包含无法应用kubectl卷展栏重新启动的服务等资源的定义,因此意义不大。因此,您将看到以下错误:
$ kubectl rollout restart -f deployment-and-service.yaml
deployment.apps/my-nginx restarted
error: services "my-nginx" restarting is not supported
因此,如您所见,完全可以对包含支持此操作和不支持此操作的资源定义的文件运行kubectl rollout restart
相反,运行kubectl apply
将更新清单中定义已更改的所有资源:
$ kubectl apply -f deployment-and-service.yaml
deployment.apps/my-nginx configured
service/my-nginx configured
您可以使用kubectl apply
将清单文件中的更改反映到资源中。好的-这很有意义。当我应用kubectl apply-f my deployment.yaml时,如何配置“滚动”部署?这是默认行为