-
根底指令
- 通过 yaml 文件创建
kubectl create -f xxx.yml ** 更新时须要先 delete** kubectl apply -f xxx.yml ** 创立和更新可重复使用 **
- 通过 delete 删除
kubectl delete -f xxx.yml
- 查看 pod 形容
kubectl describe pod xxx -n kube-system
- 查看 pod 日志
kubectl logs xxx -n kube-system
- 删除利用
kubectl delete deployment xxx -n kebe-system
- 删除标签
kebectl delete pod -l app=www -n kube-system
- 扩容
kubectl scale deployment nginx-deployment --replicas=8
-
配置相干
-
导出代理配置
kubectl get ds -n kube-system -l k8s-app=kube-proxy -o yaml>kube-proxy-ds.yaml
-
导出 kube-dns
kubectl get deployment -n kube-system -l k8s-app=kube-dns -o yaml >kube-dns-dp.yaml
kubectl get services -n kube-system -l k8s-app=kube-dns -o yaml >kube-dns-services.yaml
-
导出 configmap
kubectl get configmap -n kube-system -o wide -o yaml > configmap.yaml
-
-
集群相干
- kubectl cluster-info 查看集群信息 - kubectl get componentstatuses 查看各组件状态 - kubectl cordon node1 设为不可调度状态 - kubectl uncordon node1 解除不可调度状态 - kubectl drain node1 pod 赶到其余节点 - kubectl taint nodes master.k8s node-role.kubernetes.io/master- - kubectl taint nodes master node.kubernetes.io/not-ready:NoSchedule - kubectl taint nodes master.k8s node-role.kubernetes.io/master=:NoSchedule
-
集群信息
- kubectl cluster-info - kubectl get nodes - kubectl get namespaces - kubectl get deployment --all-namespaces - kubectl get svc --all-namespaces - kubectl get pod - kubectl get pod -o wide --all-namespaces - kubectl logs podName
-
其它
-
创立 pod 或 srv
kubectl create -f development.yaml
-
查看将要运行的 Pod 的资源情况
kubectl describe pod podName
-
删除 Pod
kubectl delete pod podName
-
pod 有多少正本
kubectl get rc
-
扩大 Pod
kubectl scale –replicas=3 rc podName
-
删除
kubectl delete deployment kubernetes-dashboard –namespace=kube-system
kubectl delete svc kubernetes-dashboard –namespace=kube-system
kubectl delete -f kubernetes-dashboard.yaml -
进入 pod
kubectl exec -ti podName /bin/bash
-
获取节点相应服务的信息
kubectl get pods 按 selector 名来查找 pod:
kubectl get pod –selector name=redis -
查看集群信息
kubectl cluster-info
-
查看各组件信息
kubectl -s http://localhost:8080 get componentstatuses 或 kubectl get cs
-
查看 pods 所在的运行节点
kubectl gkubectl get pods -o yamlet pods -o wide
-
查看 pods 定义的详细信息
kubectl get pods -o yaml
-
查看运行 pod 的环境变量
kubectl exec pod 名 env
-
查看指定 pod 的日志
kubectl logs -f pods/heapster-xxxxx -n kube-system
-
-
操作类命令
-
创立资源
kubectl apply -f 文件名.yaml kubectl create -f 文件名.yaml
-
重建资源
kubectl replace -f 文件名 [–force]
-
删除资源
kubectl delete -f 文件名、kubectl delete pod pod 名、kubectl delete rc rc 名、kubectl delete service service 名
-
-
kubectl 进阶命令操作
kubectl get:获取指定资源的根本信息 kubectl get services
kubernetes-dashboard -n kube-system #查看所有 service
kubectl get deployment kubernetes-dashboard -n kube-system #查看所有公布
kubectl get pods –all-namespaces #查看所有 podkubectl get pods -o wide –all-namespaces #查看所有 pod 的 IP 及节点
kubectl get pods -n kube-system | grep dashboard
kubectl get nodes -l zone #获取 zone 的节点
kubectl describe:查看指定资源详细描述信息 kubectl describe service/kubernetes-dashboard –namespace=“kube-system”
kubectl describe pods/kubernetes-dashboard-349859023-g6q8c –namespace=“kube-system”#指定类型查看
kubectl describe pod nginx-772ai #查看 pod 详细信息
kubectl scale:动静伸缩 kubectl scale rc nginx –replicas=5 # 动静伸缩
kubectl scale deployment redis-slave –replicas=5 #动静伸缩
kubectl scale –replicas=2 -f redis-slave-deployment.yaml #动静伸缩
kubectl exec:进入 pod 启动的容器 kubectl exec -it redis-master-1033017107-q47hh /bin/bash #进入容器kubectl label:增加 label 值 kubectl label nodes node1 zone=north #减少节点 lable 值 spec.nodeSelector: zone: north #指定 pod 在哪个节点
kubectl label pod redis-master-1033017107-q47hh role=master #减少 lable 值 [key]=[value]
kubectl label pod redis-master-1033017107-q47hh role- #删除 lable 值
kubectl label pod redis-master-1033017107-q47hh role=backend –overwrite #批改 lable 值kubectl rolling-update:滚动降级 kubectl rolling-update redis-master -f redis-master-controller-v2.yaml #配置文件滚动降级
kubectl rolling-update redis-master –image=redis-master:2.0 #命令降级
kubectl rolling-update redis-master –image=redis-master:1.0 –rollback #pod 版本回滚
etcdctl 罕用操作
etcdctl cluster-health #查看网络集群衰弱状态
etcdctl –endpoints=https://192.168.71.221:2379 cluster-health #带有平安认证查看网络集群衰弱状态
etcdctl member list
etcdctl set /k8s/network/config‘{“Network”:“10.1.0.0/16”}’
etcdctl get /k8s/network/config