机房360首页
当前位置:首页 » 业界动态 » 2015年最佳开源数据中心和云计算软件

2015年最佳开源数据中心和云计算软件

来源:云头条 作者:机房360 更新时间:2015-9-17 15:31:01

摘要:知名IT杂志《InfoWorld》评选出了年度最佳开源平台、基础设施、管理和编排软件,一起来看看吧。

  最佳开源数据中心和云计算软件

  你可能已经听说过Docker容器这项新技术。开发人员很喜欢它,因为可以用脚本来构建容器,添加一层层服务,并直接从MacBook Pro将它们推送到服务器进行测试。容器之所以切实可行,是因为它们超轻量级,不像那些现在已经过时的虚拟机。容器以及交付服务的其他轻量级方法正在改变操作系统、应用程序及管理工具的格局。这份榜单上的最佳数据中心和云计算软件更是其中的佼佼者。

  Docker Machine、Compose和Swarm

  Docker的开源容器技术已经得到了各大公有云的采用,正内置到Windows Server的下一个版本中。Docker是一款功能强大的数据中心自动化工具,让广大开发人员和运营团队得以将应用程序与基础设施分开来。

  然而,容器只是Docker生态系统的一部分。Docker还提供了一系列工具,让你可以使用Docker API,让容器的整个生命周期实现自动化,另外可自动处理应用程序的设计和编排。

  Machine让你可以实现Docker容器配置自动化。从命令行开始入手,你可以使用一行代码,锁定一个或多个主机,部署Docker引擎,甚至将它加入到Swarm集群。支持大多数虚拟机管理程序和云平台,你只需要自己的访问凭据。

  Swarm处理集群和调度,还可以与Mesos整合起来,提供更高级的调度功能。你可以使用Swarm建立容器主机池,那样需求增加时,应用程序可以相应扩展。应用程序及所有依赖项都可以用Compose来定义,它让你可以把诸容器连接起来,连入到一个分布式应用程序,作为一个组来启动。Compose描述可适用于诸平台,那样拿来开发人员的配置后,可迅速部署到生产环境中。

  CoreOS和RKT

  CoreOS是一种瘦薄的轻量级服务器操作系统,基于谷歌的Chromium OS。它旨在与Linux容器结合使用,而不是使用程序包管理器来安装功能。通过使用容器来扩展瘦薄的核心,CoreOS让你可以快速部署应用程序,在云基础设施上顺畅运行。

  CoreOS的容器管理工具fleet旨在把CoreOS服务器集群当作单个部件来对待,相应工具可用来管理高可用性,并根据资源可用性,将容器部署到集群。跨集群键/值存储系统etcd负责处理设备管理,并支持服务发现。如果某个节点出现故障,etcd就能在新的副本上迅速恢复状态,提供一个连接到CoreOS自动化更新服务的分布式配置管理平台。

  虽然CoreOS也许因支持Docker而家喻户晓,但CoreOS的团队正在开发自己的容器运行时环境rkt,有自己的容器格式:应用容器映像(App Container Image)。rkt还与Docker容器兼容,采用了模块化架构,允许不同的容器化系统(甚至硬件虚拟化系统)可以插入。然而,rkt仍处于发展的早期阶段,所以还没有完全准备好用于生产环境。

  RancherOS

  由于我们使用容器从底层操作系统抽取越来越多的服务,开始随之考虑未来的操作系统会是什么样子。类似我们的应用程序,未来的操作系统将会是在瘦薄内核上运行的一组模块化服务,可以自我配置,只提供应用程序所需的服务。

  我们可以从RancherOS领略未来操作系统的模样。RancherOS结合了Linux内核和Docker,是一种极简操作系统,适合将基于容器的应用程序托管在云基础设施中。RancherOS利用Docker,将Linux用户空间服务和应用程序托管在不同的容器层中,而不是使用标准的Linux包装技术。低级别的Docker实例先启动,将系统服务托管在各自的容器中。用户的应用程序在较高级别的Docker实例中运行,独立于系统容器。即使其中一个容器崩溃了,主机照样正常运行。

  RancherOS只有20MB大小,所以很容易在整个数据中心中进行复制。它还旨在使用自动化工具加以管理,而不是人工管理,API级访问既适用于Docker的管理工具,又适用于Rancher Labs自己的云基础设施和管理工具。

  Kubernetes

  谷歌的Kubernetes容器编排系统旨在管理和运行用Docker和Rocket容器构建的应用程序。Kubernetes专注于管理微服务应用程序,让你可以跨主机群集分发容器,同时处理扩展问题,确保托管的服务可靠地运行。

  由于容器提供了应用程序抽象层,Kubernetes是一种以应用程序为中心的管理服务,支持许多现代开发模式,侧重于用户意图。这意味着你启动应用程序后,Kubernetes会管理容器,以便容器在你设定的参数范围内运行,并使用Kubernetes调度器,确保它获得所需的资源。容器被分成了一个个pod,由复制引擎加以管理。该引擎可以恢复出现故障的容器,或者应用程序增加时,添加更多的pod。

  Kubernetes支持谷歌自己的容器引擎(Container Engine),它可以在一系列其他的云和数据中心服务上运行,包括AWS和Azure,以及vSphere和Mesos。容器可以松散耦合或紧密耦合,那样不是为云平台即服务(PaaS)运营环境设计的应用程序可以作为一组紧密耦合的容器,迁移到云端。Kubernetes还支持将应用程序快速部署到群集,为你提供了实现持续交付过程的端点。

  Mesos

  将数据中心变成私有云或公有云不仅仅需要虚拟机管理程序,还需要一种新的操作层,可以管理数据中心资源,就好像它们是单一计算机,处理资源和调度。Apache Mesos被称为是一种“分布式系统内核”,让你可以管理成千上万台服务器,使用容器来托管应用程序和API,支持应用程序并行开发。

  Mesos的核心是一组守护进程,将资源暴露在中央调度程序面前。任务跨节点分发,充分利用可用的处理器和内存资源。一个关键方法是,要是提供的资源满足不了要求,应用程序可以拒绝这些资源。这种方法很适用于大数据应用,你可以使用Mesos运行Hadoop和Cassandra分布式数据库,还有A​​pache自己的Spark数据处理引擎。还支持Jenkins持续集成服务器,让你可以在服务器集群上并行运行构建worker和测试worker,并根据工作负载的大小,动态调整任务。

  Mesos设计成可在Linux和Mac OS X上运行,最近还被移植到Windows上,以支持在Azure平台上开发可扩展的并行应用程序。

  SmartOS和SmartDataCenter

  Joyent的SmartDataCenter是一款运行其公有云的软件,在SmartOS瘦服务器操作系统上面添加了一个管理平台软件。SmartOS是OpenSolaris的后续版本,结合了Zones容器和KVM虚拟机管理程序,这是一种内存中的操作系统,可从U盘快速启动,可以在裸机服务器上运行。

  使用SmartOS,你可以快速部署一组轻量级服务器,这些服务器可通过一组JSON API,以编程的方式加以管理,而功能通过虚拟机来交付,由内置的映像管理工具来下载。通过使用虚拟机,所有用户空间(userland)操作与底层操作系统隔离开来,减小了主机和访客的安全隐患。

  SmartDataCenter在SmartOS服务器上运行,一台服务器作为专用管理节点来运行,集群的其余服务器作为计算节点来运行。可以从笔记本电脑上的云版本(这是一种VMware虚拟设备)开始入手,因而可以试用管理服务器。在实际数据中心,你将把SmartOS部署到服务器上,使用ZFS来处理存储――这包括本地映像库。服务作为映像来部署,而各组件存储在对象库中。

  SmartDataCenter和SmartOS这个组合改善了Joyent公有云的体验,提供了一套屡试不爽的工具,可以帮助你启动自己的云数据中心。这个基础架构专注于如今的虚拟机,但也为明天的虚拟机奠定了基础。一个相关的Joyent项目sdc-docker将整个SmartDataCenter集群暴露为单单一个Docker主机,受原生Docker命令的控制。

机房360微信公众号订阅
扫一扫,订阅更多数据中心资讯

本文地址:http://www.jifang360.com/news/2015917/n771072340.html 网友评论: 阅读次数:
版权声明:凡本站原创文章,未经授权,禁止转载,否则追究法律责任。
相关评论
正在加载评论列表...
评论表单加载中...
  • 我要分享
推荐图片