Deis是一款基于Docker和CoreOS的开源Paas平台,旨在让用户能够容易地在服务器上部署并管理应用程序。它能够部署任意可在Docker容器中运行的应用或者服务;在语言和框架层面,除了可以使用Docker容器之外, Deis还为Ruby、Python、Node.js、Java以及Scala等语言提供了Heroku构建包。Deis能够被部署到所有支持CoreOS的系统上。最近,Deis发布了第一个稳定版本v1.0.0,该版本包含了稳定的API,广泛的特性以及固定的组件架构,标志着它已经可以应用于产品环境。
1.0版本包含的主要产品特性包括:
- 平台质量——为了能够应对企业级产品负载,开源社区对Deis做了广泛而深入的测试。
- 安装便捷——用户能够通过一个简单的命令行工具在30分钟之内将Deis安装到一个CoreOS集群上。
- 高可用性—— -整个Deis平台是高可用的,它实现了集群容错机制。
- 久经考验的流程——Deis提供了3种部署流程:Heroku构建包、Dockerfiles以及原生Docker镜像。
- 全面的文档 ——扩充、改善、合并了相关的文档,并提供了一个独立的文档网站。
- 随处运行——Deis可以运行在公有云、私有云和裸机上,支持Amazon Web Services、Google Compute Engine、Digital Ocean、Rackspace、OpenStack 和VMware认证。
需要注意的是新版本也有一些已知的问题,例如,到目前为止Deis仅支持Docker 1.3.0,因为从Docker
1.3.1开始所有的注册中心通信都需要使用TLS,但是对于私有注册中心而言这会引发一系列的问题。此外,如果从之前的Desi升级到1.0版本,那么
可能会丢失平台日志数据,所以在进行升级操作之前最好做好备份工作。
对于后续的计划,Desi官方网站上指出将来会增加交互式的管理命令和服务网关。如果你想了解更多与Desi相关的信息,那么可以查看其官方网站。
作为一个新的基于Docker的开源Paas平台,Deis的发布在Hacker News社区上引发了广泛的讨论,有很多Deis的用户在肯定该开源平台的同时也提出了一些问题。例如,用户mmcclure认为“在Etcd和Fleet这些底层的基础设施并没有产品就绪之前何谈Deis已经产品就绪了”。对此gabrtv回复说:
“我们使用的一些底层技术依然在积极的开发中。在Deis的产品部署方面我们做了大量的工作,Etcd和Fleet运行的比很多人想象的要好很多。作为这些技术的早期采用者,我们与相关团队保持着紧密的联系。通常,我们是第一个报告问题,也是第一个测试问题修复的团队。”
用户willcodeforfoo 的问题则是有关于存储和性能的,他说:
“非常好的项目,我从几个月之前开始使用Deis,它是第一个我可以安装成功并运行起来的Paas。但是有两个问题:第一,我们知道Docker注
册中心使用的是ceph,那么它对外暴露么,应用该如何使用它?第二,在使用过程中我发现它的性能有一些问题,例如推送应用或者修改配置的时候。这是由于
我硬件的限制(使用3x2GB DigitalOcean 节点)还是系统本身的问题?”
对此,Deis项目的维护者bacongobbler回答说:
“我们在路由(router)中暴露了ceph,因此你的应用可以使用它。但是这样你必须自己进行管理,因为到目前为止我们并没有遇到需要从‘deis config:set’之外将应用插入支持服务的用户故事。
性能方面我们正在努力。当使用Heroku构建包部署一个应用的时候,你的应用会被编译成一个基于Heroku
cedar栈的容器,大小约为800MB。因为稍微有点大,所以Fleet部署该镜像的时候会花费一些时间。但是只是在第一次将其部署到一个新主机上时才
会这样,因为以后会使用该镜像的缓存,部署时间会提升很多。如果你使用Dockerfile部署应用,同时文件得到了正确的优化,那么部署会非常快。”
另外,还有很多用户将Deis与相似的开源Paas平台做了对比,感兴趣的读者可以点击这里。
转自 http://www.infoq.com/cn/news/2014/11/deis-v1.0-release?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global |