是k8s集群的命令行工具,通过kubectl能够对集群本身进行管理,并能够在集群上进行容器化应用的安装部署;
kubectl [command] [TYPE] [NAME] [flags]
kubectl get pod pod1 kubectl get pods pod1 kubectl get po pod1
kubectl get pods
【todo 待拓展】
Pod是k8s系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在k8s上运行容器化应用的资源对象,其他的资源对象都是用来支撑或扩展Pod对象功能的,比如控制器对象是用来管控Pod对象的,Service或者Ingress资源对象是用来暴露Pod引用对象的,PersistentVolume资源对象是用来为Pod提供存储功能等等,k8s不会直接处理容器,而是Pod,Pod是由一个或多个container组成的。
Pod是k8s最重要的概念,每一个Pod都有一个特殊的被称为"根容器"的Pause容器。pause容器对应的镜像属于k8s平台的一部分,除了pause容器,每个pod还包含一个或多个紧密相关的业务容器。
资源共享
一个pod中的多个容器可以共享存储和网络,可以看作一个逻辑的主机
一个pod中的多个容器可以共享存储卷,这个存储卷会被定义为Pod的一部分,并且可以挂载到改pod里的所有容器的文件系统上
生命周期短暂
当pod所在节点发生故障,那么改节点上的pod会被调度到其他节点,需要注意的是,被重新调度的pod是一个全新的pod,跟之前的Pod没有关系。
平坦的网络
K8s集群中,所有的pod都在同一个共享网络地址空间中,也就是说每个pod都可以通过其他pod的IP地址来实现访问