#查看节点
kubectl get nodes
#查看核心组件
kubectl get cs
#查看所有pod
kubectl get pod --all-namespaces
#查看命名空间kube-system下的pod
kubectl get pods -n kube-system
#利用yaml文件创建或者删除资源
kubectl create -f <文件名>
kubectl delete -f <文件名>
#查看未启动pod
kubectl get pods -n kube-system | grep -v Running
#yaml语法
--- 文件之间的隔断
apiVersion api版本
kind 资源类型
metadata 资源元数据
replicas 副本数量
selector 标签选择器
template Pod模板
metadata Pod元数据
spec pod规格
containers 容器配置
#tab自动补全命令
source /usr/share/bash-completion/bash_completion
source <(kubectl completion bash)
echo "source <(kubectl completion bash)" >> ~/.bashrc
#直接查看pod的yaml文件
kubectl get pod kube-proxy -n kube-system -oyaml
#详细查看pod状况
kubectl get pod -o wide
#对pod状态每秒实时监控
watch -n 1 kubectl get pod
#节点扩容命令
kubeadm token create --print-join-command
#创建数量为3的deployment
kubectl create deployment my-dep --image=nginx --replicas=3
#扩容到5
kubectl scale deployment/my-dep --replicas=5
#修改yaml文件
kubectl edit deployment my-dep
#容器镜像更新
kubectl set image deployment/my-dep nginx=nginx:1.16.1 --record
#容器镜像版本回退
kubectl rollout undo deployment my-dep --to-revision=1 #退回到第一个版本
#版本更新历史
kubectl -n zhang rollout history deployment web
#暴露端口(负载均衡:3个pod的ip暴露成一个service的ip)
kubectl expose deployment my-dep --port=8000 --target-port=80
--type=ClusterIP仅集群访问
--type=NodePort 集群外也能访问
(my-dep有三个nginx 端口为80 映射到8000端口)
#将主机文件保存到集群
kubectl create configmap redis-conf --from-file=redis.conf
#生成deployment的yaml文件
kubectl create deployment web --image=nginx -o yaml --dry-run
kubectl get deployment nginx -o=yaml > 1.yaml
#给node添加taints
kubectl taint node node-1 foo=bar:NoSchedule
#查看taints
kubectl describe nodes k8s-master |grep Taints
#删除污点
kubectl taint node node-1 foo:NoSchedule-
#查看pod的ip
kubectl get pod -l app=redis-1 --output jsonpath='{.items[0].status.podIP}'
kubectl exec deploy/redis-0 -- ping -c 1 `kubectl get pod -l app=redis-1 --output jsonpath='{.items[0].status.podIP}'`
k8s操作,自己总结的一些(运维必看!)
最新推荐文章于 2023-06-08 10:27:56 发布