1. K8s常用命令操作
  2.  
  3. 一、kubectl命令补全
  4.  
  5. master安装命令补全,并临时生效
  6.  
  7. yum install -y bash-completion
  8. source /usr/share/bash-completion/bash_completion
  9.  
  10. 、永久生效
  11. source <(kubectl completion bash)
  12. echo "source <(kubectl completion bash)" >> ~/.bashrc
  13.  
  14. 二、启动状态
  15.  
  16. master节点
  17.  
  18. 更改配置文件,重新加载
  19. systemctl daemon-reload
  20.  
  21. 启动master相关组件
  22. systemctl start kube-apiserver
  23. systemctl start kube-controller-manager
  24. systemctl start kube-scheduler
  25.  
  26. 停止master相关组件
  27. systemctl stop kube-apiserver
  28. systemctl stop kube-controller-manager
  29. systemctl stop kube-scheduler
  30.  
  31. 重启master相关组件
  32. systemctl restart kube-apiserver
  33. systemctl restart kube-controller-manager
  34. systemctl restart kube-scheduler
  35.  
  36. 查看master相关组件状态
  37. systemctl status kube-apiserver
  38. systemctl status kube-controller-manager
  39. systemctl status kube-scheduler
  40.  
  41. etcd服务
  42.  
  43. 更改配置后,重新加载
  44. systemctl daemon-reload
  45.  
  46. 启动etcd服务
  47. systemctl start etcd.service
  48.  
  49. 停止etcd服务
  50. systemctl stop etcd.service
  51.  
  52. 重启etcd服务
  53. systemctl restart etcd.service
  54.  
  55. 查看etcd服务状态
  56. systemctl status etcd.service
  57.  
  58. worker节点
  59.  
  60. 更改配置后,重启加载
  61. systemctl daemon-reload
  62.  
  63. 启动worker端相关组件
  64. systemctl start kube-proxy
  65. systemctl start docker
  66. systemctl start kubelet
  67.  
  68. 停止worker端相关组件
  69. systemctl stop kube-proxy
  70. systemctl stop docker
  71. systemctl stop kubelet
  72.  
  73. 重启worker端相关组件
  74. systemctl restart kube-proxy
  75. systemctl restart docker
  76. systemctl restart kubelet
  77.  
  78. 查看worker端相关组件状态
  79. systemctl status kube-proxy
  80. systemctl status docker
  81. systemctl status kubelet
  82.  
  83. 三、kubectl 常用命令操作
  84.  
  85. 、帮助信息
  86. kubectl -h 查看具体操作参数
  87.  
  88. kubectl可以操作的资源
  89.  
  90. Valid resource types include:
  91.  
  92. * all
  93. * certificatesigningrequests (aka 'csr')
  94. * clusterrolebindings
  95. * clusterroles
  96. * componentstatuses (aka 'cs')
  97. * configmaps (aka 'cm')
  98. * controllerrevisions
  99. * cronjobs
  100. * customresourcedefinition (aka 'crd')
  101. * daemonsets (aka 'ds')
  102. * deployments (aka 'deploy')
  103. * endpoints (aka 'ep')
  104. * events (aka 'ev')
  105. * horizontalpodautoscalers (aka 'hpa')
  106. * ingresses (aka 'ing')
  107. * jobs
  108. * limitranges (aka 'limits')
  109. * namespaces (aka 'ns')
  110. * networkpolicies (aka 'netpol')
  111. * nodes (aka 'no')
  112. * persistentvolumeclaims (aka 'pvc')
  113. * persistentvolumes (aka 'pv')
  114. * poddisruptionbudgets (aka 'pdb')
  115. * podpreset
  116. * pods (aka 'po')
  117. * podsecuritypolicies (aka 'psp')
  118. * podtemplates
  119. * replicasets (aka 'rs')
  120. * replicationcontrollers (aka 'rc')
  121. * resourcequotas (aka 'quota')
  122. * rolebindings
  123. * roles
  124. * secrets
  125. * serviceaccounts (aka 'sa')
  126. * services (aka 'svc')
  127. * statefulsets (aka 'sts')
  128. * storageclasses (aka 'sc')
  129.  
  130. 、获取具体操作的帮助信息
  131.  
  132. kubectl get
  133. [(-o|--output=)json|yaml|wide|custom-columns=...|custom-columns-file=...|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=...]
  134. (TYPE [NAME | -l label] | TYPE/NAME ...) [flags] [options]
  135.  
  136. 、查看类命令
  137.  
  138. 获取节点相应服务的信息
  139.  
  140. kubectl get nodes
  141.  
  142. kubectl get pods
  143.  
  144. selector名来查找pod
  145. kubectl get pod --selector name=redis
  146.  
  147. 查看集群信息
  148. kubectl cluster-info
  149.  
  150. 查看各组件信息
  151. kubectl -s http://localhost:8080 get componentstatuses
  152.  
  153. 查看pods所在的运行节点
  154. kubectl get pods -o wide
  155.  
  156. 查看pods定义的详细信息
  157. kubectl get pods -o yaml
  158.  
  159. 查看运行的pod的环境变量
  160. kubectl exec pod env
  161.  
  162. 查看指定pod的日志
  163. kubectl logs -f pods/heapster-xxxxx -n kube-system
  164.  
  165. 查看pod
  166.  
  167. kubectl get pods --namespace kube-system
  168.  
  169. kubectl -n kube-system get po,svc -l k8s-app=kubernetes-dashboard
  170.  
  171. 查看svc
  172.  
  173. kubectl get svc -n kube-system
  174.  
  175. kubectl get services -n kube-system
  176.  
  177. kubectl get pods -n kube-system
  178.  
  179. 查看 服务分配到了哪个pod
  180.  
  181. kubectl get pod -o wide -n kube-system
  182.  
  183. 获取ingresshost名字,
  184. kubectl get ing -n kube-system
  185.  
  186. 在容器外查看k8s容器内部文件
  187.  
  188. kubectl exec -it jenkins-cd8d886f9-jg7bv cat /var/jenkins_home/secrets/initialAdminPassword
  189. 73bbc8f776d141c982da7919006f0785
  190.  
  191. 、操作类命令
  192.  
  193. 创建资源
  194. kubectl create -f 文件名.yaml
  195.  
  196. 重建资源
  197. kubectl replace -f 文件名 [--force]
  198.  
  199. 删除资源
  200. kubectl delete -f 文件名
  201. kubectl delete pod pod
  202. kubectl delete rc rc
  203. kubectl delete service service
  204. kubectl delete pod --all
  205.  
  206. 强制删除
  207. kubectl delete pod coredns-65f84dd9fc-57p42 -n kube-system --grace-period= --force
  208. kubectl delete pod coredns-65f84dd9fc-57p42 -n kube-system --now
  209. kubectl delete rc kube-dns-v20 --force=true --grace-period= --namespace=kube-system
  210.  
  211. pod无法删除解决
  212.  
  213. 重启这个pod对应的node上的docker
  214.  
  215. 实在不行,重启这三台
  216.  
  217. 重启不管用 就改下delpoment的名字重新创建
  218.  
  219. 四、kubectl进阶命令操作
  220.  
  221. kubectl get:获取指定资源的基本信息
  222.  
  223. kubectl get services kubernetes-dashboard -n kube-system #查看所有service
  224. kubectl get deployment kubernetes-dashboard -n kube-system #查看所有发布
  225. kubectl get pods --all-namespaces #查看所有pod
  226. kubectl get pods -o wide --all-namespaces #查看所有pod的IP及节点
  227. kubectl get pods -n kube-system | grep dashboard
  228. kubectl get nodes -lzone #获取zone的节点
  229.  
  230. kubectl describe:查看指定资源详细描述信息
  231. kubectl describe service/kubernetes-dashboard --namespace="kube-system"
  232. kubectl describe pods/kubernetes-dashboard--g6q8c --namespace="kube-system" #指定类型查看
  233. kubectl describe pod nginx-772ai #查看pod详细信息
  234.  
  235. kubectl scale:动态伸缩
  236. kubectl scale rc nginx --replicas= # 动态伸缩
  237. kubectl scale deployment redis-slave --replicas= #动态伸缩
  238. kubectl scale --replicas= -f redis-slave-deployment.yaml #动态伸缩
  239.  
  240. kubectl exec:进入pod启动的容器
  241. kubectl exec -it redis-master--q47hh -n kube-system /bin/bash #进入容器
  242.  
  243. kubectl label:添加label
  244. kubectl label nodes node1 zone=north #增加节点lable值 spec.nodeSelector: zone: north #指定pod在哪个节点
  245. kubectl label pod redis-master--q47hh role=master #增加lable值 [key]=[value]
  246. kubectl label pod redis-master--q47hh role- #删除lable值
  247. kubectl label pod redis-master--q47hh role=backend --overwrite #修改lable值
  248.  
  249. kubectl rolling-update:滚动升级
  250. kubectl rolling-update redis-master -f redis-master-controller-v2.yaml #配置文件滚动升级
  251. kubectl rolling-update redis-master --image=redis-master:2.0 #命令升级
  252. kubectl rolling-update redis-master --image=redis-master:1.0 --rollback #pod版本回滚
  253.  
  254. 五、etcdctl 常用操作
  255.  
  256. etcdctl cluster-health #检查网络集群健康状态
  257. etcdctl --endpoints=https://192.168.71.221:2379 cluster-health #带有安全认证检查网络集群健康状态
  258. etcdctl member list
  259. etcdctl set /k8s/network/config '{ "Network": "10.1.0.0/16" }'
  260. etcdctl get /k8s/network/config

