0
点赞
收藏
分享

微信扫一扫

pod的一些指令

pod相位状态

● pod的status字段是一个PodStatus的对象,Pod 对象总是应该处于其生命进程中以下几个相位(phase)之一。

Pending Pod创建过程中,但它尚未被调度完成

Running Pod中所有容器都已经被创建成功

Comleted Pod所有容器都已经成功终止,并不会被重启

Failed Pod中的所有容器中至少有一个容器退出是非0状态

Unknow 无法正常获取到Pod对象的状态信息

Pod 管理命令(一)

子命令

说明

备注

run/create

创建资源对象

可输出资源文件模板

get

查看资源对象的状态信息

常用参数: -o 显示格式

describe

查询资源对象的属性信息


logs

查看容器的报错信息

常用参数: -c 容器名称

● kubectl get 语法格式

kubectl get 资源类型 [资源名称] [选项/参数]

● 常用参数

-o name 只显示名字

-o wide 显示更加的详细信息

-o yaml 以Yaml语法格式显示资源对象

-o json 以json语法格式显示资源对象

get

# 查看 Pod 资源对象
[root@master ~]# kubectl get pods
NAME     READY   STATUS    RESTARTS   AGE
myweb    1/1     Running   0          10m
# 只查看资源对象的名字
[root@master ~]# kubectl get pods -o name
pod/myweb
# 查看资源对象运行节点的信息
[root@master ~]# kubectl get pods -o wide
NAME     READY   STATUS    RESTARTS   AGE   IP           NODE
myweb    1/1     Running   0          10m   10.244.1.3   node-0001
# 查看资源对象详细信息,Yaml 格式
[root@master ~]# kubectl get pod myweb -o yaml
apiVersion: v1
kind: Pod
metadata:
  name: myweb
... ...
# 查看名称空间
[root@master ~]# kubectl get namespaces 
NAME              STATUS   AGE
default           Active   39h
kube-node-lease   Active   39h
kube-public       Active   39h
kube-system       Active   39h
#查看 kube-system 名称空间中的 Pod 信息
[root@master ~]# kubectl -n kube-system get pods
NAME                             READY   STATUS    RESTARTS      AGE
etcd-master                      1/1     Running   0             39h
kube-apiserver-master            1/1     Running   0             39h
kube-controller-manager-master   1/1     Running   0             39h
kube-scheduler-master            1/1     Running   0             39h

create

# 创建名称空间资源对象[root@master ~]# kubectl create namespace worknamespace/work created
# 查看名称空间[root@master ~]# kubectl get namespacesNAME              STATUS   AGEdefault           Active   39hkube-node-lease   Active   39hkube-public       Active   39hkube-system       Active   39hwork              Active   11s

run

# 创建简单 Pod 资源对象[root@master ~]# kubectl -n work run myhttp --image=myos:httpdpod/myhttp created
# 查询资源对象[root@master ~]# kubectl -n work get pods -o wideNAME     READY   STATUS    RESTARTS   AGE   IP           NODEmyhttp   1/1     Running   0          3s    10.244.2.2   node-0002
# 访问验证[root@master ~]# curl http://10.244.2.2Welcome to The Apache.

describe

# 查看资源对象的属性信息[root@master ~]# kubectl describe pod mywebName:             mywebNamespace:        defaultPriority:         0Service Account:  defaultNode:             node-0001/192.168.1.51... ...Events:  Type    Reason     Age   From               Message  ----    ------     ----  ----               -------  Normal  Scheduled  16m   default-scheduler  Successfully assigned default/myweb to node-0001  Normal  Pulled     16m   kubelet            Container image "myos:nginx" already present on machine  Normal  Created    16m   kubelet            Created container myweb  Normal  Started    16m   kubelet            Started container myweb
# 查看 work 名称空间下的 pod 信息[root@master ~]# kubectl -n work describe pod myhttpName:             myhttpNamespace:        workPriority:         0Service Account:  defaultNode:             node-0002/192.168.1.52... ...

logs

# 访问服务,并查看日志[root@master ~]# curl http://10.244.1.3/info.php[root@master ~]# curl http://10.244.2.2/info.php... ...# 查看 myweb 日志[root@master ~]# kubectl logs myweb 2022/11/12 18:28:54 [error] 7#0: *2 open() "/usr/local/nginx/html/info.php" failed (2: No such file or directory), client: 10.244.0.0, server: localhost, request: "GET /info.php HTTP/1.1", host: "10.244.2.12"# 查看 myhttp 日志[root@master ~]# kubectl -n work logs myhttp[root@master ~]#


举报

相关推荐

0 条评论