设为首页 收藏本站
查看: 798|回复: 0

[经验分享] Docker爱好者欢庆吧!CoreOS被添加到DigitalOcean中

[复制链接]

尚未签到

发表于 2015-10-13 10:08:08 | 显示全部楼层 |阅读模式
云主机提供商DigitalOcean最近宣布开始支持CoreOS,CoreOS是一种新的以Docker为中心的Linux发行版本。随着基于容器的开发成为主流,CoreOS也越来越受欢迎,支持这个特殊操作系统的云主机提供商日益增加,DigitalOcean也是其中的一分子。
于此同时,Digital和CoreOS在他们的官方博客上也炫耀了这一新的关系。CoreOS的博客指出已经有超过2000个的开发者在DigitalOcean上申请了CoreOS,并且每个虚拟主机提供者都有权使用alpha、beta或者正式版本。DigitalOcean则宣布在CoreOS的alpha通道上可以部署一种叫做“droplets”的虚拟容器。除了CoreOS,DigitalOcean还支持其它版本的Linux,比如CentOS、Debian、Fedora和Ubuntu。
CoreOS是轻量级的Linux版本,它在谷歌的Chrome OS基础上对集群(clusters)而不是单个服务器的处理做了优化。CoreOS只运行少量的基础服务,也没有包管理器(apackage manager),它的理念是几乎所有的应用都应在Docker的容器中运行。集群管理是通过两个核心技术来完成的,DigitalOcean在新的教程中对此进行了描述。集群中的业务发现(servicediscovery)则是通过叫做etcd的服务来完成的。
Etcd服务是一个高可用性的键-值(key-value)存储,每个节点可以从中获取配置数据,询问运行业务的相关信息,并且发布一些信息告知给相关的其它成员。每个节点都运行自己的etcd客户端,它们被配置成可以和集群中的其它客户端相关通信以共享和发布信息。
如果应用想从这个存储中取回信息,它只需要在本地机器上直接连接etcd客户端接口即可。在每个节点上所有的etcd数据都是可用的,这和数据实际的存储位置无关,而每个要存储的数据都会分布在整个集群中,并进行自动化地复制。首要选择也会自动化地处理,这使得对这个键值存储的管理变得相当简单。
对CoreOS集群和相关Docker容器的编制(orchestration)则是通过叫做“fleet”的服务来完成的。
Fleet的概念非常简单,它就是完成集群范围内的系统初始化的。
在集群环境中的每个节点上都会运行它自己惯用的初始化系统systemd,这个初始化系统用于启动和管理本机上的服务。所以从简化的意义上说,fleet做的就是提供相应的接口来控制集群中每个成员上的systemd系统。
你可以通过fleet来启动或停止相应的服务,或者是获取那些在集群中正在运行进程的状态信息。不仅如此,fleet还有一些重要的特性使得它的可用性更强,比如它支持分布式处理的机制,这样就可以在不太忙的主机上来启动服务。
你也可以为要运行的服务指定一些预置条件。比如,你可以强调一个服务必须运行在特定的主机上,或者不允许运行在特定的主机上,而判断的条件包括主机的位置、主机是否已经运行,等等。因为fleet是利用systemd来启动本地进程,所以每个定义服务的文件也就利用了systemd的单元文件(unit files),这些文件带有一些定制选项。你可以一次性地把这些配置文件传递给fleet,并利用它来管理整个集群。
CoreOS提供了独特的自动更新策略,它在一个双重根分区下实现对操作系统补丁的更新。
首先,你的系统会在A根分区上启动,而CoreOS会和更新服务进行交互,查找是否有新的更新。如果有可用的更新,那这个补丁会被下载并安装到B根分区。为了确保不影响当前的应用,需要使用Linux的控制群组来对更新进程进行控制,即对磁盘和网络I/O的访问进行限制。
使用双重根分区策略,是对现有的使用yum和apt-get包管理工具流程的改进。使用包管理工具来更新,会导致一些已知的问题,如它会强制守护进程使用新的库文件或者移动配置文件到某个位置。而在CoreOS中,系统更新被视为一个原子操作,所以它是可以回退的。
在CoreOS系统中,当前使用的根分区(假设是root A)不会被修改,所以你的服务器永远不会处在不稳定或部分更新的状态。当你要完成更新时,只要启动机器,那么几秒内刚刚更新好的系统就会在另一个根分区(root B)上启动起来了。
云主机提供商们已经在排队支持CoreOS了,除了DigitalOcean以外,AWS、GoogleCompute Engine、CenturyLinkCloud、Rackspace、OpenStack、VMware和其它一些厂家也已经支持CoreOS。CenturyLinkLabs(可参考 之前InfoQ的新闻报道)在其开源项目Panamax 中把CoreOS打造成Docker的管理平台,并使用fleet来对Docker进行编制。
目前,DigitalOcean对虚拟容器droplets做了定价,即单CPU、512MB内存和20GB SSD硬盘配置时每月5美金。DigitalOceanh具有全球性的数据中心,分别部署在旧金山、纽约、伦敦、阿姆斯特丹和新加坡。随着对CoreOS支持的发布,DigitalOcean还提供了一套关于创建CoreOS集群和使用Docker容器的教程。就像TechCrunch报道的那样,看样子DigitalOcean的团队正在做很多的事情。
这如同DigitalOcean公司的共同创始人Ben Uretsky经常给我讲的那样,这家公司在过去几年中为满足要求仅仅忙于规模的扩张了,而一些基本的产品开发(比如增加更多的发布版本)却常常中途而废了。现在DigitalOcean有了大量的资金和更大的团队,它可以把注意力投入到提供更多新的特性上了,比如说如今CoreOS的发布。
查看英文原文:DockerFans Rejoice! CoreOS Added to DigitalOcean

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-126170-1-1.html 上篇帖子: mac 安装并使用git下载代码步骤 下篇帖子: win7 boot2docker安装gitlab和jira
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表