阿里云容器K8s入门训练营:阿里云容器服务Kubernetes版-应用与发布管理(三)
阿里云容器服务Kubernetes版-应用与发布管理(三)
相信通过刚才的学习,直播间的同学们应该已经了解到了应用发布的基本概念,知道应用发布的背景什么是应用发布。
同时应该也了解到了蓝绿发布、红黑发布、滚动发布还有灰度发布这些发布方案的原理,对于阿里云容器服务Kubernetes的灰度发布以及一些应用发布与管理,也有了一些自己的理解和认识。
接下来我们将通过一个小实验给大家演示如何通过阿里云的ack来进行一个版本的灰度发布。
六、实验操作
我们现在就进入到实验的演示界面,大家可以看到我现在通过 HELL 连接到了我所创建 K8S 集群当中的一个节点,这个节点是一台ECS,然后这个 ECS 已经安装好了相应的环境,并可以使用kupe CTL 这个工具可以连接到或者管理我们的K8S 集群。
大家现在可以看到我这个集群当中的一些信息,集群的一些信息,然后它现在是还没有去发布,无状态应用的,所以我们现在继续在上面发布两个版本的应用。
我已经提前把相应的命令和代码写好,然后直接可以复制粘贴就行,因为直接现在写可能需要很长时间,我们首先需要部署一个 deployment V1 的应用部署:我们先创建一个名为 APP ve 的 yaml 文件,我们复制粘贴上去。然后把相应的代码上传进去,大家可以看到上面的一些信息,它可以通过 80 HTTP 访问,这个应用名称叫做我的 APP VE,大家了解这些信息就可以,将它复制过来,我们可以检查一下有没有问题。
没问题我们就保存并退出,退出之后我们第二步部署这个应用,直接通过这个命令去将它进行部署。成功之后我们可以去我们这个集群里面看,我们这个应用就部署完成。
但是我们想要让流量能够访问这个应用,我们还需要创建一个 Ingress 去访问到这个应用,现在是没有,所以我们需要去创建,回到这里来,怎么创建?我们首先创建一个叫做 Ingress 唯一的一个 AM 文件, Ingress 就相当于是一个集群的负载均衡,我们在这个负载均衡上面将流量这个引到我们这个 APP V1 这个应用上面。我们创建这个样本文件,然后去复制相关信息。
我们可以看到,他这个时候将流量给到了我们的APPV1,这个是我们的集群的ID。
粘贴检查一下应该是没问题,然后我们保存并退出,同样的要将这个 Ingress 给它进行一个部署。这个时候部署完之后,我们再到这里来看,我们发现这里已经部署一个nginx应用,然后部署之后我们可以尝试的来访问,因为我们这里可以是主要没有这个外网,可以通过内网去进行一个访问,所以我们直接在这个节点上面去访问集群的资源。
通过这一个 CURl 进行一个测试,看能不能访问到这个应用。
我们复制这个访问是我们的这个集群IP,集群 ID 进行访问,这个时候我们可以看到它显示的是可以怎么样访问到我们的 V1版本, V1 版本现在能够部署成功,已经能够正常的访问之后,我们现在来部署一个版本2。版本 2 我们也是通过相同的命令进行创建,先写一个 yaml 文件,然后将这个文件复制到我们文本里面。
我们可以看到它这里面就是一个 APP 的 V2版本,然后它也是可以通过这一个 8 年当口 HTTP 访问,我们将它复制,然后我们可以再检查一下有没有错误,应该是没有错误, v2,没有问题我们就保存并退出,保存之后我们再去发布这个应用,通过 Gecko apply 这个 命令部署它。现在部署成功之后,我们再回到我们的控制台来看我们的无状态应用,现在可以看到是有两个版本的。
但这个时候因为我们没有使用 Ingress 给它进行导引流导入,如果现在再去访问集群,一直依然全部都是唯一版本,接下来我们就要去创建一个权重的,依照权重进行一个灰度发布的策略。
首先我们也是需要编写一个 Ingress 的 yaml 文件。我们去编写,然后在这个样本文件里面我们可以看到这些相关的内容。
我们主要观察是它会将一部分的流量,比如这里显示将这个 10% 的流量导入到 VR 版本,就是依据权重什么灰度发布到将这 12% 流量灰布,灰度发布到 VR 版本。那我们就来复制试,看它是否能将 10% 的流量给到它。然后保存并退出。
然后将这个 Ingress 进行一个发布部署。不过之后我们可以回到我们的这个来看这路由,这里现在就有一个将 10% 的流量导给到我们的 APP V2,通过这一个Ingress 这样的一个 Nginx 的负载均衡。现在灰度策略发布我们已经设置完毕,现在看是否能够生效。然后这里我们使用一个死循环的命令不间断的去访问我们这个集群。
大家可以看到大概每十次就会有一个V2,每十次大概就会有个VR,每十次就会V2,这样是不是就实现了我们将 10% 的流量导入到 V2 灰度发布的实验演示今天就到这里。
直播间的同学如果有对阿里云的Kubernetes版容器服务感兴趣,可以登录我们的试用网址,现在可以免费去领用我们阿里云的容器服务产品。
有这些云产品,不管是在我们的学习还是工作当中都是有很大帮助的,所以还没有免费领用的同学,现在抓紧免费领用相关的云产品。
如果在训练营的学习过程当中有疑问,或者想要领取相应的学习资料和实验资源的,请赶紧通过钉钉扫二维码加入群聊当中,我们的管理人员会一一的给大家进行一个答疑解惑,同时在现在推出了一个学习赢积分的活动,然后通过积分是可以兑换礼品的,在学习之余大家也不要忘了去领福利。