K8s | Pod 基本操作
2017-05-05 本文已影响0人
_简_述_
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
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