当前位置: 首页 > Linux

成为k8s老大,从这个操作开始(伪)-程序员学xx42k8s

时间:2023-04-06 03:18:16 Linux

Kubernetes-2-

这是yann的第97次分享
[TOC]今日状态:Yann,写公众号的人饿了。Part1反思昨天的内容被熊哥批评了。熊大哥说:“你只考虑你自己,你说我的想法,结论是半屏,你不考虑别人能不能看懂。”雅恩以为是这样,激动地说了出来。因此,今天我将更详细地向您解释昨天的概念。Part2KnowledgeDeployment昨天说的Deployment其实相当于一个订单或者需求列表。比如Yann需要创建一个3个容器副本的集群,可以用Deployment来创建。当然,这样的定义是不精确的。不过暂时可以这样理解:Deployment包括一个任务中容器的数量,使用的镜像,以及一些其他的属性。Yann觉得先有概念,再逐步完善,是一个很好的学习过程。Yann不喜欢接受新事物的开始,背负着很多包袱。正常的学习路线应该是先了解原理,了解主要部件,再细化实践。与其精雕细琢,不如记住每一个小知识点。结果过了半年,还是停在了第一章,已经爽了。演示以下视频将向您展示通过Deployment创建集群的过程。大家只要有个概念:什么样的操作会产生什么样的结果,无需深究细节。微信里看不到视频,请跳转观看。视频大约一分半钟,中途电脑卡顿,所以画面卡顿,请稍等。看完视频,你只需要了解以下两个知识点:部署类的配置文件就像资源列表,yann在里面定义了需要三个nginx容器。通过kubectl命令+配置文件,可以创建容器集群。其实视频中也定义了Service,验证了容器和服务的可用性。不过这些目前都不是很重要,不懂也罢。但是需要注意的是,Deployment并不是一个硬性的资源列表,而是资源动态的保证。比如一个node节点宕机了,只要Deploymentcontroller发现不满足定义的数量,就会在存活的节点上重新发起新的要求,保证满足设定的。既然弄清楚了CRDDeployment的用途,那么解释CRD就很容易了。Deployment是一个资源定义列表,定义了容器的数量和副本数。CRD是用户自定义一些资源列表。那么有人会问,“为什么要自己定义一个资源列表呢?”。这个问题问得好。Yann昨天也说了,单独定义resources是没有意义的,必须要用controller来处理list。所以我们定制了一个列表。当然,还需要一个自定义控制器来处理这个列表。在controller中可以加入各种业务逻辑来完成相应的控制,这就是我们的目的。弄清了前因后果,我们再来看看CRD项目的具体操作方法。昨天yann演示了一个CRD的配置文件,其实这只是第一步。将来会添加一些其他文件来构建特定的项目。然后我们会安装代码生成器,它会检测项目文件的结构,生成一些常用的代码和组件,然后我们在此基础上编写控制器。最后将编译好的二进制controller文件放到k8s服务器上,添加权限,指定配置文件即可使用。你为什么这么做?是因为k8s的处理过程还是比较复杂的,厂商为了方便用户会自动生成部分代码,而只有部分比较灵活的代码由用户自己完成。Part3总结下一篇,yann会带领大家整理出需要补充的文件和代码,然后尝试使用代码生成器生成相应的代码。准备编写控制器。把复杂难懂的东西简明扼要地讲清楚,真的很难。yann会尽量放慢速度,辅以图表和视频。尽可能多地说明理由。学习不能贪心,一定要弄清楚其中的原理。不然很容易陷入一个脚本跑起来,各种问题莫名其妙的境地。
最近不方便吗?
可以分享我们的文章吗~~
网站其他文章
深度科学(CNCF→)毕业设计|生态|安全|主厨|傀儡|VMware|开放堆栈|注册表|港口|泊坞窗|集装箱|RKT|车|印花布|法兰绒||库伯内斯|动物园管理员|领事|等等|钢筋混凝土|节俭|数据库|火花|风暴|火箭MQ|卡夫卡|兔子MQ|掌舵|Docker作曲家|流利的|弹性搜索|日志|杰格|Go语言(goweb)网站|请求|回复|模板|数据存储|处理JSON(godocker)smoke|限制资源|Python总结|ELK任务|部署ES|最小模式|集群|日志||输出|卡夫卡|消息定制|过滤|地理IP|神交|基巴纳|es头|使用|凝乳|Redis集群指南|脚本|迁移|硬化|坚持|表现|OrangeRedface="黑体">Kafka集群|故障排除|命令行|数羊——纪念100周年本文由博客发布平台OpenWrite发布!平台发布的文章格式与原文不同,不便之处敬请见谅。最新内容请关注公众号: