k8s集群创建pod,运行pod


  k8s集群搭建好后,各个node的状态变成了ready,就可以创建pod,创建完成后,就会默认的运行其中的container。

  使用一个简单yaml文件描述pod:

apiVersion: v1                    #必选,版本号,例如v1,版本号必须可以用 kubectl api-versions 查询到 .
kind: Pod                      #必选,Pod
metadata:                      #必选,元数据
  name: string                    #必选,Pod名称
  namespace: string               #必选,Pod所属的命名空间,默认为"default"
  labels:                       #自定义标签
    - name: string                 #自定义标签名字
  annotations:                           #自定义注释列表
    - name: string
spec:                            #必选,Pod中容器的详细定义
  containers:                       #必选,Pod中容器列表
  - name: string                        #必选,容器名称,需符合RFC 1035规范
    image: string 

  运行kubectl create -f demo.yaml,就完成了创建pod

  但是使用kubectl get pods,发现其转态不是completed,使用kubectl describe pod demo,报错:

 FailedCreatedPodSandBox  k8s.gcr.io/pause:3.1

  查阅资料,发现k8s中的镜像都依赖于这个基础镜像。现在有两个办法,外网下载镜像或者更改k8s的远程仓库地址,还是手动下载最方便,参考文章k8s.gcr.io镜像无法下载的问题.这其中要求对docker操作比较熟悉,比如docker save,docker load

  这样pod的状态就为complete了。

 

 

 

参考博客:

  yaml格式的pod定义文件完整内容

  k8s.gcr.io镜像无法下载的问题

  pod生命周期


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM