集群与网格与云

时间:2013-03-31 21:26:49

标签: grid cloud cluster-computing

有两个问题:

1)群集和网格之间有什么区别 2)什么是云

我不是在寻找概念定义, 我通过谷歌搜索找到了很多,但问题是我仍然没有得到它。 所以我相信我寻求的答案是不同的。从我可以在网上重新搜索,我开始认为 许多正在试图解释这一点的文章作者要么自己也不了解这一点 或者无法向像我这样的普通人解释他们的知识(这是非常技术人员的常见问题)。

只是为了让你了解我的水平:我是一名计算机程序员,.NET和LAMP,我可以做两个基本的管理员 Linux风格和Windows,我亲身体验过Hyper-V,现在正在研究Xen和XCP 基于两台计算机设置测试云以用于学习目的。

以下信息您不必阅读,这只是我目前对集群,网格和云的理解 只是为了支持我的两个问题,因为我认为这有助于理解 我现在脑子里到底是什么样的混乱,我正在寻找什么样的答案。

谢谢。


在我的陈述中用作参考的两台计算机是“A”和“B”

规格A:2核心intel cpu,8GB内存,500gb磁盘

“B”的规格:2核心intel cpu,8GB内存,500gb磁盘,


现在我想从Cluster,Grid和Cloud角度看A和B角色。

网格和云之间的通用定义

1)群集或网格是硬件级别上连接在一起的两台或多台计算机 它们通过网卡和软件级别连接起来 它正在使用某种程序实现消息传递接口 使节点之间能够发送命令成为可能。

2)群集或网格不要在节点之间组合CPU功率或内存,这意味着 在这个模拟中,在A上运行的FireFox浏览器仍然只有一个2核cpu,  8GB内存和500GB可用。

网格和云之间的差异:

1)如果在FireFox运行时A节点中断,则群集仅提供故障转移部分 集群软件将在节点B上重新启动FireFox进程。

2)然而,网格能够同时在多个节点上并行运行软件 只要软件是用MPI编写的。它还可以在任何节点上为任何软件提供午餐 按需(即使它不是为MPI编写的)

3)网格也能够结合不同类型 节点,Linux服务器,Windows XP,Xbox和Playstation集成到一个网格中。

云定义:

1)云根本不是一个技术术语,它只是一个简单易懂的词来形容 一台拥有无限资源的计算机,它可以被称为超级计算机,野兽,海洋或宇宙,但也可以称为某人 先说“云”,我们就是这样。

2)云可以基于网格或群集

3)从技术角度来看,云是一种将硬件资源合二为一的软件, 这意味着如果我在网格或群集上安装云软件,那么它将组合A和B. 我会得到一个这样的云:4核CPU,16GB内存和1000GB磁盘。

编辑:2013.04.02 第3项是完全无稽之谈,云不会将来自许多节点的资源组合成一个巨大的资源,所以在这种情况下,将没有4核CPU,16GB内存和1000GB云。

4 个答案:

答案 0 :(得分:6)

网格计算旨在将大型工作负载分配给许多参与的网格成员 - 通过每个成员的软件,期望听到计算或数据的请求,并回答它的整体难题的一小部分。必须专门为这种解决问题的方法编写应用程序。它可能是异构的,因为操作系统不是重要的,而是等待听到问题解决请求的软件。

集群的期望是它可以在任何成员节点上运行相同的可执行映像 - 任何节点都可以执行该代码 - 这就是驱动其对同质性的要求。您可以编写可在整个群集中分配工作负载的群集感知代码,但您必须再次编写代码以便识别群集,以便利用群集的冗余功能。由于大多数应用程序供应商不编写支持群集的代码,因此简单冗余功能是群集部署中常用的功能,但这并不限制架构。集群可以并且确实共享他们的资源,并且可以同时协作完成任务。

云,因为它通常被定义为既不是这些,也不是精确的,但它也不排除它们。云计算假设能够部署应用程序而无需了解其底层操作系统,甚至是对该操作系统的控制,并且能够扩展或减少该应用程序可用的处理和内存占用,而无需销毁和重新创建该应用程序。环境 - 所有这些都是在应用程序无法知道的情况下完成的,或者能够知道在其共享基础架构上可能安装或运行的其他应用程序,除非该访问权限得到两个应用程序管理员的批准。

答案 1 :(得分:0)

我想在关闭之前回答我的问题,因为我认为找到关于群集,网格和云的正确信息会非常令人沮丧,我认为这篇文章可以为很多人节省时间。如果有人想要挑战它,请在1周内将其标记为答案。

1)存在许多差异而且没有,这实际上取决于技术背景 通常,您可以连接多个节点并将其称为网格,或者您可以将其称为群集。我想说Grid是一个具有扩展功能的集群,例如连接异构节点的能力。 Grid和Cluster都将同样适用于横向扩展平台。从网络工程师和程序员的角度来看,如果Gird连接异构节点,实现或编码的差异将会非常大。

2)现在第一个问题实际上是第二个问题的前奏,我相信最好的回答是 Matt Joyce在这篇文章中: https://stackoverflow.com/a/15286488/2230126

答案 2 :(得分:0)

