本文讲的是使用Kubernetes,你应该知道的【编者的话】这是一篇介绍Kubernetes优势、局限性和路线图的文章。
Kubernetes在容器编排和云原生应用管理上被普遍使用。与其他编排引擎、PaaS平台和宿主机解决办法相比,基于Kubernetes建立的社区和生态系统占明显优势。这一部分涉及一些客户采用Kubernetes可能考虑的关键因素。
优势
- Kubernetes有一个明确的治理模式。kubernetes由Linux基金会管理,同时,谷歌正在积极推动产品功能和路线图,并与其他生态系统融合。
- Kubernetes生态系统是成长和充满活力的,所以,企业对Kubernetes的长期存在充满了自信。华为、IBM、英特尔和红帽都为项目做出了突出的贡献。
- Kubernetes的商业价值,成为厂商的青睐,我们将看到,在未来数月内,不断有新功能的宣布。
- 尽管商业版按预期增长,但Kubernetes坚持避免依赖和锁定供应商,kubernetes采用积极的社区参与和生态系统支持。
- Kubernetes支持广泛的部署选项,客户可以选择裸机、虚拟化、私有、公共和混合云部署。享有广泛的交付模式,从私有部署到基于云的服务。
- Kubernetes设计更加以运维为中心,与面向开发人员比较,Kubernetes是DevOps的首选。
- 商业版企业级私有PaaS产品满足客户对PaaS平台的定制化需求,如OpenShift、Apprenda。
- Kubernetes减少其他一些PaaS平台的规约,灵活的服务发现和集成模型,易于开发人员对Kubernetes应用程序打包。
局限性
- Kubernetes支持有状态应用程序仍在不断变化。在当前版本1.4中,不推荐运行事务数据库和大数据工作负载。
- 缺乏对微软Windows的支持,这是Kubernetes生态系统另一个主要的差距。没有供应商提供集成运行在微软平台的Windows容器和 Hyper-V容器。
- Kubernetes仍然是一个相对年轻的项目,在生产中使用Kubernetes仍存在一些顾虑。虽然有许多成功的例子,但对于新Kubernetes的用户,不要急于在生产环境中使用它。
- Kubernetes不支持真正的多租户(截至2016年11月),对于需要强隔离和独立治理模式的客户,需要另找解决方案。
- 插件和插件碎片化将是一个挑战,从SDN到存储和日志, 有几十种Kubernetes工具。其中一些是积极维护,而有一些停止维护。对用户而言,在生产环境使用最佳的工具和插件不是一个容易的任务。
路线图
Kubernetes生态系统正在填补缺口。基于使用模式和客户反馈,优先级最高是支持有状态的应用程序。未来Kubernetes版本将发布pet sets,它是一个功能,可以运行高可用有状态的工作负载,如Cassandra集群和MySQL部署。
同时,Kubernetes将集中在未来支持微软Windows。微软是Docker强有力的合作伙伴,我们将看到微软的Azure Container Service和kubernetes两个生态系统的结合。
Linux容器和Windows容器之间差距缩小,将使编排引擎无缝支持在两种环境中运行的工作负载。Kubernetes特别兴趣小组(SIG)致力于支持Windows。
随着企业使用容器的增长,有必要支持混合部署。Kubernetes的联合集群概念将在混合环境中部署容器工作负载。客户能移植应用跨私有部署和公有云部署。联合集群使应用具有可移植性,应用可以跨kubernetes托管平台和IT团队管理的内部集群。
展望未来,Kubernetes包括核心组件,将作为开源项目的附加组件和可选组件。他们包括监测、日志、用户界面和自动化。Kubernetes 1.4包括一个丰富的UI,支持几乎所有命令行接口(CLI)的任务。同样,客户可以通过集成的自动化和CI/CD工具持续部署Kubernetes应用。
因为Kubernetes得到开源生态系统的关注和支持,用户可以享受更多的选择,大量的容器运行时、网络插件、存储插件、监控、日志和前端工具发布。
原文链接:Use Cases for Kubernetes(翻译:范彬)
===============================================================
译者介绍:范彬,从事微服务、Docker和Kubernetes容器技术等方面的工作。可以关注译者的微信公众号:范范米饭。
原文发布时间为:2017-05-22
本文作者:范彬
原文标题:使用Kubernetes,你应该知道的