UnitedStack有云课堂继续!Kubernetes课程分享了《搭建单机Kubernetes开发环境(1)》和《在UOS搭建Kubernetes集群》,受到大家欢迎,该系列第三篇文章介绍Kubernetes与OpenStack容器服务。背景介绍OpenStack作为最流行的IaaS项目吸引了大量开发者的关注,而同样受到广泛关注的还有容器项目Docker。Docker基于Linux容器技术提出了一种新的应用打包方式,开发者在本地开发的程序可以无隙迁移到服务器,并且没有任何环境依赖,加上Google推出的容器调度系统Kubernetes,为开发者搭建基于容器的私有云提供了新的思路。有人不禁怀疑OpenStack提供的虚拟机云服务已经过时了吗?显然没有,虚拟机和容器本质上就是不同层次的虚拟化技术,虚拟机更重也更安全,容器很快但也存在安全隐患。本文在《搭建单机Kubernetes开发环境(1)》和《在UOS搭建Kubernetes集群(2)》之后,介绍了在OpenStack基础之上搭建的容器服务,同时我们还推出了《Magnum开发体验教程》方便大家学习。容器服务继IaaS(Infrastructure as a Servce)、PaaS(Platform as a Service)、SaaS(Software as a Service)之后,最近火了CaaS(Container as a Service),也就是容器服务。容器服务允许开发者在本地开发,将程序封装到容器内,并通过容器交付,开发者无需考虑底层硬件资源,由调度系统处理应用的分发。这样的好处是解决的开发者的环境依赖问题,当然不可避免得引入了新的问题,例如使用怎样的调度算法、如何监控和管理容器等。Kubernetes的出现给容器服务注入了新的生命,Google拥有十多年的容器使用经验,并100%开源了Kubernetes系统,使用Kubernetes很容器就可以搭建简单的私有容器服务了。前面的文章详细介绍过如果在本地和云平台UOS搭建Kubernetes,无论是裸机还是虚拟机我们都可以实现基于容器的私有云服务。而容器技术在2015年OpenStack Summit更是受到广泛关注,适时推出了CaaS项目Magnum,而Magnum使用的底层调度系统,正是Google的Kubernetes。Magnum项目Magnum项目是Rackspace和Google合作推出的OpenStack项目,与其他OpenStack项目一样,Magnum有着良好的社区基础,项目模块化与代码质量有着很好的保证。通过这次Summit我们知道,Magnum的PTL Adrian Otto与Google工程师有着密切联系,他们也将致力于将Kubernetes整合到OpenStack生态中。目前Magnum项目不是很成熟,需要解决容器初始化和安全认证的问题,但它提出了在虚拟机和Bare Metal创建容器服务的新思路。利用Magnum,我们可以在OpenStack上一键创建容器集群服务,利用Keystone实现租户的隔离,利用Neutron解决Docker网络问题,得益于OpenStack提供的基础服务,Magnum能够让容器技术在IaaS或者裸机上落地。对容器服务感兴趣的不妨看看Magnum的演示视频。未来展望Docker的出现加速了容器的发展,Kubernetes的出现为容器私有云提供的新的思路,而Magnum的出现让OpenStack成为大一统的基础云平台,通过Magnum甚至可以将Kubernetes和Docker直接部署到物理机上。UnitedStack作为云服务提供商,很早就关注到Docker和Magnum项目,也会继续关注和支持容器服务,如果需求可以到我们的企业容器服务交流群聊聊 462294386。关于作者:陈迪豪,UnitedStack有云的基础架构工程师,目前专注于Docker、OpenStack社区。Docker监控管理工具Seagull项目作者,开源电子书《理解Linux进程》作者。