K8S命令的梳理

2018-11-16  本文已影响0人  小孩真笨

K8S命令的梳理

kubectl是一个基础的K8S集群管理命令,可以实现对K8S资源的查询,创建,删除,更新,回退等各种各样的操作。由于其复杂的功能体系,命令灵活度又高,因此需要进行常见的一些命令和使用场景的梳理。

1 K8S命令的组成

K8S基础命令由三段式组成:

kubectl 动作 资源 [选项]

2 K8S命令的基础动作

常见的K8S命令有8个动作。分别是:

此外,kubectl还提供了一些高级的用法。在日常开发中除非特定的场景,否则一般不会用到。这些命令包括:

2.1 基础动作 get 的命令

get 是kubectl中最基础的命令,也是使用最多的命令。
该命令的使用格式如下:

get 资源 [选项]

因此,使用改命令需要首先分清楚,paas上到底有多少中资源类型。那么,paas上面有多少中资源呢?

2.1.1 get命令中的资源类型

请见下表(需要区分的是,kubectl工具中认为的资源,并不等同于k8s上面可以创建出的与pod相关的资源类型)

序号 资源 资源缩写
1 cloud cld
2 clusters 只有在联邦apiservers下才合法
3 componentstatuses cs
4 configmaps cm
5 daemonsets ds
6 deployments deploy
7 endpoints ep
8 events ev
9 horizontalpodautoscalers hpa
10 ingresses ing
11 jobs -
12 limitranges limits
13 namespaces ns
14 networks net
15 networkmappings nm
16 networkpolicies -
17 nodes no
18 persistentvolumeclaims pvc
19 persistentvolumes pv
20 physicalnetworks pn
21 processlifecycles plc
22 pods po
23 podsecuritypolicies psp
24 podtemplates -
25 replicasets rs
26 replicationcontrollers rc
27 resourcequotas quota
28 secrets -
29 serviceaccounts sa
30 services svc
31 statefulsets -
32 storageclasses -
33 thirdpartyresources -
34 clusterversions -

2.1.2 几个常用的get命令组合

使用get 命令需要注意的一点是:该命令会隐藏一些资源信息,如运行情况等。要显示这些信息,可以通过在命令最后加上--show-all 标记进行实现。

get 的几个常用命令组合:

  1. 显示所有的pod信息,格式如linux下的ps命令(精简)
kubectl get pods
  1. 全面显示pod 信息,增加 -o wide选项
kubectl get pods -o wide
  1. 查看单个指定RC名称的信息
kubectl get replicationcontroller web
  1. 使用json格式展示指定的pod信息
kubectl get -o json pod web-pod-13je7
  1. 把yaml形式的pod信息展示位json格式
kubectl get -f pod.yaml -o json
  1. 查看指定pod信息中的某一段
kubectl get -o template pod/web-pod-13je7 --template={{.status.phase}}
  1. 同时输出所有的RC和service资源实例列表
kubectl get rc,services
  1. 通过资源类型和名字获取具体的实例信息
kubectl get rc/web service/frontend pods/web-pod-13je7

2.1.3 get中的重要选项

  1. 跨命名空间查询对象
--all-namespaces=false
  1. 指定配置文件名
    使用-f或者--filename=[]

  2. 指定输出格式
    使用-o或者--output=''指定输出格式,输出格式必须为下表中的一个

  1. 显示所有的输出信息
    -a选项可以输出所有的信息。
上一篇下一篇

猜你喜欢

热点阅读