栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

K8s之ConfigMap、Deployment

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

K8s之ConfigMap、Deployment

--ConfigMap
ConfigMap是一种API对象,用来将非加密数据保存到键值对中。可以用作环境变量、命令行参数或者存储卷中的配置文件。
ConfigMap可以将环境变量配置信息和容器镜像解耦,便于应用配置的修改。如果需要存储加密信息时可以使用Secret对象。


--Deployment
Deployment为Pod和Replica Set提供声明式更新。
你只需要在 Deployment 中描述您想要的目标状态是什么,Deployment controller 就会帮您将 Pod 和ReplicaSet 的实际状态改变到您的目标状态。您可以定义一个全新的 Deployment 来创建 ReplicaSet或者删除已有的 Deployment 并创建一个新的来替换。

Deployment可以帮我们做什么
1、定义一组Pod期望数量,Controller会维持Pod数量与期望数量一致
2、配置Pod的发布方式,controller会按照给定的策略更新Pod,保证更新过程中不可用Pod维持在限定数量范围内
3、如果发布有问题支持回滚

Deployment控制器简单实现如下:
1、Deployment Controller从Etcd中获取到所有携带 “app:nginx”标签的Pod,然后统计它们的数量,这就是实际状态
2、Deployment对象的replicas的值就是期望状态
3、Deployment Controller将两个状态做比较,然后根据比较结果,确定是创建Pod,还是删除已有Pod

deployment.yaml中label配置:
1、在deployment.yaml中必须写spec.selector.matchLabels
2、在定义pod模板时,必须定义spec.template.metadata.lables,因为spec.selector.matchLabels是必须字段,而它又必须和spec.template.metadata.lables的键值一致。
3、spec.template.metadata.lables里面定义的内容,会应用到spec.template.spec下定义的所有pod副本中,在spec.template.spec.containers里面不能定义labels标签
 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1024782.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号