00:00
前面我为cooper fair这个系统里边创建了一些常用的账号,那接下来我们再来参照官方文档的其他事例来深入的使用一下,来看第三个这个例子,来创建一个word press的这个应用,发布到我们的cooper notice里边。那我们这个word press它呢,其实是一个PHP开发的一个个人博客平台,那如果是我们以前想要开发一个博客,我们可以自己来买一个Linux服务器,然后呢,安装上PHP环境,装上MYSQL,把这个word press程序呢往上一传,然后呢点一路安装,连接上MYSQL,那么这个博客呢就创建好了,所有的数据呢都存到SQL里边,也当然有一些文件存到我们这个Linux系统里边,那以后我们就来可以直接访问,当然有了我们这个库巴瑟菲尔。结合我们的cooper notice,我们就可以来做成我们这样的一个方式,那现在想要部署一个word price的这个博客应用,那有了docker容器化以后呢,其实我们不用cooper ne,我们可以这么来做,先docker下载第一个镜像,我们的word price,这个镜像一下载来一启动,接下呢,再来下一个镜像my circle下载来一启动,下来呢,让word press连上my circle,对里边的数据来进行增删检查,然后我们来访问word price就行了。当有了cooper notice,那我们的整个服务治理功能会更强大,它以port为单位,还能暴露service。我们现在呢,是这么一个应用,那么的word press我们准备创建,分为一个前后端,前端呢就是我们word press应用,后台使用MYSQL来作为存储,那word press应用我们先来创建一个deployment,比如我们以前cooper controller,然后呢,Create deployment,创建一次部署,那这个部署呢,相当于就会下载镜像。
01:50
我们来生成port来完成这一次部署,把word press部署来以后,将M可以把它封装成一个service,这个service呢,我们可以对外暴露,当然也可以对外不暴露,那们这个service它最大的好处就是跟我们整个库ne集群里边的其他service网络是互通的,所以我们先把word press来做成一个service,那同样的我们my circle也一样,先下载来镜像部署好,然后呢也做成一个service,把port做成一个service,然们这个word press就可以来连接上my circle来操作增删检查了,那我们这两步呢,大家都一样做,然后再接下来。
02:30
那么在整个安装过程中,或者整个使用过程中,会有一些非常关键的这个密钥数据。这个。秘密数据,比如我们的这个数据库的密码,Root用户的密码之类的,这些数据呢,我们不方便对外暴露,无论是写配置文件的方式,你在配置文件里边写了root用户的密码,还是什么方式,在链接上写了root用户密码,这样呢都不方便,所以呢,Cooper给我们还抽取了一个叫secret这个密钥的方式,我们cooper notice呢,其支持我们这个密钥,密钥呢就是我们把一些不方便我们暴露的这个数据,我们提前创建成一个密钥,后来要用的时候直接来引入这个密钥就行了,们整个期间不用任何我们这个铭文密码的传输。同样的MYSQL也一样,比如他的一些账号密码之类的,我们用这个密钥来进行创建存储。还有我们这个无论是my circle还是word price,他们自己本身就要存储一些数据,比如我price要存它的这个静态资源文件等等等等。而MYS数据库表的那些记录其实是对应磁盘里边的一些记录。
03:38
所以这些持久化存储呢,我们都称为每一个应用要申请一个PVC,这个PVC翻译过来就叫persistence storage,不是这个storage是persistence volume claim,就是我们这个持久化存储请求,也就是这个样子,我们以前呢,给大家还说过一个PV,我们再来说一个这个PVC,两个呢可以给大家对比一下这个PVPVC是什么?PV我们就称为persistent value,叫持久化券,这个持久化券呢,其实就是我们一段存储,这个存储都是我们集群中的这个资源节点,比如我这个目录能存20G数据,这个能存多少,这个能存多少,那这样呢,现在在集群里边可以给你分配一些存储,然后呢,你想要存储了,给我提交一个PVC,那就是用户的存储请求,我给你找一个合适的存储,然后跟你绑定起来,然后呢,你那就来进行一个存储,所以这个。
04:36
后来呢,只要我们想要持久化数据到我们整个集群里边,那我们都应该准备一个这个PVC,所以我们现在water price my circle,每一个人呢,都来要跟他自己绑定一个PVC,所以整个要发布word press的流程,整个架构呢就是这样,创建一个word press应用,其中有密钥要申请PVC my circle也一要下载镜像,然后封装service,有密钥要申请PVC,然后我们这一块呢,做完以后,那这个应用呢就可以自动启动了,但是有了库巴fair,这个听起来呢步骤复杂,实践起来还是非常快的,那么就按照这个步骤,我们先来做,下边我先来做第一步叫创建密钥,这个密钥存在的场景就是比如我们这个马赛环境变量里边的一些数据,Root用户的密码,这个密码呢,是属于一些敏感信息,如果我们这个铭文的方式表现在这个步骤里边,无论是你在可视化界面里边来敲铭文也好,还是我们在配置代码里边来输入铭文密码也好。这样呢都。
05:37
是不对的。这样很不安全,所以我们可以来创建一个密钥的方式来代替我们这个环境变量,以后想要用了环境变量,直接动态来取出这个密钥里边相关的值就能进行使用了,我们这个密钥的方式呢就更加安全,所以现在先来创建密钥,这个密钥呢,先来创建第一个是MYSQL密钥,其实我们接下来要创建的密钥有两个,一个是MYSQL密钥,一个是word price密钥,那都是什么,我们就来创建就行了,好,这个前置概念呢,就是这些,我们接下来创建密钥,那还是使用我们以前准备好的这个用户project regular,它呢具有对我们这个enter,硅谷我们这个工作空间的这个操作功能,好来登录进来。
06:21
现在我们登录了这个古丽曼这个企业空间,企业空间里边呢,我现在有一个项目叫鼓励商城,那想要做所有的事情,我们肯定得先进项目里边,项目里边呢就会有非常多的这个操作,操作里边比如有应用,我们想要发布一个应用,非常简单,在这点一个部署应用,咔咔咔两下一配置就完事了,然后呢,还有我们这个存储卷,我们也可以在这配置,我们刚才说的这个PVC,我在这儿呢可以配置,接下来我们先来配置一个这个叫密钥,那密钥里边呢,它之前有一个默认的,那自己来创建一个第一个密钥,密钥的名字呢,我们就叫my s secret,大然名字随便写,自己认识就行,然后呢,这个别名我们就叫MYS密钥。
07:05
们直接复制过来,我就不用求打字了,好下一步,那接下来们这个密钥呢,支持非常多种类型,比如账号密码密钥,还有仓库这种密钥TLS等等,那现在就使用默认类类型,那类型呢就是一个qol来点过来,它这一块呢,就提是我们是添加一个建设对的方式的密钥,那件是什么J,我们这个文档呢,提示你要件写这个my circle root password 123456,然后呢,值是123456,那为什么写这个。其实如果我们回顾到我们以前下在我们基础片开发的时候,我们安装马SQ,我们是以docker方式安装下载来镜像,我们用一条命令直接安装了马SQL,但安装以后呢,这条命令会指定一个马SQ的默认的root用户密码,相当为root用户初始化一个密码,所以我们这一块的环境变量这块写的这个值其实就是我们MYSQ,真正我们到时候运行用的这个环境变量,所以们这一块的值应该是去跟MYSQL镜像来确定的,所们去来doerb里边找到MYQL镜像,看他镜像要用哪些环境变量,我们就给他用哪些环境变量。
08:15
我们来搜一下马,So,镜像好点进来。来找一下它的这个环境变量,环境变量在下边来看一下,诶environment variables环境变量里边其实中就有一个叫mys root password,这就是我们这个root用户的密码,包括我们可以来看它首页这一块,我们这一块呢,其实我们之前诶是不是运行过这条命令呢?就是docker rock,如果是我们以前docker的方式,我们自己run,我们运行了一个MYS这个实例,这个容器实例呢,我们一开始使用这个参数来指定杠一指定我们这个初始化的这个参数,我们指定了环境变量root用户的默认密码是这个。这样呢,我们启动了MYSQL的这个容器以后,Root用户的密码就是我们指定的这个,所以我们现在呢,其实配的是它,我们为了让它不铭文传输,我们在这儿来添加一个环境变量,好123456,而且这些配置其实都是我们以前配置文件的方式啊,我们可以先来保存清单,我们后来再说这个事情,好这一块呢,我们把这个配置做好了,我们来点一个创建,那我们创建呢,这个密钥就成功了,其实我们再来点进这个密钥来看一下,密钥呢,这个K是我们的MySQL root password值,我们发现123456其实已经被加密了。
09:32
所以我们现在呢,就是这样一个现象,我们就不会存在我们整个铭文存储了。而且呢,我们大家注意现在我们存在这个密钥,其实我们cooper net里边集群里边的所有资源,我们都可以用这种方式创建出来,我们以前用过一个叫CU。Controller这个命令行有一个叫create,比如创建一个deployment,哎,这个创建我们以前呢,用各种命令创建过一些部署,但我们用过这个命令叫a play a play呢就是应用上一段配置,比如杠F,我们在一个压面里边指定了一些配置以后,我们库包controltrler直接将这些资源呢全部创建到我们cooper notice里边,所以我们这个密钥其实也是一种资源,在这里可以来看一下,这有一个配置文件点过来,这个文件就是大家熟悉的cooper的这个压ma文件,这个资源类型呢,现在是一个secret这个密钥,所以我们现在这个密钥呢,就准备好了,这个密钥一个准备好以后我们再来创建一个密钥,这个密钥呢,接下来就是我们第二个密钥,Word price的这个密钥,这个密钥呢?
10:41
K填的是这个what price DB password,我们就直接来配上what price secret,那么这个密钥呢,就来下一步,下一步它的这个值我们来填上,K呢叫这个其实可想而知,那么这一块呢,能配哪个件,我们其实应该按照那这块镜像来做比较合适,那在这块镜像如果我们来搜到了这个word price来可以看一下water price来搜到以后我来点进来。
11:11
在这个镜像里边呢,其中就会有,那这一块能用哪些环境变量,诶这一开始就说了,The following environment,那一开始的这个环境变量里边有这么多,其中我们配的这个叫word press DB password,它呢指的是我们word price连接我们数据库要用的这个密码,所以我们配的呢,其实是它,所以我们现在呢,给它的值是123456,那是因为我们MYS,它初始化我们用的密码都是123456,那你连接肯定是123456。来点一个保存,那这个表单呢就保存了,再点一个创建,这个资源呢,就创建好了,同样这个资源如果你有这段压面,你用我们之前的这个命令库controltrler,啊不对,杠F把这段压面呢,给这一应用也是没任何问题了,好,那现在呢,两个密钥我们就创建成功了,那接下来我们再来创建一个存储卷,这个存储券,我们这个word price,它自己呢,要把一些数据要存储起来,My circle呢也要存储起来,其实我们得创建两个PVC,它这一块呢,其实我们创建了一个PVC,下一次呢,这个MYSQL,它是又是用另外一种创建方式的。
12:22
这样都行,我呢现在就直接给我们来创建两个PVC就行了,一个是我们这一块好,我们在这要创建存储卷,那就在这点一个存储卷,点一个创建存储卷,第一个是word price,自己来持久化保存数据的这个券,相当于我们这个磁盘数据,然后呢,我们第一个word price这一块我们配置好,然后呢,我们使用open EBS,我们之前呢,装了一个这个open EBS,这个持久化卷的这个storage存储类型,那这个存储类型呢,你可以来指定它是一个read write ones,就是单节点读写,但也可以让多个节点只读,然后呢,也可以让多节点同时来读写,那现在呢,都是单节点读写,好,我们现在就来准备了这么一个,我们来点一个下一步这一块呢,都是使用默认的就行,这一块单节点读写一定要选上我们下一步,然后点一个创建,那第一个卷我们就创建完了,这个卷呢,就是我们word price要用的这个数据卷在这好第二个我们。
13:23
还可以为MYS再来创一个券,比如我们就叫MYSQ的PVC,这个PVC呢,在这来指定一个这个别名想指定的指定下一步马SPVC也是单节点读写实际,呃,顶多实际的数据来点一个下一步,然后我们来点一个创建,那么这个券呢,也就准备好了。好,那现在呢,看到这两个券呢,目前都是。被挂载状态等待中,因为这个券呢,只有有人使用了它,这个才是绑定好的,才是我们这个使用状态,咱们这个PVC创建好了以后呢,我们就先放在这儿,那接下来我们来参照文档做第二步,那个卷创建好以后,家人们就可以来创建一个word price整个应用了,好,那至此呢,我们先来停一阵,我们把这个基本信息我们就创建好了。
我来说两句