我会抓住它。自2002年以来,我一直在收集和保存我的笔记,脚本和程序A.D.这是我多年来的陈述。这是一个大脑友好的记忆清单:

  1. 网格是硬件和硬件规格。

    一个。您可以通过互联网(也称为ICANN)插入路由器或交换机并设置IP地址和顶级域名。

    湾这类似于OSI级别1,2和3。

  2. 群集是内核(软件响铃0或1,如果它正在进行虚拟类型的事情)。

    一个。内核配置(编译)以运行可以处理会话,权限和帐户身份验证的网络堆栈。

    湾您通常通过TCP / IP设置端口到端口的通信(如在OSI模型中)。

    ℃。您可以设置iptablespf,arp和其他操作系统级应用程序或共享对象。

    d。您可以设置ssh,kerberos,ldap或其他PKI数据库和协议套接字组合。

    即这就像OSI 4,5和6级。

  3. 云是用户空间应用程序。

    一个。应用程序进程与集群中的其他应用程序进程进行通信。

    湾您可以设置进程级权限(通过文件,cgroup和/或用户组)。

    ℃。你设置了mysql,redis,riak,Message Brokers,hadoop,apache,nginx,cron,java,haskell,erlang和etcetera。

    d。这就像OSI 7级。

  4. 云漂浮在从网格中增长的群集上。实际上,在视觉上思考,在空中云,在树丛中,在地面上的网格。我们大多数创意类型(制作所有这些技术)都是视觉思考者,可以使用数学数据和代码进行备份。因此,总是看看你是否可以回答这个谜语,并将技术传真与地球上的物理领域联系起来。

    <强>简介

    网格,群集和云是三个不同的词,用于标记其在历史记录中的特定时间。它们的定义具有交叉特征,并且它们在现代上可以互换。您只需要知道何时应用正确或相关的单词。例如,我正在与一些年长的M.D.s(医生)交谈,他们想知道云是什么。所以我告诉他们云是你通过互联网租用的计算机集群。而宾果,他们在10秒内得到了这个想法。

    我将在时间顺序散文中使用一点历史。

    <强>网格

    术语网格首先用于表示在地面景观或空间中重复的一种资源。该术语经常在电报的分配期间使用,其中中继器必须每N个半径(半径为多个)放置在极点上以放大信号。另一个例子是托马斯·爱迪生和尼古拉·特斯拉竞争性地开始在地球上传播的电网。 计算机非常受欢迎,它们很快就在网格中扩展,以取代人类电报(和电话)运营商。 网格现在是一堆可以连接和终止通信通道的计算机。网格是计算机的基础结构,它可以实现一个目标,即运行程序集(或二进制)代码。

    <强>群集

    恐惧计算机的力量,实际见证计算机赢得战争(图灵的机器),DARPA(或美国军方的ARPA)介入。 DARPA开始委托大学和学院利用网格进行多路复用通信方法(使用波特和协议)。大学和学院开始制定协议,将他们想要执行的不同任务分开。网格并定位计算机。这开始了现代互联网。 在实验室中建立了内部测试集群以模拟网格。集群非常适合编排。作业可以在集群中的所有或部分从属上进行细分。军方利用了大学和大学的研究结果,并将软件应用于网格。有一些关于集群的问题:

    1. 必须是相同(或接近相同)的硬件
    2. 必须具有相同的操作系统
    3. 规则是严格的,因为所有指令集必须通过CPU相同。集群通常具有主从关系。群集通常一次运行一个unic(或unix)job集群有工作调度程序。然后集群变得更加复杂,因为硬件制造商开始制造并行芯片架构(在Von Neumann拱门之上)。 集群变得更强大。集群继承了更多的复杂性,人们正在做更多创造性的事情。现在,集群可以执行不同的作业,任务,流程,异步处理,同步流程以及更多有趣的事情。一个盒子(或计算机节点)可以运行更多的工作。现在Grid可以用于多种用途。群集上的软件更新速度比实际网格快。集群在当地部署在校园内。集群开始取代网格,因为您可以直接生成一个超出(国家)网格的公共面向堆栈。

      我的经历

      我在20世纪90年代末和21世纪初上大学,集群就是一台虚拟计算机作为多台计算机的物理实验室。集群用于测试。一旦您的软件在集群上运行,您就可以mv(移动)它到生产等级网格。然后我见证了网络蠕虫和计算机病毒控制僵尸计算机。这些僵尸群可以用作一个用于运行命令的巨大虚拟集群。好的程序员开始DIY(自己动手)协议和软件,如bit-torrent和Napster。 为了向前迈进,测试集群软件开始被Solaris jails,FreeBSD jails,Linux容器,QEMU,hyper-visors,VMWare,VirtualBox,Vagrant和Docker 取代。

      <强>云

      云是一个营销术语,用于保护不同网格的硬件和这些集群的软件。 云是一个无处不在的词,用于宣传,推广和宣传所有群集技术以获取金钱收益。云也是一种努力将所有这些技术包含在一个单一的单词中。云允许多租户流程共享巨大的网格。 云通过细分电力,CPU,RAM,磁盘,电力和宽带来最大化效率,这些电力可由消费者共享和支付。副作用是那些消费者订阅和/或支付率开始产生利润。云还允许多个用户安装多个操作系统,这些操作系统在软件中运行多个进程。现在我们有了像IaaS,PaaS和SasS这样的缩写词。 云可以取代曾经非常难以资助和引导的启动成本。云是一个很好的解决方案,可以模拟测试您的软件并为您的企业构建消费者群。

      从另一个角度来看,云触发了非程序员的大脑以某种方式思考。例如,人力资源部门可以理解并隔离在他们面前呈现的内容。

      因此,如果您有钱,那么您可以购买您的云体验份额,并随之获得轻松支持。但是,如果您拥有技能,时间,快速专业知识以及在同一地点安装自己的服务器的能力,那么这样做是因为从长远来看它更便宜。

      这是关于Grid vs Cluster vs Cloud的叙述。

答案 3 :(得分:-1)

我认为这个link很好地比较了Cluster和Grid。

据我所知,群集的情况有一些例外。 YARN(Yahoo!)试图处理多租户和分布式调度。 Corona(Facebook)也有分布式调度。