00:00
好,前面呢,我们理解了一下pod的概念,那接下来我们就在K8S集群里边,我们创建一些pod进行测试一下。首先我们来看pod,如果我们使用命令行创建,就可以使用这个命令,叫cooper controller wrong,然后呢,我们给这个pod呢起一个名字,我们叫my engines,然后我们这个pod呢,使用哪个镜像创建,因为pod里面是容器嘛,所以相当于K8S也要按照这个镜像先启动一个容器,Engines容器,然后把你这个容器呢,再封装成K8S要用的pod,所以这是我们这个命令其实跟docker启动一个容器的命令特别像,是不是叫docker run对吧,都是docker run,给个名字指定个镜像,好,那我们把这个命令呢,就来试一下,叫cooper controller cooper controller wrong wrong。呢,先写一个port的名,我们比如叫my in,然后呢,杠杠image来指定我们使用哪个镜像,你就使用in镜像回车,然后呢,这一块呢,就叫pod正在创建中,那我们可以pod已经创建了啊。
01:00
我们可以看一下get pot,而且我们创建的portt呢,默认在default名称空间,所以我get portt的时候呢,我不用写杠A,杠A是看所有名称空间的,但是default也能看见,但是呢就有点特乱,所以我可以直接写get portt get portt呢跟get portt-n defult是一样的,默认呢不写名称空间,就是获取默认名称空间的。好我们可以来看一下get a portt,因为每一个资源呢,它都有它所属的名称空间啊,那我们这个D呢,它给我们的提示叫container creating容器正在创建中,为什么是容器装正在创建中,因为我们这个pod里边呢,将来会启一个容器,这个容器呢是用N镜像起的,所以正在创建中呢,那一定是这个N镜像正在下载,对吧,它得下载完才能启动这个容器,所以呢,我们会看到这一块的显示呢,也是零杠一,零杠一的意思就是你的这个my inx这个pod,它里边呢。
02:00
有一个容器,但是呢,这还没有启动,所以零个就绪,所以你就在这儿等待一阵,他只要下载完就行了,而且呢,我们推荐大在用这个命令,有一个叫controller describe,如果你的这些应用呢,没有正在运行,你可以描述一下它到底怎么了,所以呢,Describe pod,我描述一下pod,哪个pod呢,就是我的pod,相当于呢K8S,就让你看一下你的pod到底它底层是怎么处理的,整块呢,这就有非常长的描述信息,前面呢我们大概都不看,我们主要看后边的,后边呢叫疑问S,叫事件,K8S呢,相当于会给你把pod的整个事件告诉你一下,首先第一个叫97秒前这个事件呢叫successfully assign,就是呢,我成功的把你的这个my in,这个应用我分配给哪个节点了呢?K8S02节点。
03:00
啊,相当于呢,我们现在三台机器,你让K8S呢给我起一个pod k8S呢,在K8S node2这个机器给我们起了一个pod,然后呢,那接下来它把这个pod呢分配给这个机器以后,接下来机器的这个厂长你看cooper对吧,就是K8S02机器的NODE2机器的这个cooper cooper late呢干一件什么事,叫po image ns想在这个零二机器的厂长先帮我们把NS镜像下载到这个机器,下载到这个机器以后呢,接下来叫successful po好,终于在26秒前,然后呢,这个机器的cooper ne帮我们把N镜像在一分钟多钟的时间内给我们下载成功了,下载成功以后呢,接下来cooper light按照它下载的这个镜像create container就要创建容器,再呢,创建一个MYS容器,然后呢,再在再在25秒前,然后呢,Cooper started containers。
04:00
Get它呢,启动了这个容器,只要容器启动成功,我们这个pod就OK了,Get pod可以看一下,好,Pod是不是就在running啊,而且呢,Pod呢,它是被分配在K8S note2节点的,所以呢,你一定在NOTE2节点才能看到,我怎么知道在NOTE2节点看到呢?我可以让大家全体运行这个命令叫docker PS,因为其实呢,我们这个虽然是pod在底层呢,还是以容器的方式运行的,只不过K8S呢封装了一下,所以我docker psps呢,检查正在运行中的容器,我gra,我来查一下有没有哪个容器它的名叫my in的,然后呢,我来回车,我让全部机器呢都来运行,也如果真的是按K8S所说的那样,那只会在我们哪个机器呢?NODE2机器把这个NG4有部署,所以呢,我们使用doer的方式,我们查看一下,好,我们看到master节点没有打印NOE1节点。
05:00
也没有打印,而NOTE2节点呢,打印出来了,所以我们的这个应用呢,大家也甭管它为什么整的是这样,但我们能看到这个应用呢,就是启动起来了,我们的这个NG,我们看到呢,容器叫DCC的,它是以NG的方式,哎不是以NG,以NG镜像启动的应用,这相当于就是我们起的N4,我们确实在NOE2节点了,包括呢,你docker images,你检查只有NOTE2节点下了N4,其他节点再来看docker images,你来检查它的其他节点是不是没有下N,好,这就是我们说的,我们使用一个命令创建了我们的这个K8S的一个pod,那我们也给大家补充了,如果你使用命令创建的话呢,当然不管用什么创建,你呢,可以使用这几个命令好你创建,如果你创建出来了,那你接下来呢,就可以查看pad查。
06:00
看portd,然后呢,查看portd呢,你使用这个命令CTRL了get portd对吧,这个get portd呢,这就是查看,默认就是查看default名称空间的啊查看大家备注一下查看default名称空间的pod,然后呢,包括你也可以描述pod,因为有时候呢,这个pod一直起不来,你可以大概的呢,我们包括后来K8S集群上我们排错都是是要使用这个命令describe pod,然后呢,写上你的你自己的你自己的po的名字,Po的名字呢,就是你库controltler get po的那一步打印出来的这个po的名字,那就在这儿,就是这个啊,这就是你可以让他描述一下,描述一下呢,最终你可以查看pod的整个状态,看一下是什么原因没记起来,但这些牌素呢,你得用的非常。
07:00
多了,可能有些原因呢,你就知道是什么原因了,拍起来就简单了。
我来说两句