《Kubernetes知识篇:Kubernetes之Pod容器类型》

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:企业级K8s集群运维实战


一、pod中容器类型

截止目前k8s1.18,K8S已经支持 标准容器,sidecar容器,init容器,ephemeral容器等4种类型的containers。本文我们详细介绍一下这4种容器的特性已经使用场景。
在这里插入图片描述


二、标准容器和Sidecar容器


三、init初始化容器

init容器是一种特殊的容器,主要做容器运行前的工作,可以为一个或多个, 只有所有init初始化容器执行完之后,主容器才会启动

下面的例子定义了一个具有2个Init容器的简单Pod。 第一个等待init-my-backend启动, 第二个等待init-my-db启动。 一旦这两个Init容器都启动完成,Pod将启动spec节中的主容器。

apiVersion: apps/v1
kind: Deployment
metadata:  
  name: my-app-redis
spec:  
  # Pod副本数量
  replicas: 3
  selector:
    matchLabels:
      app: redis
  # Pod模板
  template:
    metadata:
      # 标签信息: 应用的缓存服务
      labels:
        app: redis
    spec:
      # 容器信息
      containers:
      - name: my-app-redis
        image: redis:3.2-alpine
      # Init容器, 其会在Pod始化期间依次运行各个Init容器
      initContainers:
      - name: init-my-backend
        image: busybox:1.28
        # 不停检测default命名空间下名为mybackend的后端服务是否启动完毕
        command: ['sh', '-c', "until nslookup mybackend.default.svc.cluster.local; do sleep 5; done"]
      - name: init-my-db
        image: busybox:1.28
        # 不停检测default命名空间下名为mydb的数据库服务是否启动完毕
        command: ['sh', '-c', "until nslookup mydb.default.svc.cluster.local; do sleep 5; done"]

四、ephemeral临时容器

临时容器与其他容器的不同之处在于,它们缺少对资源或执行的保证,并且永远不会自动重启,因此不适用于构建应用程序。临时容器,在当前的pod中临时运行,完成使命手自动销毁。

1、低于1.18版本中临时容器的使用方法

2、1.18~1.19版本中临时容器的使用方法

#注意:1.18版本也需要开启临时容器功能。1.19以上版本kubectl命令不用再加alpha字段!!!
kubectl alpha debug  metrics-server-89786cd84-t9dwm  -n kube-system -i --image=busybox

3、1.19+版本中临时容器的使用方法

# 在1.19版本之后,kubectl命令不用再加alpha字段。此时添加临时容器一般有两种:

# 第一种给Pod添加临时容器:
kubectl debug metrics-server-54b4b877dc-pz8nb -ti --image=registry.cn-hangzhou.aliyuncs.com/zq-demo/debug-tools

# 第二种给节点添加临时容器:
kubectl debug node/k8s-master-32 -it --image=registry.cn-hangzhou.aliyuncs.com/zq-demo/debug-tools

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:企业级K8s集群运维实战

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

东城绝神

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

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

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

打赏作者

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

抵扣说明:

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

余额充值