Kubernetes常用命令

## 查看namespaces
kubectl get namespaces

## 查看node
kubectl get node

## 查看node详细信息
kubectl describe node node001

## 查看namespace下的pod
kubectl get pod -n kube-system

## 查看namespaces下pod的具体信息
kubectl describe pod PODNAME -n kube-system

## 查看所有pod和namespaces和node
kubectl get pod --all-namespaces -o wide

## 命令创建deployment
kubectl create deployment tomcat-web --image=tomcat/tomcat:8.5 --replicas=2 --namespace=web

## node标签
### 添加标签: kubectl label nodes node001 node-role.kubernetes.io=master                |   kubectl label nodes node001 key=value
### 删除标签: kubectl label nodes node001 node-role.kubernetes.io-                      |   kubectl label nodes node001 key-
### 修改标签: kubectl label nodes node001 node-role.kubernetes.io=slave001 --overwrite  |   kubectl label nodes node001 key=new_value --overwrite
### 查看node标签: kubectl get nodes --show-labels

## 强制删除pod/namespace
kubectl delete pod PODNAME --force --grace-period=0
kubectl delete namespace NAMESPACENAME --force --grace-period=0

## 查看kube-system下所有的对象
kubectl get all -n kube-system

## 查看kube-system下单一对象
kubectl get svc -n kube-system

## 根据yaml文件创建或删除对象
kubectl apply/delete -f web.yaml

## POD扩缩容
1.查看deployment: kubectl get deployment
2.缩容:kubectl scale deployment/deployment_name --replicas=1
3.扩容:kubectl scale deployment/deployment_name --replicas=5

## 给节点node1增加一个污点,它的键名是key1,键值是value1,效果是NoSchedule
kubectl taint nodes node1 key1=value1:NoSchedule

## 移除添加的污点
kubectl taint nodes node1 key1=value1:NoSchedule-

## 驱逐node节点
* 1.停止调度:kubectl cordon node001  (恢复调度:kubectl uncordon node001)
* 2.驱逐节点上的pod:kubectl drain node001 --force(强制) --ignore-daemonsets(无视daemonsets管理的pod) --delete-local-data(如果有挂载数据,一并删除)
* 3.删除节点:kubectl delete node node001

posted @ 2021-11-12 16:08  徵玮  阅读(57)  评论(0)    收藏  举报