k8s常用命令

k8s常用命令主要由查看类、操作类、高级进阶命令

查看类命令

1、获取节点相应服务的信息:

kubectl get nodes
kubectl get pods
按selector名来查找pod
kubectl get pod --selector name=redis

2、查看集群信息

kubectl cluster-info

3、查看各组件信息

kubectl -s http://fffmo.com:8080 get componentstatuses

4、查看pods所在的运行节点

kubectl get pods -o wide

5、查看pods定义的详细信息

kubectl get pods -o yaml

6、查看运行的pod的环境变量

kubectl exec pod名 env

7、查看指定pod的日志

kubectl logs -f pods/heapster-xxxxx -n kube-system

操作类命令

1、创建资源

kubectl create -f 文件名.yaml

2、重建资源

kubectl replace -f 文件名  [--force]

3、删除资源

kubectl delete -f 文件名
kubectl delete pod pod名
kubectl delete rc rc名
kubectl delete service service名
kubectl delete pod --all

kubectl进阶命令操作

1、kubectl get:获取指定资源的基本信息

kubectl get services kubernetes-dashboard -n kube-system #查看所有service
kubectl get deployment kubernetes-dashboard -n kube-system #查看所有发布
kubectl get pods --all-namespaces #查看所有pod
kubectl get pods -o wide --all-namespaces #查看所有pod的IP及节点
kubectl get pods -n kube-system | grep dashboard
kubectl get nodes -lzone #获取zone的节点

2、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详细信息

3、kubectl scale:动态伸缩

kubectl scale rc nginx --replicas=5 # 动态伸缩
kubectl scale deployment redis-slave --replicas=5 #动态伸缩
kubectl scale --replicas=2 -f redis-slave-deployment.yaml #动态伸缩

4、kubectl exec:进入pod启动的容器

kubectl exec -it redis-master-1033017107-q47hh /bin/bash #进入容器

5、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值

6、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

Kubernet imagePullPolicy:

Always 总是拉取镜像
IfNotPresent 本地有则使用本地镜像,不拉取
Never 只使用本地镜像,从不拉取,即使本地没有
如果省略imagePullPolicy 镜像tag为 :latest 策略为always ,否则 策略为 IfNotPresent

k8s集群维护可以参考k8s集群维护命令

赞(1) 打赏
特别声明:除特殊标注,本站文章均为原创,遵循CC BY-NC 3.0,转载请注明出处。三伏磨 » k8s常用命令

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