第6章:Kubernetes Pod控制器应用进阶一

第6章:Kubernetes Pod控制器应用进阶一

资源配置清单(yaml格式):
自主式pod资源(不受pod控制器管理)
资源的清单格式:
一级属性字段:
apiVersion(group/version),建议使用稳定版本stable;
kind,常表示资源类型,如pod等;
metadata,包含:name、namespace、labels、annotation,……
spec,一般包含containers等内容;
status

使用这条命令kubectl explain pod.spec.containers查看containers下面包含哪些信息;

pod资源:
spec.containers<[]object>

-name
Image
imagePullPolicy
Always、Never、IfNotPresent
Ports <[]object>
如:
-name : http
containerPort: 80
-name: https
containerPort: 443
默认TCP协议;
CMD和Entrypoint的区别:如果只有CMD,则运行CMD中的程序;如果既有CMD又有Entrypoint,则CMD中的内容将作为参数传递给Entrypoint中的命令
附链接:https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/

资源对象和标签是多对多的关系;
标签:
key=value,键和值必须<64个字符;
键,只能是字母、数字、_、-、.等,且必须以字母和数字开头;
值,可以为空,但开头和结尾必须使用字母或数字。
标签类型:版本标签、环境标签等;

kubectl get pods --show-labels
#该命令用于显示pods及其带有的标签;
kubectl get pods -l 某标签值
#该命令用于筛选带有某标签值的pods(注意这里l是小写的L)
kubectl label pods 某pod名 key1=value1
#该命令用于给某pod加上key1=value1的标签;
如果该pod已经有该标签,需要强行修改,需要使用命令:
kubectl label pods 某pod名 key1=value2 --overwrite

标签选择器类型
等值关系:=、==、!=等
集合关系:
key in(VALUE1, VALUE2…)
key notin(VALUE1, VALUE2…)

资源对象支持内嵌字段定义其使用的标签选择器
matchLabels:直接给定键值;
matchExpressions:基于给定的表达式来定义使用标签选择器,如:
{key:”KEY”, operator:”OPERATOR”, values:[val1,val2,…]}

matchExpressions <[]Object>
matchExpressions is a list of label selector requirements. The requirements
are ANDed.

matchLabels <map[string]string>
matchLabels is a map of {key,value} pairs. A single {key,value} in the
matchLabels map is equivalent to an element of matchExpressions, whose key
field is “key”, the operator is “In”, and the values array contains only
“value”. The requirements are ANDed.

nodeSelector,节点标签选择器;

annotations,与label的区别在于不能用于挑选资源对象,仅用于为对象提供元数据,或属性信息;没有长度限制;

pod的生命周期:
状态:Pending、Running、Failed、Succeeded、Unknown等;

pod生命周期中的重要行为:
(1)初始化容器;
(2)状态探针:liveness probe、readiness probe;
探测方式:command、tcp和http
(3)优雅启停hook:poststart和prestop

restartPolicy重启策略:
Always、OnFailure、Never,注意默认是Always
注意:一旦一个pod被调度到某个节点上,该pod将会永远在这个节点上,出现问题将会一直重启;除非pod被删除或者节点宕机,该pod才会被重新调度到其他节点上;

pod终止,有Termi(宽限期,默认30秒)和KILL(强制执行阶段)两个阶段;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Davidwatt

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值