目录
(1)语法格式:kubectl [command] [type] [name] [flags]
(一)kubectl管理命令
(1)语法格式:kubectl [command] [type] [name] [flags]
-
command:子命令,如get、describe、delete、create等。
-
type:资源的类型,可以表示为单数或复数的形式。
- name:资源的名字,若省略不写,则显示所有资源信息。
- flags:指定可选标志或附加参数。
(2)集群信息查询 子命令
- help:用于查看命令或子命令的帮助信息。
- cluster-info:查看集群状态信息。
- version:查看服务器及客户端版本信息。
- api-resources:查看资源对象类型。
- api-versions:查看资源对象版本。
- config:管理当前节点上的kubeconfig的认证信息。
- ### kubectl config get-contexts 查看当前认证使用的用户及证书
(3)资源对象管理 子命令
- run:创建pod资源对象。
- 语法格式:kubectl run pod名称 [选项/参数] --image=镜像名称:标签
- 例:kubectl run mypod -it --image=myos:v2009
- get:查看资源对象的状态信息。
- 语法格式:kubectl get 资源类型 [资源名称] [选项/参数]
- 可选参数:-o name|wide|yaml|json #只显示名字;显示详细信息;以yaml或json语法格式显示资源对象
- 例:kubectl get pods -o name ;kubectl get pods -o wide
- describe:查看资源对象的属性信息。
- 语法格式:kubectl describe 资源类型 [资源名称] [选项/参数]
- 例:kubectl describe pods myweb
- logs:查看容器的报错信息
- 语法格式:kubectl logs pod名称 [选项/参数]
- 例:kubectl logs myweb
- 系统命名空间:( #查询其他名称空间的资源信息)
- default:默认的命名空间,不申明命名空间的pod都在这里
- kube-node-lease :为高可用提供心跳监视的命名空间
- kube-public:公共数据,所有用户都可以读取
- kube-system:系统服务对象所使用的命名空间;K8s的核心服务都运行在其中
- 例:查看命名空间:kubectl get namespace
- 查看命名空间中的资源对象:kubectl -n kube-system get pods
(4)资源对象管理 子命令
- apply -f (文件名称):创建/更新资源对象
- 例:kubectl apply -f mypod.yaml
- #使用资源对象文件创建pod时,apply可以完全替代create
- exec:在容器内执行命令
- 语法格式:kubectl exec [选项/参数] pod名称 -- 操作命令
- 例:kubectl exec -it mypod --/bin/bash
- cp:在容器和宿主机之间拷贝文件或目录
- 语法格式:kubectl cp 源地址 目标地址
- 例:kubectl cp myweb:index.html website/index.html
- delete:删除资源对象;可以删除所有的资源类型
- 语法格式:kubectl delete [选项/参数] 资源类型 资源名称
- 例:资源文件删除pod :kubectl delete -f myweb.yaml
- 镜像删除pod:kubectl delete pod myweb
(5)标签、污点管理命令
#在标签和污点策略中,都是以键值对的方式去表示,即 key=value,其中key和value都是用户自定义的。
-
语法格式:kubectl label|taint 资源类型 资源名称 key=value
- 设置标签:kubectl label pod mypod app=apache (例)
- 设置污点策略: kubectl taint node node1 k1=v1:NoSchedule (例)
- 查看pod标签:kubectl get pods --show-labels
- 查看指定pod的标签:kubectl get pods mypod --show-labels (例)
- 查看指定名称空间的pod标签:kubectl -n kube-system get pods -l key=value (例)
- 删除pod标签:kubectl label pods mypod key- (例)
- 查看污点策略:kubectl describe nodes|grep Taints
- 删除污点策略:kubectl taint node node1 k1=v1:NoSchedule- (例)