陈奇网络工作室

管理Kubernetes需要知道的七件事

如果企业团队将Kubernetes视为不可思议的自动化技术,而不是需要维护和改进的工具,则可能会出现一些问题。 企业在管理Kubernetes时应该考虑行业专家的建议。

集装箱存储制造商Portworx的首席技术官兼联合创始人Gou Rao表示:“越来越多的团队在生产中使用Kubernetes来运行集装箱化工作负载和APP。 在零停机和安全性至关重要的情况下,Kubernetes已成为在生产环境中运行大型复杂APP消除的最简单方法。 虽然Kubernetes很复杂,并不适用于所有人,但对于需要在多个云平台和数据中心上运行的具有高度规模和复杂性的APP应用,Kubernetes是必不可少的。 ”

但是,无论它有多强大的自动化功能,Kubernetes都不是一个一成不变的工具。 许多企业开展的管理任务值得关注。

Harness公司的DevOps技术的传播者Ravi Lachhman说:“和任何平台一样,Kubernetes也需要管理和维护。”

同时,Red Hat公司的安全策略师Kirsten Newcomer表示:“安全应该尽快纳入企业流程。 新技术可以挑战现有的安全方法。 例如,数据收集和网络安全解决方案必须适应APP应用程序运行的环境。 最佳做法是不修复正在运行的容器。 这样,下次从映像中展开容器实例时,修补程序将会丢失。 这意味着企业需要重新评估其在DevOps上的投资,并加强安全性。 ”

长期管理Kubernetes的七种技巧

行业专家可以为企业团队和员工提供关于管理Kubernetes的七条建议。

1 .企业必须将Kubernetes视为重要投资

企业在笔记本电脑和沙箱环境中修改Kubernetes是一回事。 许多团队都是用这种方法开始的,但Minikube等工具使这种方法相对简单。 在生产环境中运行是另一回事。

Rao表示:“要正确采用Kubernetes,企业需要认真对待。 确实,所有的技巧实质上都来源于此。 ’我认为这是一个强大的软件引擎,需要认真对待。

Rao说:“该引擎希望根据企业提供的参数随时随地执行、移动和重新移动APP发布。 企业需要采用Kubernetes做什么,如何实现? 要从这些运营效率中获益,必须提供能够高效运营的环境。 ”

这意味着企业必须拥有适当的人员、基础设施、流程和文化。 许多公司希望Kubernetes能够解决扰乱环境管理的现有结构问题。

2 .协调员也需要管理和维护

一些团队,特别是刚起步的团队,可能认为Kubernetes会自己执行。 考虑到协调员的声明性和对自动化的重视,这实际上具有伪标准。 但是,Kubernetes和其他系统一样需要管理和维护。

Lachhman说:“每个企业都不一样,首次学习新的知识和经验会对组织产生长期影响。”

Lachhman提供了常见的维护和管理任务示例,包括:

修复或升级集群及其基础设施;

添加和减去工作节点

插入Istio和Traefik等服务网格工具;

建立了明确定义的命名空间分类法,特别是很多团队开始使用Kubernetes。

为什么名字空间很重要? 它有助于保护多个用户之间对容器中资源的访问。

3. Kubernetes要成功就需要适当的基础设施

成功实现Kubernetes长期管理的基本需求之一是采用适当的基础架构,例如混合云和阴天环境。

Rao说:“我看到团队犯的错误转移到Kubernetes。 他们想要敏捷性,但后来影响了Kubernetes提供推动最初决策的运营成果的能力。 这种做法有点自欺欺人。 在所有系统中,只有最小的敏捷性因素具有敏捷性,因此如果您在静态数据中心环境中运行Kubernetes,并且环境中存储的硬件和软件为不太敏捷的虚拟机环境提供了相同的硬件和软件,则”

Zettaset公司工程副总裁Maksim Yankovskiy表示,存储是基础架构的特定子集,可能需要进行规划。 例如,状态容器有一个特殊的存储注意事项。

Yankovskiy说:“为工作负载规划存储很重要。 根据工作负载的不同,可能需要专用存储,也可能需要针对每个APP位置调整存储参数。 不是所有的存储都需要由Kubernetes管理。 ”

Rao以存储为例。 这是团队采用Kubernetes时经常忽略的特定领域的示例。 此过程旨在变得更敏捷,可能会导致管理问题。

Rao说:“我们与许多在Kubernetes上运行数据服务的客户合作。 我听到的是‘试图在Kubernetes上运行MongoDB,但SAN有问题’这句话。” 虽然可以采用SAN,但它不是为Kubernetes的规模、密度和动态性而设计的。 为了充分利用Kubernetes,企业必须提供有效运行所需的基础架构。 仅仅提供静态基础设施是无法发挥其作用的。 ”

4. Kubernetes的可信度让企业过于自信

正如Rao首先指出的,Kubernetes的自我修复和可靠性功能是有吸引力的重要组成部分,但不要以它们为借口忽视运行状况。 例如,需要确保适当的监视。

Yankovskiy说:“不要依赖Kubernetes的可靠性功能来解决错误的服务。 Kubernetes成功地完成了自动重新启动失败的Pod的任务,并不意味着不应该监视APP应用程序运行时错误。 ”

随着企业的发展和壮大,日志记录是另一个重要的管理需求。

Yankovskiy先生说。 “由于Kubernetes群集非常分散,部署Kubernetes群集的第一步是规划集中的日志记录设施。 在监视性能或诊断问题时,无法扩展对各个节点的日志的访问。 良好的日志管理系统是强大的Kubernetes管理的基础之一。 ”

“部署在Kubernetes上的云的本机APP基本上是分布式APP,您可能对IT商店运行整体程序的体系结构缺乏丰富的经验。”Red Hat技术传道员Gordon Haff说Kubernetes轨道上的开源项目生态系统包括监测、日志记录和分布式跟踪。 但是,企业可能希望有一个已经与Kubernetes集成了工具的平台,而不是着手进行大型DIY项目。 企业员工还可能受益于新云本地APP应用程序开发实践培训。 ”

一般来说,如果团队将Kubernetes视为灵丹妙药,而不是像其他关键系统那样需要维护和改进的工具,团队往往会遇到问题。

“公司有多个管理员和定期更改的拓扑,使用Kubernetes时可能不会受到网络延迟的影响。 ”Lachhman说。

5 .实验和无聊之间需要定期调整

Lachhman指出,使用Kubernetes本身已经不具备实验资格。 该项目开展了约5年,现已成为稳定可靠的平台。 也就是说,考虑运算符、集群API、GitOps、上述服务网格工具等的生态系统正在发展。 Lachhman说,Kubernetes团队需要决定如何在创新和控制之间切换。 这是企业管理层的想法。

另一方面,很多团队在“无聊”方面可能会犯错误,特别是在招聘的初期阶段。

“您需要了解,通过保持简单的方法,CNCF中没有的最新测试版或规范信息组( SIG )不会损害企业的Kubernetes工作负载。 另一方面,企业不想错过可能解决实际问题的新功能。 因此,企业必须确定适合自己的方法,更多地探讨在Kubernetes内部经过实践验证的方法和新方法的选择。 ”

6 .刚性开发在容器和编织中不能很好地发挥作用

现代IT工具非常适合现代IT惯例和文化。 这可能是人员管理的问题,也可能是技术管理的问题。

Zettaset公司的Yankovskiy说:“Kubernetes是关于快速开发和部署的。 一些组织可能需要转向DevOps模式以实现Kubernetes的所有利益。 ”

这个原则也适用于APP应用本身。 不是所有的东西都适合集装箱和组织。 “提升和转移”并不总是将传统APP应用程序迁移到容器并与Kubernetes一起运行的最佳策略。 事实上,更好的选择可能是根本不迁移此APP应用程序。

Yankovskiy说:“并不是所有的事情都必须在Kubernetes上执行,Kubernetes是工作的工具。 虽然这有很多帮助,但是随着许多传统的APP应用程序迁移到容器中,重要的是要理解不需要所有内容都在容器中执行。 ”

7 .量力而行

企业善于学习是一件好事,但了解自己的极限也是一件好事。 否则,长期管理Kubernetes可能会遇到一些问题,因此需要知道何时需要外部帮助。

Lachhman说:“我们建议企业不要寻求更多技能,也不要知道何时消除复杂性。 虽然从头开始构建自己的群集并在每次部署时执行一致性测试看起来是一个黄金标准,但对于大多数工作负载来说,将这一复杂性交给PaaS或Kubernetes供应商并不是一个坏主意。 ”

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3