
在云基础设施的动态格局中,Linux、OpenStack和Kubernetes的融合正在塑造一个强大的基础设施堆栈,称为LOKI。2022年OpenStack用户调查显示,目前超过85%的OpenStack部署都部署了Kubernetes,这表明这些技术正在日益协调一致,而不是非此即彼的选择。OpenStack和Kubernetes生产集成的兴起进一步证明,使用Magnum(用于容器编排的OpenStack服务)运行生产工作负载的用户数量增加到21%(2022年仅为16%)。
1、Linux:坚实的基础
LOKI堆栈的基础是Linux,它提供了管理物理和虚拟设备的统一方法。作为一种开源操作系统标准,Linux是硬件和软件无缝结合的关键层。它是操作系统事实上的标准。
2、OpenStack:编排云资源
OpenStack诞生于2010年,是Rackspace和NASA的合作成果,现已成为首选的开源云标准。OpenStack用Python编写,并通过每六个月的定期版本(如当前的Bobcat和即将推出的Caracal)不断发展,管理服务器组(无论是物理服务器还是虚拟服务器),并在LOKI的基础设施中发挥着关键作用。OpenStack在LOKI堆栈中提供了Linux之上的云操作系统,为应用层提供空间。
3、Kubernetes:卓越的容器编排
Kubernetes是一个用Go编写的开源容器编排标准,于2014年由Google移交给云原生计算基金会。通过其最新版本1.28,Kubernetes能够将应用程序重新架构为微服务,自动部署、扩展和扩展。容器化应用程序的管理。Kubernetes曾经被认为是OpenStack的替代品,而事实上,Kubernetes需要像OpenStack这样的东西来提供Kubernetes运行所需的基础设施抽象。
4、集成LOKI组件
OpenStack和Kubernetes在LOKI堆栈中的集成提供了一种多方面的方法来增强敏捷性、安全性和灵活性。以下是它们协同作用的三种方式:
①Kubernetes容器中的OpenStack
OpenStack-Helm允许OpenStack控制平面的容器化,从而简化各个OpenStack服务的部署、维护和升级。这种方法提供了管理复杂环境的灵活性。OpenStackHelm只是帮助编排LOKI堆栈的可能生命周期管理工具之一。虽然它与OpenStack项目紧密结合,但该领域有许多正在开发的开源解决方案可供利用。
②OpenStack上的Kubernetes容器
将OpenStackMagnum与KubernetesClusterAPI(CAPI)结合使用,Kubernetes可以在OpenStack云环境中无缝运行。这种方法有利于Kubernetes集群之间的多租户隔离,为部署容器框架提供强大的解决方案。
③适用于Kubernetes的云提供商OpenStack插件
Cinder和Manila等OpenStack服务可以独立于OpenStack云运行,为容器提供存储解决方案,而无需依赖Nova(OpenStack中的计算服务)。其他OpenStack服务插件通过使用云提供商openstack增强Kubernetes功能,包括自动修复(Magnum)、入口负载平衡(Octavia)和机密/身份验证管理(Barbican和Keystone),该服务由SIGCloud下的Kubernetes社区内部维护提供者。
5、实际部署
LOKI的采用在统计数据中显而易见——Kubernetes部署在超过85%的OpenStack设置上,其中21%使用Magnum进行容器编排运行生产工作负载。例如,CERN在其OpenStack云上使用Magnum管理200多个Kubernetes安装。
6、参与
对于那些对LOKI的潜力感兴趣的人,我鼓励您参与社区项目。ClusterAPI(CAPI)和OpenStackMagnum正在积极寻求贡献,并持续致力于一致性测试和合并驱动程序。
进一步探索洛基
从Red Hat和Canonical等行业领导者的讨论到OpenInfra峰会上的现场演示,LOKI堆栈作为开放基础设施标准正在不断获得发展势头。
当我们进入云原生计算时代时,LOKI堆栈证明了Linux、OpenStack和Kubernetes的协作能力,打造了一个能够满足不同用例和工作负载的开源、端到端基础设施堆栈。