概述
应用正在越来越多地被构建成可以作为容器交付的独立功能性部件。这意味着每个应用都有更多的部分需要管理。为了成规模地应对这种复杂性,团队需要一个策略驱动的自动化解决方案,以决定容器的运行方式和位置。Kubernetes 是一个可扩展的开源容器编排工具,其设计初衷就是为了解决这些挑战。
红帽® OpenShift® 是一个混合云企业级 Kubernetes 平台,不仅具有综合全面的特性,而且具有对开发人员友好的功能。Kubernetes 内核是红帽 OpenShift 的核心。但是,要想在分布式系统环境中运行容器化应用,需要的远不止是 Kubernetes。
Kubernetes 的优势
在正确实施和维护的情况下,Kubernetes 可以为 IT 运维人员、开发人员和业务人员带来巨大的好处:
可扩展性
Kubernetes 可以在本地机器上运行,也可以在广泛的可用性区域中跨多个集群运行。它会在您需要时水平扩展您的集群,并在您不需要时进行缩容。
工作负载可移植性
Kubernetes 运行在您本地的数据中心、公共云或混合云配置中,每次均可以相同的方式部署容器。
关注点分离
运维看重稳定性,而开发人员看重速度。Kubernetes 可以解决这一冲突,因此企业可以专注于每个人的需求:创新和发展。
企业级 Kubernetes 所带来的挑战
安装、部署和管理 Kubernetes 说着容易做起来难。75% 的用户将实施和运维的复杂性列为在生产环境中使用 Kubernetes 的最大障碍。在评估是否使用 Kubernetes 时,企业需要综合考虑安全性、多租户以及与现有投资的整合。
这就带来了许多生命周期管理挑战:
安装
在 Kubernetes 安装期间,IT 部门必须验证主机是否具有正确的设置及 Linux® 操作系统。
部署
部署 Kubernetes 时,必须提供正确的身份和安全访问权限,以及与存储、网络和容器镜像仓库解决方案的集成。
强化
部署后,Kubernetes 必须与更多的解决方案进行集成,包括平台监控、安全强化和日志记录解决方案。拥有多个团队的企业和机构必须确保正确划分资源,并且正确配置计量和 chargeback 解决方案。
运维
当 Kubernetes 进入全面运维状态时,堆栈的所有层(Linux 容器主机、Kubernetes 本身以及运行在 Kubernetes 之上的服务)都需要进行不断的修补和更新。
Kubernetes 中未包含的功能
尽管 Kubernetes 是一个功能强大的项目,也能为企业带来了许多好处,但由于它并不是一个开箱即用的解决方案,因此需要进行一些组合操作。除了需要大量工作来设置角色、访问控制和多租户策略之外,Kubernetes 还缺乏:
开发人员工具和应用服务
Kubernetes 中未包含经过测试或验证的中间件、数据库或性能监控解决方案。要想确保 Kubernetes 与特定的编辑器、IDE 和测试框架协同工作,需要付出更多努力。
DevOps 工作流
Kubernetes 中未包含 CI/CD 工作流或容器构建与更新流程。
操作系统、存储和网络
尽管在生产环境中运行容器需要这些技术,但 Kubernetes 并未将其预先打包。用户必须提供并集成他们自己的解决方案。
红帽是开源的领导者
红帽是 Kubernetes 的主要贡献者之一,并且参与构建了开源项目的主要功能和组件。通过红帽® OpenShift®,在支持客户在生产环境中使用 Kubernetes 运行容器方面,红帽已经深耕多年,积累了丰富的经验。
红帽 OpenShift 不仅仅是 Kubernetes。它的每一个版本都包括安全防护、性能和缺陷修复、经过验证和测试的第三方插件集成,以及企业生命周期支持。它可以在任何支持红帽企业 Linux 的地方(无论是在本地还是在公共云中)运行,并可以从操作系统执行针对整个集群的一键式更新。