Kubernetes 命令
完整命令使用手册
创建
1
kubectl create namespace NAMESPACE
1
kubectl create -f xxx.yaml
将某个 yaml 文件应用到某个 Namespace 上
1
kubectl create -f xxx.yaml --namespace= NAMESPACE
1
kubectl run NAME --image= IMAGE --replicas= 1 --namespace= NAMESPACE
查看
kubectl get 命令如果不加参数将仅显示属于 default 命名空间的资源对象
1
2
3
4
5
6
7
8
9
10
kubectl describe nodes NODENAME
# Node 的名称、标签、创建时间等
# Node 的运行状态:磁盘空间(DiskPressure)、内存(MemoryPressure)、网络(NetworkUnavailable)、PID资源(PIDPressure)全部正常则设置Node为Ready
# Node 的主机地址和主机名
# Node 上的资源数量:Node 的可用资源,包括 CPU、内存数量、最大可调度 Pod 数量等
# Node 可分配资源类:Node 当前可用于分配的资源量
# 主机系统信息:主机 ID、系统 UUID、Linux kernel 版本号、操作系统类型与版本、runtime 版本号、kubelet 与 kube-proxy 版本号等
# 当前运行的 Pod 列表的概要信息
# 已分配的资源使用概要信息,如资源申请的最低、最大允许使用量占系统总量的百分比
# Node 相关的 Event 信息
1
kubectl describe pod PODNAME
1
kubectl get pod -o go-template= '{{range.status.containerStatuses}}{{"\r\nContainer Name:"}}{{.name}}{{"\r\nLastState: "}}{{.lastState}}{{"\r\n"}}{{end}}'
1
kubectl describe quota ResourceQuotaName --namespace= NAMESPACE
1
2
3
4
5
kubectl get deployments ( --all-namespaces)
# DESIRED: Pod 副本数量的期望值
# CURRENT: 当前 Replica 的值
# UP-TO-DATE: 最新版本的 Pod 副本数量
# AVAILABLE: 当前集群可用的 Pod 副本数量,存活数量
1
kubectl describe deployment podname --namespace= NAMESPACE
1
kubectl get rs ( --all-namespaces)
查看 Deployment 的 ReplicaSet 的详细信息
1
kubectl describe rs PODNAME --namespace= NAMESPACE
查看 Namespace 中的 LimitRange
1
kubectl describe limits LIMITSNAME --namespace= NAMESPACE
1
2
3
4
kubectl get svc SERVICENAME -o yaml
# spec.ports 的 targetPord 用来确定提供该服务的容器所暴露的端口号,即业务进程在容器内的 TCP/IP 接入端口
# spec.ports 的 port 定义了 Service 的虚端口
# 如果定义服务时没定义 targetPort,则默认 targetPort 和 port 相同
修改
1
kubectl scale rc PODNAME --replicas= 3
1
kubectl label nodes <node-name> <label-key>= <label-value>
Licensed under CC BY-NC-SA 4.0