博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
kubernetes资源类型和kubectl命令总结
阅读量:2037 次
发布时间:2019-04-28

本文共 1636 字,大约阅读时间需要 5 分钟。

 

一、kubectl

1. kubectl是Kubernetes的命令行工具

通过它与Kubernetes进行交互,能够对集群本身进行管理,并能够在集群上进行容器化应用的安装部署。

 

2. 如何工作

  • 一个kubectl命令可以执行一个行动,如get、create或者describe
  • 一个行动可以在一个资源上执行,如Deployment
  • kubectl命令遵循这一语法格式: kubectl  an_action   a_resource   a_resource_name    –flags

 

二、资源类型

最常见的11种kubectl资源类型

  • pods (po)
  • nodes(no)
  • deployments (deploy)
  • replicasets(rs)
  • daemonsets(ds)
  • statefulsets(sts)
  • jobs
  • cronjobs(cj)
  • services(svc)
  • persistentvolumes(pv)
  • persistentvolumeclaim (pvc)

 

三、常用命令

1. kubectl get pods

在大部分情况下,名称和标志并不是必要的。例如,要获得关于现有pod的信息,你通常可以直接运行这一命令:kubectl get pods。

 

2.kubectl get all

all是指所有已存在的资源,kubectl get all显示运行中的Pod、Service、Deployment以及ReplicaSet的关键信息。

这是检查事物状态的首选命令,你可以将get和单个对象一起使用,并添加--watch标志以实时观察更新。

 

 

3.kubectl get events

kubectl get events显示了event的历史记录。它像是Kubernetes级别的日志,而不是容器级别的日志。

 

4.kubectl get pods –help

在命令之后输入--help以获取该命令的帮助。如,kubectl get pods –help

 

5. kubectl describe all

kubectl describe all显示大量与你的集群相关的详细信息,你也可以将describe与单个对象一起使用。这个命令在debug过程中将大有用处。

 

6. logs

logs命令需要一个pod名称。当在多个pod中时,使用-c my-container标志来指定一个容器。使用--previous标志来获取不再运行的容器信息。

 

7. kubectl exec -it pod_name /bin/bash

exec帮助你debug一个容器进程,它允许你通过带-it的伪终端在容器内执行进程。例如,要在my_pod中进入容器并运行Bash,请输入kubectl exec -it my_pod bash。

 

8. apply

这一命令可以通过文件名或控制台输入,对资源进行配置。

并且apply能够对集群资源进行声明式管理:如果资源不存在,apply将创建它;如果它存在,apply将更改它。

此外,apply还能够添加Service到适用的资源或者通过添加Pod自动化弹性伸缩的Deployment。

请注意,你可以使用create来创建一个Deployment并且使用expose创建一个Service。

但相对来说,无论对于文件本身还是之后需要重新使用来说,使用带有apply的YAML文件是更好选择。apply是创建和更新资源的“瑞士军刀”。

 

9.kubectl delete pod my_pod

kubectl delete pod my_pod这一命令可用于删除名称为my_pod的Pod。

要删除所有相同类型的资源,需要使用--all标志。

例如,使用kubectl delete rs –all可以删除所有ReplicaSet。

请注意,如果你尝试这一操作,那么要先删除Deployment,否则ReplicaSet将会重新启动。

 

 

 

 

 

 

 

 

 

转载地址:http://kokof.baihongyu.com/

你可能感兴趣的文章
maven配置环境变量
查看>>
spring-cloud服务网关中的Timeout设置
查看>>
HBase深度简介
查看>>
linux命令学习之:systemctl
查看>>
linux查看某个应用占用多少线程
查看>>
html移动的文字
查看>>
一份非常完整的 MySQL 规范
查看>>
Collections.unmodifiableMap():map得深拷贝
查看>>
Metrics教程
查看>>
Dropwizard官方教程(一) 入门
查看>>
Dropwizard官方教程(二) 核心
查看>>
es 搜索多个index和多个type下的数据
查看>>
@ConditionalOnProperty来控制Configuration是否生效
查看>>
springboot使用加密的配置属性
查看>>
聊聊 Java 中日期的几种常见操作 —— 取值、转换、加减、比较
查看>>
强大易用的日期和时间库 Joda Time
查看>>
vi中跳到文件的第一行和最后一行
查看>>
jasypt-spring-boot修改加解密用得盐的key
查看>>
Maven常见异常及解决方法
查看>>
Java 8简明教程
查看>>