K8s | Pod 基本操作

1.定义创建pod

还是不厌其烦的来个来个世界通用Hello World,,创建一个简单的Hello World Pod,运行一个输出“Hello World的容器”。

  • 定义hello-world-pod.yaml
apiVersion: v1
kind: Pod
metadata:
  name: hello-world
spec:
  restartPolicy: OnFailure
  containers:
  - name: hello
    image: "ubuntu"
    command: ["/bin/echo","hello”,”world"]

  • 字段解释
apiVersion: 声明K8s的API版本
kind: 声明API对象的类型,这里是Pod
metadata:设置Pod的元数据
  name: hello-world 指定Pod的名称Pod名称必粗在Namespace内唯一
spec:配置Pod的具体规格
  restartPolicy: 重启策略
  containers:容器规格,数组形式,每一项定义一个容器
  - name:指定容器的名称,在Pod的定义中唯一
    image:设置容器镜像
    command:设置容器的启动命令
  • 通过定义文件创建Hellow World Pod:
kubectl create -f hello-world-pod.yaml
kubectl create

2.查询Pod

  • 简要信息查询
kubectl get pod hello-world
NAME:Pod的名称
READY:Pod的准备状况,准备就绪/Pod包含的容器总数目
STATUS:Pod的状态
RESTARTS:Pod的重启次数
AGE:Pod的运行时间
kubectl get
  • 详细信息查询
#JSON格式显示Pod的完整信息
kubectl get pod hello-world --output yaml
#YAML方式显示Pod的完整信息
kubectl get pod hello-world --output json
  • 状态和生命周期查询
kubectl describe pod hello-world
K8s | Pod 基本操作_第1张图片
kubectl describe

3.更新Pod

  • 更新
kubectl replace -f hello-world-pod.yaml

但是由于Pod的很多属性没办法修改,比如容器镜像,这时候可以采用--force参数

  • 重建POd
kubectl replace --force -f hello-world-pod.yaml
kubectl replace

4.删除Pod

  • 通过kubectl delete删除指定Pod
kubectl delete pod hello-world
  • 通过kubectl delete批量删除全部Pod
kubectl delete pod --all
kubectl delete

你可能感兴趣的:(K8s | Pod 基本操作)