K8S命令行工具Kubectl的实用命令
三 08 五月 2019
- 安装配置Kubectl:
- 下载kubectl,地址:https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl
- 下载完成后放置到本地$Path路径
- 修改本地
$HOME/.kube/config
,设置集群地址,凭证等信息
-
用kubectl获取k8s集群的基本信息:
$ kubectl get pods # 查看default命名空间下的pods $ kubectl get pods -n test # 查看test命名空间下的pods $ kubectl get deployments # 查看default命名空间下的部署 $ kubectl get services # 查看default命名空间下的服务 $ kubectl get pods -o=jsonpath="{range .items[*]}{'\n'}{.metadata.name}{':\t'}{range .spec.containers[*]}{.image}{', '}{end}{end}" # 查看pods里container的镜像和版本
-
查看资源情况:
$ kubectl top pod # 查看pods的cpu和memory资源占用 $ kubectl top node # 查看节点的cpu和memory资源占用和百分比
-
调试和进入Pod:
$ kubectl describe pod ${pod_name} # 查看某个pod的信息(例如在pod有问题可以debug) $ kubectl exec -it ${pod_name} bash # 进入某个pod的某个容器进行调试
-
通过端口转发调试接口:
$ kubectl port-forward pods/pod_name 30000:30000 -n cicd $ curl 127.0.0.1:30000
-
通过kube-api代理调试接口:
$ kubectl proxy $ curl http://localhost:8001/api/v1/namespaces/default/pods/${pod_name}[:port_name]/proxy/
-
Deployments手动伸缩Pods:
$ kubectl scale deployment <deployment_name> --replicas=3 $ kubectl scale deployment <deployment_name> --replicas=0
-
Deployments添加和删除HorizontalPodScaler,自动伸缩pod:
$ kubectl autoscale deployment <deployment_name> -name <hpa_name> --min=1 --max=8 --cpu-percent=50 $ kubectl get hpa $ kubectl delete hpa <hpa_name>
-
切换kubectl配置文件
$ kubectl config use-context <config-name>
分类: Kubernetes 标签: kubernetes docker kubectl