Magnum是OpenStack容器箱项目,已经存在两年了。它被认为是运行容器软件的一种方式,并允许机构在OpenStack上编排容器。Magnum是一个灵活的工具,例如允许使用Swarm的OS镜像在裸机或虚拟机上运行。
OpenStack Magnum在Nova实例中构建容器结构。该服务通常使用轻量级的操作系统(如Core OS或Fedora Atomic)来支持Docker。这个实例也包括适当的编排器——Swarm、Kubernetes或Mesos。OpenStack Magnum在Heat中创建一个控制结构来识别实例和容器。这种方法允许管理员通过OpenStack项目的核心组合使用具有必要的存储、应用程序镜像和网络连接的Heat模板。Magnum还支持Neutron负载均衡器。
最新版本的OpenStack Ocata推出了新功能来帮助部署和管理容器,包括:
现在Kolla支持三大容器编排引擎,Zun是OpenStack专有的创建容器和管理其生命周期的方式。这在混合云中可能用不着,因为容器及其相关的操作系统和应用程序镜像的可移植性对于平滑和高效的操作至关重要。在Kolla使用标准的编排环境应该有助于迁移到公有云容器服务。Murano模块中容器支持的模板和图像应可以在混合云中运行。但是,支持跨云处理所需的API仍然存在缺陷。有了这些新功能,与使用Puppet或Ansible从头开始构建相比,Magnum成为OpenStack容器部署的一个更简单的方法。尽管如此,OpenStack Magnum和DIY方法更多的是DevOps级别的任务,而不是最终用户、政策驱动的过程。
OpenStack使用的领导者之一是CERN。该组织基于OpenStack Magnum建立了一个1000节点的集群,最近每秒的Kubernetes请求数可以达到700万个。CERN的项目反映了在OpenStack中扩展Kubernetes的进展,而且Kubernetes继续在进步。尽管如此,OpenStack容器服务仍然有待成熟。Project Navigator是所有官方OpenStack项目的指南,它提供了对项目成熟度和利用率的客观衡量。目前,根据Project Navigator,OpenStack Magnum在八个成熟度中排名第二,被用于11%的OpenStack安装。很明显,OpenStack Magnum还没有涵盖所有的基础,例如,与认证的集成较弱。其他关键整合还处于起步阶段。举例来说,与Ansible和Puppet的进一步整合,对这些管理环境扩展到OpenStack容器世界而言是必要的。此外,如果工作负载开始从中央IT管理员转移到部门用户,容器编排的简化控制机制是至关重要的。扩展到模板系统和基于策略的管理是此任务的一部分。
容器技术飞速发展,OpenStack必须赶上。这就意味着Magnum和相关的OpenStack容器项目的成熟度和稳定性将在2017年持续改善。