解码:
Azat Khadiev:您好。 我叫Azat Khadiev。 我是Mail.ru Cloud Solutions的PaaS开发人员。 来自南桥的Pavel Selivanov和我在一起。 我们正在参加DevOpsDays会议。 他将在此处进行演示,您可以使用Kubernetes构建DevOps,但很可能不会成功。 为什么这样一个令人沮丧的话题?
帕维尔·塞利瓦诺夫(Pavel Selivanov):她并不是很沮丧。 它旨在尝试借助技术来解决我们社区中的许多问题。 而且,我们尝试在技术的帮助下进行足够单方面的解决。 Kubenetes是一样的-这是负责的事情,可以说是Ops。 但是我们有一个伟大的概念DevOps工程师。 Kubernetes负责DevOps工程师。 同时...就像,您将创建Kubernetes,而开发人员根本不了解所有这些Kubernetes,也不知道它允许您做什么-一切对他们来说都是一样的。 尽管存在这样的事实,但Kubernetes包含现成的解决方案,扩展该DevOps方法的现成工具,使用该技术的Dev和Ops之间的通信。 我们很少利用这个机会。 由于我们甚至将当前的结构转移到所有这些DevOps工具(Docker,Kubernetes,云等),这一事实使这种情况更加恶化。 而且这些工具开始不按预期使用。 围绕所有这些技术,建立了可怕的拐杖。
Azat Khadiev:我知道。 有人觉得这个话题很大。 您认为目前公司最普遍的问题是什么? 使用Kubernetes。
Pavel Selivanov:使用Kubernetes时,最常见的问题是缺乏能力。 在IT中,这是一个普遍的问题。 总是没有足够的专家。 总是缺乏能力。 现在,Kubernetes缺乏竞争力。 虽然这仍然是市场上100%可用的现成解决方案,尽管它们可以使Kubernetes获得其中的一个,但没有必要的能力,但坦率地说,市场上很少有这些解决方案。 而实际上,它们都引发了一些问题。 不断地使用Kubernetes,我们正在寻找了解这一点的人。 我们正在努力推动其发展。
Azat Khadiev:考虑到当前IT方面的人员短缺。 一直如此。 现在有。 您如何看待这些条件? 什么是生活骇客?
Pavel Selivanov:生活技巧。 首先,从云的角度来看,生活是这样的-让我们为您提供部分能力。 我们将自己带走。 而我们将在自己内部做到这一点。 那就很好。 除了对于使用它的人来说重要的是要理解的...实际上,这是一个美好的时刻...但是重要的是要了解,如果您将部分能力交给某个地方的云或提供商,我们将获得通用的解决方案。 粗略地说,我们有一个执行非常具体的事情的数据库,并且它是专门配置的。 通过将此数据库提交到云,我们当然可以解雇曾经处理数据库集群的管理员-相同的Amazon或Google也会为我们做。 但是同时,相同的Amazon或Google不允许我们明确配置数据库。 大型项目,大型公司-无论如何,他们到了在生命的某个阶段使用云解决方案的地步,然后无论如何都要恢复到将能力带回自己的位置,因为需要更具体的内容。
Azat Khadiev:通用解决方案-是不好的解决方案还是可以在它们的基础上进一步完善?
Pavel Selivanov:不,通用解决方案绝对不错。 通用解决方案是好的。 只是通用解决方案...通用。 重要的是要了解。 这是采用通用脚本的方法。如果您围绕着通用脚本,通用应用程序,则可以构建公司的所有,所有逻辑-那么这很酷。 而且,如果工作的逻辑不同,但是您采用了通用的解决方案和通用的脚本,那么您就像在地球上拔猫头鹰一样开始就不好了。 但是,在普遍主义本身没有什么错。
阿扎特·哈迪耶夫(Azat Khadiev):如果这位管理员已经为您服务,那么他的辞职并不重要。 他可以做更多。
帕维尔·塞利瓦诺夫(Pavel Selivanov):是的,从他的日常活动中拿出来,把它们交给某个人,这样他们就可以在那里制作了。 这绝对是个好方法。 这里的重点是该标准解决方案是否适合特定情况。
Azat Khadiev:根据我的经验,我发现许多公司都在做同样的事情。 他们建立了一个kubernetes集群,考虑对其进行扩展。 所有这些操作都是非常可重复的。
帕维尔·塞利瓦诺夫:是的,当然。 而且,如果我们专门针对Kubernetes,那么有一点很重要,即目前市场上对Kubernetes的了解很少。 Kubernetes是如此的庞大的建设者,如果您将他带到公司,请准备好与他一起担任工程师,他将全职负责这一切。 而且很贵。 并尝试找到这样的工程师。 如果我自言自语,我真的不喜欢某种模糊的决定,因为我对Kubernetes的工作原理有足够而深刻的了解。 而且通常在云中缺少我要求的某种功能-他们对我说:“不,你不能。” 好吧,那么我很抱歉,但是我做得比云还好。 但是同时,如果您没有专职的工程师,那么您就不想为聘请Kubernetes的工程师付费,而您经常向他支付大量金钱以进行实验,那么云技术就是一个很好的解决方案。 因为至少有一些提供者本人已经狩猎过的人。 他们知道自己在做什么。 每天都需要这些基本的东西。
Azat Khadiev:您如何看待Kubernetes的现状? 五年和十年后,他会发生什么?
Pavel Selivanov:好问题。 我只知道社区中正在发生什么。 有人认为,除了Kubernetes之外,什么都不会剩下。 Linux早已发生这种情况。 也就是说,在Linux之外,还有一些人依赖BSD,他们很可能有非常具体的任务。 有些人在Windows下工作-Windows服务器-最有可能的是,他们也有特定的任务,或者仅仅是在这方面有能力,他们不准备离开那里。 无论如何,我们领域的标准是Linux。 有一种观点认为,Kubernetes将成为相同的事实上的标准,并且除了Kubernetes之外别无其他。 Kubernetes将不仅管理应用程序,它们的部署,部署,扩展。 通常管理一切。 现在他们在问:“是否可以在Kubernetes中填充数据库?” 我通常会说问题不在Kubernetes中,而在Docker中。 如果您准备好数据库将在容器中工作,它将如何工作。 他们回答我:“不,不,不,等等。 无需容器。 需要Kubernetes。 我们将其击败到节点。 也就是说,一切都会像现在一样,只有Kubernetes才能管理所有这一切。“这实际上是一个好主意。 也就是说,当您可以加入公司时,Kubernetes就是这样的事情,如果公司拥有Kubernetes和建立在其上的流程,那么对于一个了解这一点的人来说,他只需要几天就可以说:``我准备支持您。 完全可以 整体。 我了解它如何为您工作。” 与没有Kubernetes的方法不同,有些拐杖塞在这里,而另一些则是拐杖。 这里Ansible,这里Terraform。 有人写下了所有这些,花了六个月的时间才弄清楚。 在这里 因此,我不知道Kubernetes是否将成为事实上的标准。 今天,他看上去比他周围的决定更具野心和信心。
Azat Khadiev:嗯,与Linux的比较相当大胆。 他在一台机器上工作-就是这样。 Kubernetes可在许多机器上使用。 原因立即导致一百万种变化。 是的,它大胆。 就在您认为这种范例中存在竞争对手时。 例如,无服务器。 Kubernetes是否会受到此类竞争对手的威胁?
Pavel Selivanov:来自无服务器...(众笑)无服务器-我们对仍然有服务器的理解相同。 我最近听到了有关此主题的报告。 有一个人说那里仍然有服务器-这就是云。 但是我们必须始终了解云-那里还有一台服务器。 有真正的铁服务器,机架,并且它们安装在这里。 这是云。 最重要的是,有无服务器,没有服务器。 因此,问题在于无服务器Kubernetes是否会获胜? 在我看来,Serverless将离开Kubernetes。 对于提供无服务器的提供商,Kubernetes是一个非常方便的平台。 是的,也许在某个时候,我们将停止在原则上谈论Kubernetes,这是业务应用程序的常规开发。 但是在更深的地方,提供商和工程师将拥有Kubernetes,所有这些都将在其中实现。
Azat Khadiev:一个稍微不同的话题。 有这样一个概念,即全职工程师。 您如何看待他们? 它们甚至存在吗?
Pavel Selivanov:嗯...全职工程师...好吧,在我看来,有必要在这些东西之间进行区分...您知道,这里有T型人。 在当今行业中是否需要这些人? 是的,绝对需要。 我们需要有广阔视野的人,但同时又是某些狭窄领域的专家。 在这里,Fullstack工程师是一样的-做所有事情的人。 从前端开发,测试,后端,服务器和其他所有内容开始。 我不相信在一家大公司中,如果没有每个参数的专门知识,一个人就能做到这一点。 但是与此同时,仅仅具有狭special的专业知识(例如围绕此问题发生的事情),我一无所知-这在现代世界中也不起作用。 也就是说,在这里我要说...我将删除Fullstack一词。 我们非常需要工程师。 我们需要DevOps。 我觉得我们很快会重新考虑这一刻。 而且它们将不再需要。
阿扎特·哈迪耶夫:您能透露一下吗?
Pavel Selivanov:在我看来,我们行业中的结论是这些角色是Dev和Ops,它们很快就会消失。 如果我们需要专家并且需要狩猎...我们需要这样的开发人员,我们需要这样的管理员,我们需要DevOps工程师-现在我们有他们,现在将有生产工程师,SRE工程师。 尽管实际上我们需要的是我们想聘用的工程师。 背景基本上不重要。 因为...例如,SRE说他们总是有基础设施问题。 以及...让我们以开发人员为出发点-从开发人员是工程师的角度出发-将他们放入支持部门,他们将以与使用代码来解决业务问题相同的方式来解决这些问题,使用工程本身。
Azat Khadiev:从这个角度来看...如何采访这样的工程师?
Pavel Selivanov:哦,这是一个很好的问题。 他可能已经超出我今生的理解。 但我只举一个例子。 他与面试无关。 这是关于我们在俄罗斯的教育体系。 在IT方面,我们知道我们在俄罗斯针对IT世界的教育系统已经过时,这不是应该的。 我平均谈论巨大的俄罗斯-那里发生了什么。 那些绝对不准备明天毕业的人去Web开发,去一家技术公司。 这有点不好。 我们教给他们一些奇怪的东西,尽管我们似乎应该被教导要为Android,iOS,如何使用Git以及所有这些东西开发它们。 其实好像没有。 在学校里,父母多为你付款。 为您的一生。 您可以花五年的时间来深入学习。 并学习所有这些T形。 当您可以在研究所学习什么是版本控制系统,什么样的开发模式,如何测试整件事,什么样的数据库,平衡器。 并且,当您已经开始工作时,您便开始钻研特定区域。 因此,我们得到了工程师。 现在,我们在俄罗斯的教育体系比我们所看到的更接近这个真理。 他们给了我们很好的数学训练,给了很好的算法训练,他们给了我们一些编程语言的想法。 关于采访,在我看来似乎与此差不多。 我们需要采访工程师。 我们需要字母T的顶部为T形。 因为他得到字母T的垂直线。
Azat Khadiev:是的,很有意思。 大学毕业五年后,在我看来,我的学业有点奇怪和不足。 然后在工作过程中,当任务变得更深,项目更大时,我意识到没有,我被教导了非常重要的事情。 保罗,谢谢。 听到您的回答非常有趣。 听您的报告。
Pavel Selivanov:谢谢。