k8s常用操作命令的更多相关文章

  1. 【转载】Linux中常用操作命令

    说明:开始学习linux系统,为了方便查看,特转载一篇Linux中常用操作命令,转载地址:http://www.cnblogs.com/laov/p/3541414.html 正文: Linux简介及 ...

  2. Git常用操作命令与图解

    Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone g ...

  3. svn 常用操作命令

    svn 常用操作命令 检出 svn checkout http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名 svn checkout svn://路径(目录或文件 ...

  4. MongoDB(1):常用操作命令大全

    MongoDB常用操作命令大全(转) http://www.jb51.net/article/48217.htm 成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操 ...

  5. hadoop常用操作命令

    #############centos6.8IP常用操作命令#######################DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED ...

  6. 2018.4.23 git常用操作命令收集(转)

    Git常用操作命令收集: 1. 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v ...

  7. HBase常用操作命令

    HBase常用操作命令 1.进入HBase脚本客户端 #hbase shell #进入HBase脚本客户端 > whoami    #查看当前登录用户 > status           ...

  8. [转帖] K8S 常用命令

    k8s常用命令  原贴地址 查看集群信息: [root@kubernetes-master pods]# kubectl cluster-info kubectl cluster-info展示结果 k ...

  9. Storm常用操作命令及WordCount

    Storm常用操作命令 1.任务提交命令:storm jar [jar路径] [拓扑包名.拓扑类名] [拓扑名称] storm jar /export/servers/storm/examples/s ...

随机推荐

  1. 网络协议相关面试问题-http协议相关面试问题

    HTTP协议简介: 一些基本概念: 协议:指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则. HTTP协议:超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML ...

  2. Python Module模块

    模块 https://docs.python.org/zh-cn/3/tutorial/modules.html 模块的概念被高级语言广泛使用. Python的定义 一个包括Python定义和语句的文 ...

  3. Java常用类(二) Scanner类和大数类

    二.Scanner类 有C系语言基础的可能都比较熟悉scanf("%d",&a);和cin>>a;这种代码,也打开了程序交互的第一道门.因此,这些程序员开始学J ...

  4. 51nod 1172 Partial Sums V2

    题目 给出一个数组A,经过一次处理,生成一个数组S,数组S中的每个值相当于数组A的累加,比如:A = {1 3 5 6} => S = {1 4 9 15}.如果对生成的数组S再进行一次累加操作 ...

  5. sql 为空不做查询条件

    select * from usertable where 1=1 and (name=@name or @name='') and (page=@page or @page='')

  6. yii 创建模块module

    yii安装完成后的使用: yii也是单入口脚本, 入口文件为  http://hostname/web/index.php 使用模块: 在根目录下创建modules目录 在modules目录下创建模块 ...

  7. PHP回顾(面向对象)

    类中的成员属性不能够用函数为其赋值.public age = rand(1,100);//这是错误的: __get()   __set()  __isset() __unset() final 用来修 ...

  8. 学习CUDA--硬件的简单学习

    #目录 day0:硬件的简单学习 #0:写在前面的话 新年开始,一起学习了解一下CUDA的知识,做机器学习的,或者说研究机器学习深度学习算法的人如果只会用算法还是远远不够的,最好能够把一些基本的算法动 ...

  9. String,权限修饰符,方法,集合

    String String str1 = "dashu"; String str2 = "dashu"; String string = new String( ...

  10. ZAP-Queries【luogu3455】

    题目大意 有不超过\(50000\)个询问,每次询问有多少正整数对\(x\),\(y\),满足\(x\leqslant a\),\(y \leqslant b\),并且\(gcd(x,y)=c\).其 ...