00:00
大家好,欢迎大家继续收看上硅谷的Linux云计算视频,我是汪老师。那在之前的课程中呢,带大家学习了KS里如何去通过com map的方式去保存我们的配置文件以及一些数据,那这些数据呢,可以被导入到我们的pod内部,成为环境变量或者是我们所谓的文件,那以从而可以达到我们一个日日更新的这么一个目的。但是我们会发现,这些文件其实在我们的K8S里是以铭文的方式进行保存的,以铭文的方式去保存。那所以如果我们要有遇到一些,比如是一些密码文件啊,密钥文件啊,对吧,对于这种文件类型的话,如果通过map保存就不是那么合适了。那在K8S中呢,还有一种机制叫做我们的secret secret的保存方式,那这种方式呢,就更倾向于保证这些需要被加密的一些文件。好,那我们可以过来看一下,Secret解决了密钥、密码、token密钥等敏感数据的配置问题,而不需要把这些敏感数据暴露到镜像或者是pod Spark中。secret可以以W的方式或环境变量的方式去使用,也就意味着如果我们有一些密码需要被我们的pod所使用的话,那完全可以先把它存储在我们的secret里,然后在我们的pod运行的时候挂在进pod即可。
01:28
好,那cigarete有三种类型,第一种叫做sa,叫service account,用来访问ipi、酷IP,由CU去创建,并且自动会挂载到pod的这么一个目录下。这是一个什么含义呢?对于有些炮者来说,对于有些炮来说,它需要跟我们的库布的ipi进行接交互,他需要跟酷巴I进行交互。那比如我们的flano对吧,比如我们的弗flano,比如我们的corins,它肯定是需要跟ipi进行交互的。
02:05
那在交互的过程中,你要知道库ipi并不是谁都可以过来访问的,因为它是一切访问的入口,它的加密就等于集群的加密,那它的安全性至关重要。如果谁都能过来访问的话,就没有所谓的安全性可言了。所以对于pod的访问来说,那它的访问机制呢,就是sa挂载sa的方案。好,下一个。Upre upre是BASE64位编码格式的,用来存储密码和密钥的。也就意味着。这种方式呢,它是一个加密的方案,去存储的,加密方案呢,叫64位编码。当然这个虽然是BI4664位编码啊,虽然它是一个加密啊,但是它解密起来非常简单,能理解我意思吗?完全不需要密钥或者是密码等操作就可以直接解密,所以你可以理解为它的加密程度并不高,如果你真的想高的话,你可以自己去建立一个算法,用于专储和存储一些密码,需要注意一下,但它确实可以铭文的话,你是看不到密码的,需要通过一条命令去转储好。最后一个是我们的do砍Jason,那这种格式呢,专门去存储我们的do和瑞trade的认证信息,也就是我如果我有一些私有仓库,我去下镜像,对吧?需要一些私有的仓库去下个镜像,那这时候会有一些认证的方案,那这个认证方案呢,是由我们的刀口镜像仓库去完成的,那我们需要去进入对应的用户名以及密码信息,那完全就可以通过这种方式去保存我们对应的私有仓库的认证的用户名和密码,让他再去下载镜像的时候自动达成。
03:48
注入的这么一种方案机制,好,那接下来呢,我们一个一个去看一下,到底是怎样的一种效果,比如第一个sa sa呢,是不需要我们去管理和操作的,是由Co IP Co自动创建的,这里也说明了,对吧,我们简单的看一下即可,比如我们去运行一个po Co CR给个po,这里已经有了,对吧?我们进去E杠,跟上我们的po的名称,然后杠I杠杠并下的SH吧。
04:24
没有八是吧,那就RSH好到我们的run下的下secret下的,Co IO下的。目录下我们去进去看一下。好CAD啊,这我摸一下。CAD到rock。这里没有是吧,因为它不需要去访问到我们的ipi接口,我们去看一下我们的官方的吧,就是我们的本机的,比如我们的pro肯定是访问需要访问ipi的,那我们进它,它一定是有我们的map,那我们进去一下ec po的名称杠N突破system跟上它的名称空间杠it杠杠以下的bussh。
05:14
也没有关系,我们就并下了SH,好,C到这么一个目录中,C到wrong c到secret。好is,你会发现这里有个看对吧,看下count,我们看下到底是什么东西。好,看下STEM,这是一个目录,对吧,我们进入这个目录,我们在iOS看一下,有一个token,有个namepa,有个CRTCRT呢就是我们去访问到我们的I pipo的时候,因为它是一个默认是一个IPS的双向认证,所以证面也需要有证书,对吧,这就它的证书信息,好name space呢,就是我们的当前的在码的名称空间下,在Co city名称框下po。
06:13
也就是我们的一个认证的这么一个密钥信息。好,那由三个呢组成了我们的sa,那就是因为这三个东西呢,才可以让我们的CUBA的pro去访问至我们的ipi进行达成认证这么一个目的,好,这是我们的I sa在后面的安全的时候,我们会给大家去再去重新讲解一下,这里只是简单看一下,那它呢,我们是基本上是不太常用的,那最常用的是下面两种,我们看一下下一种up对吧?好,它是一个map类型,那要求value是我们的BA64位编码的格式,那如果我们想去进行一个ain和这个密码的保存的话,我们先要把ain和密码先以BAD64位加密以后,再把这个加密的值保存至我们的这么一个。
07:05
文件中呼叫做我们的一个secret中,好,我们先做一下。我们先把我们的Lin以BEST64位加密一下,你会发现它加密值一模一样的对吧?原因是同一个字符串,它的加密值在BEST64位加密的时候一定是一模一样的,看到了吗?一定是一模一样的,好,那既然是一定是一模一样的,那反解密是不是就很简单了,对吧?所以发了64位,你可以理解为就是表面上看起来是加密的,其实嗯,并没有什么加密可言,比如我们可以解密一下84 64,可看一下命令告诉这个是杠D吧。杠D上面写了解码数据对吧,杠地好,我们杠地。嗯,这是加密以后的值对吧?我们把加密以后的值复制一下,看到了吗?阿德米,这里是不是已经完成解密了,所以这个拜的64位加密啊,你可以理解为表面加密,表面兄弟而已,能理解我的意思吗?不要太信任他哈,好,那接下来呢,我们可以再把这个所谓的用户名等于密密码等于这么一个值给他保存为一个secret对吧?保存一个secret,那它的名称为my secret类型是que对吧?好,我们去创建一下。
08:32
M STEM cooper CR,杠F见没cooper c,可以看到这里已经有了一个我们的。呃,叫什么?My secret对吧?好,MY,并且你会发现这里有一个默认的default token。
09:03
这是我们的默认的民政空间下的,其实在任何的民政空间下都有,比如杠n system。他是不是也有一个叫做。稍等一下哈,我找一下。好,Ult token对吧?它有一个tken,也就意味着我们的K8S会被每一个名字下都默认创建一个sa用于我们的的瓜载,需要注意一下,好,嗯,那我们继续,那这个,既然我们secret可以建出来了,那我们看一下怎么去使用,我们可以将secret挂载到中,也可以将导入到我们的环境变量中,我们一个一个过来看一下,请看第一种对吧,好的类型,它的label标签是name,等于secret test,以及这个pod叫我们的secret test。好,Spake挂载了,挂载一个申申请一个券,对吧,券名叫S,那那这个券的使用方案呢,是S的使用方案,S的名称呢,叫my secret,也就是我们上面创建的这么一个secret,好,然后呢,有一个容器,容器使用的镜像是这么一个镜像。
10:13
好,然后呢,名称叫DB w mountt挂载的是我们上面声明的这个secret,挂载是我们的ETC secret目录,像read online呢,代表我们的只读对吧?好,我去使用一下,看一下能不能达到这么一个效果,YM pod一点。我们需要把这个镜像给改一下,对吧,我们没有这么一个镜像,我们用的是汪洋linus的这么一个镜像,好保存退出cooper CL up play-f port1cooper ctl port,你看一下这个呢,已经在运行了,对吧。好在创建对吧,好,已经运行了test,好我们进去看一下,突破CTR eec跟上我们的炮的名称杠it杠杠定下的SH,好我们挂载到哪个目录下了,挂载到ETC下的目录下。
11:12
好,C到这个目录下is是不是有个Una,有个password,并且你发现u name已经解密了l me,也就意味着虽然我们在创建的时候使用了BEST64位加密保存的,对吧,但是你在使用的时候它已经会自己完成解密。自己会完成解密,希望大家注意一下这个理论哈,好,下一个将secret导入到环境变量中,那它的使用方案其实跟之前比较类似了,对吧,就是一个英V,上面有个英V啊,英文的使用方案呢,英文的名称叫做test UR,那value from去导入的secret key reform,对吧,名称是my secret导入的那名是your name,也就是会把your name的值me赋予给test u。把我们那一个乱七八糟的这么一个密码赋予给我们的test password,我们看一下能不能实现。
12:07
那这样的话是不是就不需要在我们去运行pod的时候,以一个铭文的方式去声明一个GV,比如UR等于密,密码等于什么什么什么,那这样的话就不不太安全对吧?这样可以稍微安全一点。好,我们可以看一下EV退出EV点接麦,好我们去创建一下。名称是加一吧。别这样改了,改的乱七八糟的,我们把原来那个炮的给他删掉吧。啊,Delete touch刚刚啊。
13:02
我们稍微等一下。我们去重新创建一下EV点加ma,好,这个镜像我们还是要改一下。好,突破CD啊给。我们运行的名称是一个deploy面的运行方式,对吧?一个deploy的运营方式也就这两个,我们随便进一个即可。好突破CT eec杠,S杠杠定下的。SHIO到了,到了什么呢?到了我们的。
14:04
这里的贱名叫什么?叫past e?和test password对吧,到了pass艾me Dollar password,哎,不叫password吗?Pass password是吧?好,我们重新写一下,Pass password。对吧,那这是怎么去把我们的的,我们的什么方式导入成我们的文件,以及我们的环境变量,那还有最后一种就是拿我们的secret保存我们的docker的认证信息,仓库认证信息,也就意味着我们先要把我们的私有仓库给打开了,对吧?我们去看看效果,把我们的HUB给打开。终于用到它了是吧。
我来说两句