00:00
欢迎大家继续收看上硅谷的Linux云计算视频,我是方老师。那上节课呢,我们已经把我们的K8S7给它安装完毕了,对吧,那这节课我们继续往后去看。那因为我们之前给大家说过,我们要采用一个私有的仓库进行我们的镜像的使用,那所以这节课呢,我们去把这个HUB给大家构建一下。这个HUB的系统呢,已经安装好了,并且刀口已经安装完毕了,那安装的方式跟我们之前在我们的K8S安装的方式是一模一样的。对吧,所以我就没有给大家再重复了,不去浪费这些时间时间了,浪费大家时间了,好,我们去打开一下dock的我们的DEMO文件,我们去看一下。这里有一点不一样,我在里面添加了一句话。对吧,也就是我们的安全的仓库地址,那这里指定了一个我们当前的域名,这是什么含义呢?我们默认的doc的仓库是一个HTPS的访问。
01:12
那在我们的环境中呢,我们没办法去给大家购买一个真正的证书,对吧?证书就是能够被其他厂商所认可的证书,这是需要花钱购买的,我们会自己做一个假的,或叫局域网内部的,那所以这个证书对于我们整个K8群来说呢,可能是一个危险证书,所以我们要告诉到克,诶,你不要相信它是危险的,它是安全的,你可以正常访问,加这么一句话即可,那也就意味着其他的这几个节点如果想使用的话,你也需要加这么一句话。好,那我们现在把它给夹一下。刀下的DEMO,杰森,我们去加一句话。注意哈,这里会有个逗号,别少保存对数。
02:04
那接下来呢,我们就直接重启我们的刀客即可。这边也一样。这个重启过程还是比较慢的,因为我们现在后台运行了很多的一些容器,对吧。好。那这样的话,每一个我们的K8S集群,他就都认可了我们的等会要做的一个假证书了,对吧?好,那这些准备工作都做完以后呢,我们都可以安装了,对吧,那接下来呢,我们要去安装我们的HUB了。那首先呢,我们需要把这个do compose给它扔进去。那为什么需要它,你可以关,就是可以去查看一下我们的上硅谷的之前的刀口的视频。
03:01
那里面给大家讲了详细的部署方案,我们在这里就稍微快一点。K8S调度的是刀客,如果刀客都没有学好的话,K8S是不建议大家提前学习的,一定要先掌握刀客,不要急,对吧?然后我们打刀扔进去。V do com bos,我们把它放在u logo下的并幕下,千金帽的I加X logo下的并下的,嗯,Do com bos,好。那这样的话,我们再把我们的HUB的安装的。压缩包给他扔进去。导入成功以后呢,我们就可以去解压了,Pass z叉VHUB。好,解压成功以后呢,我们去先去创建一些文件。
04:04
我们把声音关一下,有点吵是吧?好,首先呢,我们先去到我们的HUB目录下面去看一下,当然我们可以把这个HUB我们拿走,因为后期这个目录是不可以被删除的哈。原因是我们管理起来比较方便,我们可以到HUB录录像,我们去打开这里的有个叫做HUBCFG文件,对吧,好。第一个我们的域名,我们现在是hub.it硅谷点com。协议是IPS的对吧,因为刀和默认就是IPS协议,那存储的数据库它的密码是做的123,我们就不改了。那这些我们都是默认对吧,我们去把这个目录给它创建一下。好。后面就没什么需要去动的地方。那直接我们去创建一下这个存储的IPS证书的目录。
05:02
好,那接下来呢,因为我们的。HUB仓库是默认是HTPS的,我们改到hps了,对吧?刀口是默认是HTPS的,所以我们需要把这个证书给它创建一下,首先生成我们的C。15、一个密码。密码输错了是吧,尴尬。好,我们把它删除,重输一下。两次一定要一样的哈。然后呢,去创建出来一个证书的请求叫CSR。杠六杠K杠二它没问题,回车输我们之前私钥的密码。第一个输入我们的是国家名。Shut。是。组织。
06:00
It硅谷机构it硅谷。完全合格,域名叫hub.it硅谷点com。管理员邮箱。是否要改密码改名我们都不用了,对吧?好,那接着呢,我们去把这个私钥给它备份一下。然后呢,再去转换成我们的证书。这一步的含义是因为我们的dock里面啊,它在引导的时候是采用的是nnux当前端的我们的HUB,所以它在引导的时候,它在启动的时候,如果你的证书,也就是你的私钥和证书是有密码的话,就会出现问题,它引导不成功,所以我们要去退一下密码,这一波的含义就是把密码给它退掉。我们的私钥里就不包含密码了,失误。退出密码,退出密码以后呢,我们再去把拿这个证书请求去签名对吧,去签名签成我们的证书。
07:00
好,证书生成成功,那我们再把这个证书都给赋予一下。X权限,那这样的话我们就可以去引导了,再回到我们之前的目录,点杠in install sh回车。他开始检测我们的依赖,对吧?然后导入我们的HUB所需要的镜像,镜像呢,已经在这个目录中了,所以我们不需要去管它了。好,那我们先提前做一下措施。首先。每一个的主机的host文件有没有解析到我们的。没有是吧,我们添加一下。幺九二幺六八六六点一百hub.it硅谷点com添加到ETC下的追加哈,并不是替换哈,追加到ETC的host文件我们再看了看一下。没有问题对吧。你在每一个节点都执行一下。
08:01
我们看一下他自己有没有写。Cut ec下的house好他自己写了对吧,那然后呢,我们再在我们的Windows Windows中我们去填写一下。因为我们后期需要去浏览器去访问,对吧。S下的。ETC下的house。嗯。好,幺九二幺六八六六点一百HUB点。It硅谷点。com保存。有些人会说,哎,老师这个文件我打开以后修改不了,你可以去下载安装一个notepad加加,这里notepad加加好,那notepad加加呢,会去调我们的系统的授权指令,让这个host有权限去访问,用号用notepad加加打开即可,当然也可以在CMD里为这个目录去授权,也是没有问题的,但是这种会更简单一点,对吧。
09:05
好,那现在呢,我们先等他一会儿。好,启动成功了对吧。好,刀客杠A,我们看一下这里都已经正在运行了,我们稍微等一下,它有一些的初始化时间,那接下来呢,我们就可以去打开我们的浏览器访问一下了,访问的是hub.it硅谷点com。他告诉我这不是一个安全连接,原因是我们的证书是不是自己颁发的,那所以我们继续前往,那这样的话就可以打开我们的哈仓库了,对吧。默认密码是L密密,默认用户名是密,密码是HUB12345。打错了是吧哈。12345好,进来了,那密码其实在配置文件中已经声明给你了,VM点。
10:07
CFG。看这里。这里是不是告诉你了HUB的M密码,密码是多少?当然你可以在这里自己去修改,完全没有问题,好吧。好,那这样的话,我们仓库也有了,我们去看一下我们的这里的K8S到底能不能利用到这个仓库,那在K8S利用之前呢,他的刀口要先利用到,对吧,我们可以用do口去访问一下。比如docker login。访问的是什么呢?访问的是igtps的hub.it硅谷点comb,用户名是I密,密码是HUB。12345。打错了是吧,又打错了。好,告诉我登录成功了,那我们可以去推一个镜像看一下,我们去下载一个镜像do po汪洋Linux下的ma v。
11:17
我们稍微等一下,等他本地下载完了以后,我们把它推到仓库里,看我们的每个节点到底能不能用它。好,已经下载成功了,对吧,并且我们要推到镜像仓库里的话,它里面是不是有个说明说推送镜像,而你必须要命名为这个名称,那我们去改一下。好,Doer。他给。我们把这一个镜像改名为。
12:01
依然是唯一。那原来的叫什么呢?原来叫他复制下来重新打一个标签对吧。然后我们再把这个镜要推上去,刀扑。好,那我们去刷新一下看一下。有了吧。好,那有了以后,因为这个仓库是公共的对吧,公开的,所以大家都可以不用输密码去访问即可,那这样的话,我们接下来去在K8S中启动一些pad,看一下能不能利用到叉,那为了防止这一个node是不是已经有这个镜像了,有这个镜像文件了,对吧?我们把这个镜像文件给它删掉。我们do r mi。杠F删除我们的map。删除我们的。
13:00
两个对吧,因为他两个进阶的都是同一个文件,只不过是两个标签而已。好,都删除了,那如果我现在要去启动pod的话,能够从这里去拖拽下来,你可以看到现在的下载次数有吗?应该有吧,下载次数为零对吧?到时候我们启动的话,你会看到这里的下载次数会增大,那接下来呢,我们可以去测试一下我们的K8S的集群是否可用,对吧?以及到底能不能跟我们的镜像仓库连接起来。好。那我们可以运行命令了,CL。叫wrong。运行的名称叫什么呢?叫n deploy deployment好,指定我们的镜像,当然如果你记不住的话,你可以撞杠,刚have看到了吗?这里是不是有对应的一些模板了,对吧?哎,告诉你怎么去运行这些pad,当然我们后期都是通过资源清单的方式去创建这种类型的资源,那现在呢,我们去临时通过它去创建一下啊。
14:01
Wrong。Deployment。好,然后呢,杠杠。等于什么镜像呢?我们看一下这些镜像的名称,我们用它的私有仓库的名称,对吧,复制一下。啊,过来,站过来。然后呢,杠杠pot告诉他,他暴露端口是八零,当然这里的暴露端口跟我们在刀口杠P里面的暴露端口的含义不一样哈,这里暴露不暴露端口,其实这个八零都能够正常被访问,因为他们处于一个扁平化的网络中,需要大家注意一下。那也就意味着这个杠杠泡上,其实你不写是可以的,杠杠。Icasette。对吧,去指定为副本唯一。好,然后呢。少了一个。然后呢,我们去回车即可。
15:02
那库CTR gate。你会发现这里出现了一个deploy deployment对吧?Deployment我们之前是说过它会链接啊S对吧?所以我们看S1有一个nnu deploy后面跟了一个哈希的随机值,对吧。好,那我们再去get。Running了。看到了吗?已经在运行了,当然你要想看这个容器的话,我们可以加一个杠O的。这里是不是多了很多信息啊,启动的时间,当前的IP地址是多少,以及node的在哪个节点运行的,在NO2运行的,那我们在NODE2上do PS-A,我们去看一下有没有一个叫恩尼克斯的。看这里。是不是正在运行啊,并且pause我们之前怎么说的,只要只要我们运行了一个炮了,就会有这个pus对吧,好。
16:06
没问题吧,都能匹配的上对吧?好,那如果你想访问它的话,就是car。跟上它的Co IP,因为是一个扁平化的网络,所以我们直接访问这个CIP是能够通的。看到了吗?我们可以看一下这个house the name还行吧?嗯。没问题吧?这是我们的炮的名称。看着里。一致的吧,为什么能获取到这个名称啊,其实就是查看的pad的。Pod里面的容器的house name能理解我的意思吧?House name是不是就设置的是我们这里的pod名称了?好,那这样的话,我们的这里面是不是就已经演示出来了,能够跟我们的私有仓库进行连接,我们可以在这里刷新看一下。下载厕所一对吧,那肯定是跟我们这里的私有仓库进行连接了,那以后呢,在生产环境中呢,大家在公司里面就可以自己用这个哈的私有仓库,这样的话是不是更能减轻我们的外网压力对吧?网络资源的压力,好,那我们接着可以去演示一下,到底我们的K8S好在哪里,比如有一天。
17:18
CDR delete,删除,删除一个pod,删除这个pod。我们把它删除了对吧。好,我们在库CT啊get po我们看一下。又多了一个,你会发现这个pod跟这个pod不一样哈,我们删除,原来运行的是这个pod,现在运行的是这个pod。那原因是什么?我们在这些在装的时候是不是告诉他了你的副本数目一定要为一?你现在把它一升,它的副本数目是不为一了,所以它保持它的副本数不为一,所以会运行一个新的出来,并且如果有一天你觉得哎,一个压力太大了,我能不能把它扩容一下呢?可以哭个CT啊。
18:00
该了。杠杠,Cars。等于,比如三个副本,Deployment的副本阵容,然后呢,是deployment副本下面的一个叫做N,这个deploy。不叫deploy deploy吗?我们看一下叫什么get deploy。啊叫n deploy对吧。我以我打的输了些了,我们将进行扩容,扩容成功以后我们C啊,我们看一下。三个了。杠O。WHY?NOTE1运行了两个,NOTE2运行了一个,对吧,都在running的状态好,那这样的话,比如我再随便删一个。我再随便算一个,那是不是也是同理的呀,他现在的期望值已经变为三了,你再一三他又不为三了,所以它又要运行出来一个新的,看到了吗。
19:03
G9SV6,那这个T9TCPD是不是就是新出的。没问题吧,好,那又会带来另一个问题,我们说现在我有三个副本,你想访问他怎么办?如果不教你别的方案的话,大家是不是现在只能运行一个新的ingx pod,然后通过up up STEM区域负载这三台,我去访问这个ing数,可以达到访问三台的目标。那这一步的操作呢,其实我们已经不用了,那接下来呢,其实我们是可以通过SVC去做到这件事情的,那我们可以Google CL。杠杠,Help,我们去看一下。我们现在要给谁创建help呢?我们是给我们的deploy创建,对吧,在这里是不是有一个模板了cityr deploy指定deploy的称,然后呢,它的原端口是八零,然后呢,目标想访问到哪里8000,对吧。
20:08
好,这里已经有一个模板了,对吧。NU80TARGET8000对吧?这里的含义这里是不是也说了,你要访问服务的八零端口,访问的是我们容器内部的8000,那我们可以复制下去对它进行更改。CLGSVC。Deployment我们去看一下,我们的deployment叫什么,我们去更改一下。好,我们这里的呢,叫ni deploy。端口是比如赶到我们的3万吧。因为80我不知道有没有在用,对吧,我们的目标端口是八零回车,我已经创建成功了,对吧,那我们过来访问一下科波CTLKSVC。那c10.97.154.59。
21:01
好冒号3万回车看到了吗?是不是已经访问到了,并且它是一个轮巡的机制,比如我们看一下host name还是怎么样。看到吗?不一样吗?在轮询吧,那IPVIDM-LN。Grape,我们去看一下当前的IP有没有。有这么一个吧。我们还是看全部的吧,是不是看不全啊,嗯,在哪里在。我们是幺五几啊,97154对吧,97154看到了吗。有这么一个规则。1.21.32.4,那我们过来看一下是不是这样,Cooper ctl get partt-N。默认的deft我们就可以不加了,对吧,那加一个杠O的,我们去看一下地址。哦,这是在node节点对吧,我们要。开启一个子窗口。
22:01
库珀CT。Get,感恩。不加了,搞white看一下。1.21.32.4。1.2 1.32.4是他们吧,对吧,所以这里的负载机制SVC的机制,其实就是调度我们的iOS模块,实现了我们的负载均衡或者暴露服务。那我们这里直接访问是不是都没有问题,当然这个地址啊,是一个内部地址,我们在外部访问肯定是不行的,对吧,比如我们可以过来访问一下,这个操作挺傻的是吧,肯定是不行的。这地址我连接不通嘛,那如果外部想去访问进来,那怎么办呢?我们可以看一下这里。它的默认方式是不是type等于class的IP啊?那这个IP呢,其实还有好多种类型,还有一个东西叫做note。我们CU ctl,我们去改SVC,改的是nnux的deployment的SVC,好,进去以后往下翻,这里是不是有个叫做trap类型,对吧,我把它改成no po。
23:12
网存推出,那我们再去get一下SVC,我们看一下。是不是给我了这么一个乱七八糟的端口啊,那我们可以去访问一下这个端口,我们去看一下。On state。IPT冒号查看一下。差不多是31859对吧。有了吧,这是什么含义呢?就是在我们的所有的节点都暴露这么一个端口与之访问,那我们过来访问一下10192。点幺六八六六点幺零下的。31859端口看到了吗?反应过来了吧,并且其实它是所有节点都暴露了,比如二零。
24:02
二零。暴露了吧。比如。二幺。是不是都能访问,也就意味着只要我们把我们的noted的类型给它改成我们的啊,把我们的SVC的类型给它改成noted,那这样的话我们就可以在外部访问到Co内部的服务了。是没有问题的,那这样的话,我们的整个K8S从我们的测试到我们的跟我们的呃,私有的仓库的连接是不是都已经完全了,对吧?好,那这节课呢,我们就先到这里,我们下节课再见。
我来说两句