前言:
而今你们对“kubernetes删除node”大体比较重视,你们都想要了解一些“kubernetes删除node”的相关内容。那么小编同时在网络上搜集了一些对于“kubernetes删除node””的相关资讯,希望朋友们能喜欢,咱们一起来了解一下吧!kubernetes中设置master节点为不可调度:
kubectl cordon $node_ip
kubernetes中驱逐故障节点上的pod:
kubectl drain $node_ip --ignore-daemonsets --delete-local-data(删除本地数据需要谨慎操作)
遇到不能驱逐的,采取强制驱逐:
kubectl get pod -A - o wide | grep -w ${workernode_ip} >./podlist.txt
while read ns pod; do kubectl delete pod $pod $ns; done <./podlist.txt
deployment用来部署无状态的服务,statefulset用来部署有状态的服务。
有状态的服务管理的是持久化数据,无状态的服务只维护有限的状态信息。
无状态的服务比如web应用,有状态的服务比如分布式数据库。
无状态的业务不会在本地存储持久化数据。
在pod的spec里面指定nameNode,可以绑定pod到worker node节点。
绑定节点的pod不可漂移,当服务器故障之后,一般会处于pending状态,请求不会转发到这个状态的pod上。
~~~我是华丽的分隔线~~~
查看kubernetes pod的镜像版本:
kubectl get pod -n $namespace -o yaml | grep -i images
~~~我是华丽的分隔线~~~
镜像的导出和导入:
导出:
docker save 镜像:标签 -o /tmp/镜像名称.tar
远程拷贝镜像:
scp -P22 镜像名 远程IP:路径
导入docker镜像:
docker load -i 镜像名
~~~我是华丽的分隔线~~~
清除pagecache和slab分配器中的缓存对象:
echo 3> /proc/sys/vm/drop_caches
清除pagecache:
echo 1> /proc/sys/vm/drop_caches
~~~我是华丽的分隔线~~~
docker启动Django应用:
docker run -d -p 8002:8002 --name myblog -e MYSQL_HOST=192.168.116.168 -e MYSQL_USER=root -e MYSQL_PASSWD=123456 myblog:v1
进入docker 容器:
docker exec -it myblog bash
导入数据:
python3 manage.py makemigrations
python3 manage.py migrate
创建超级用户:
docker exec -ti myblog python3 manage.py createsuperuser
收集静态文件:
docker exec -ti myblog python3 manage.py collectstatic
~~~我是华丽的分隔线~~~
kubernetes对pod副本数减少,进行缩容:
kubectl get deploy -A> /tmp/deploy.txt
把所有pod副本数调整成1:
while read ns deploy ready utd av age; do kubectl scale deploy $deploy --replicas=1 -n $ns;done < /tmp/deploy.txt
恢复pod副本数:
while read ns deploy ready utd av age; do kubectl scale deploy $deploy --replicas=$av -n $ns;done < /tmp/deploy.txt
~~~我是华丽的分隔线~~~
设置node节点为不可调度:
kubectl cordon ${node_ip}
驱逐node节点上的pod:
kubectl drain ${node_ip}
kubectl drain ${node_ip} --ignore-daemonsets
kubectl drain ${node_ip} --ignore-daemonsets --delete-local-data
强制删除pod:
kubectl delete pod -n $namespace $pod_name --force --grace-period=0
使用循环强制驱逐pod:
kubectl get pod -A -o wide | grep -w ${node_ip}> /tmp/podlist.txt
while read ns pod; do kubectl delete pod $pod $ns;done < /tmp/podlist.txt
~~~我是华丽的分隔线~~~
kubernetes设置节点不可调度pod:
kubectl cordon ${node_ip}
kubernetes设置恢复节点调度:
kubectl uncordon ${node_ip}
鼓励的话语:四海之内皆兄弟!
标签: #kubernetes删除node