桉树问题

对于桉树私有build设我有一些问题。 这个问题的两个版本,一个简单的,一个长的。

简单:

任何熟悉私有云的人都可以画出一幅图来说明他云的“IP计划”吗? 我很难决定每个组件的位置。 如果我想在不同的物理机器上安装CLC,Walrus,CC,SC,NC,应该是什么networking拓扑结构?

更多信息:我现在有12个物理机运行云,但是我无法将卷附加到实例。 我想知道我应该把存储控制器放到公共networking上吗? 在CLC下? 在CC? 与CC同级? 没有图片,根本没有解释。 而我尽我所能,实例正在运行,可以访问它们,只是该死的事情麻烦了整整一周。

长版本:

  1. 我已经在4台物理服务器上成功configuration了eucalyptus,运行效果很好。
  2. 这四个服务器是:CLC,SC,CC,NC
  3. 问题是我不太确定把SC放在哪里,因为我的云的拓扑是这样的:

替代文字

  1. 现在,CC连接到两个开关:ENTSWitch和PrivateSwitch。 并有两个IP:公网IP-> 10.11.25.115,私网IP-> 10.11.20.1。 节点控制器仅连接到私有交换机,并具有私有IP 10.11.20.2
  2. 这到目前为止工作正常,使用托pipenovlan模式,节点控制器可以部署实例,并获得公共IP地址。 一切都很美好
  3. 问题来了,我可以在存储控制器上创build卷。 但是卷未能附加到实例。
  4. 想知道是否因为节点控制器与存储控制器在不同的networking下。

试图通过以下做法来解决问题:

  • 答:也许我不应该将存储控制器连接到ENTSwitch ?. 将SC从公共networking改为专用networking
  • B.尝试再次注册存储控制器,但失败。 原因:云无法访问私人networking。
  • C.尝试在CC上注册sc,不能,必须在CLC上注册
  • D.添加路由到CLC,现在CLC和SC可以互相连接。
  • E.注册成功,仍然无法连接音量。
  • F:错误日志:
     [root @ HeroNodeServer1 images]#cat /var/log/eucalyptus/nc.log |  grep卷
     [2010年8月20日16:36:12] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-59C90629 remote = / dev / etherd / e0.1 local = / dev / sdb)
     [2010年8月20日16:37:53] [EUCAERROR] AttachVolume()失败(err = -1)XML =
     [2010年8月20日16:37:53] [EUCAERROR]错误:doAttachVolume()失败错误= 1
     [2010年8月20日16:37:53] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-59C90629 remote = / dev / etherd / e0.1 local = / dev / sdb)
     [2010年8月20日16:37:53] [EUCAERROR] AttachVolume()失败(err = -1)XML =
     [2010年8月20日16:37:53] [EUCAERROR]错误:doAttachVolume()失败错误= 1
     [2010年8月20日16:37:53] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-59C90629 remote = / dev / etherd / e0.1 local = / dev / sda5)
     [2010年8月20日16:37:53] [EUCAERROR] AttachVolume()失败(err = -1)XML =
     [2010年8月20日16:37:53] [EUCAERROR]错误:doAttachVolume()失败错误= 1
     [2010年8月20日16:37:58] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-59C90629 remote = / dev / etherd / e0.1 local = / dev / sda4)
     [2010年8月20日16:39:38] [EUCAERROR] AttachVolume()失败(err = -1)XML =
     [2010年8月20日16:39:38] [EUCAERROR]错误:doAttachVolume()失败错误= 1
     [2010年8月20日16:39:38] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-59C90629 remote = / dev / etherd / e0.1 local = / ev / sdp)
     [2010年8月20日16:39:38] [EUCAERROR]错误:doAttachVolume()失败错误= 1
     [2010年8月20日16:39:38] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-59C90629 remote = / dev / etherd / e0.1 local = / dev / sdp)
     [2010年8月20日16:39:38] [EUCAERROR] AttachVolume()失败(err = -1)XML =
     [2010年8月20日16:39:38] [EUCAERROR]错误:doAttachVolume()失败错误= 1
     [2010年8月20日16:41:15] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-5A030630 remote = / dev / etherd / e0.2 local = / dev / sdp)
     [2010年8月20日16:42:55] [EUCAERROR] AttachVolume()失败(err = -1)XML =
     [2010年8月20日星期五16:42:55] [EUCAERROR]错误:doAttachVolume()失败错误= 1
     [2010年8月20日16:43:12] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-5A030630 remote = / dev / etherd / e0.2 local = / dev / sdc)
     [2010年8月20日16:44:52] [EUCAERROR] AttachVolume()失败(err = -1)XML =
     [2010年8月20日16:44:52] [EUCAERROR]错误:doAttachVolume()失败错误= 1
     [2010年8月20日16:50:02] [EUCAINFO] doAttachVolume()被调用(id = i-33BD0649 vol = vol-59C90629 remote = / dev / etherd / e0.1 local = / dev / sdd)
     [2010年8月20日16:51:42] [EUCAERROR] AttachVolume()失败(err = -1)XML =
     [2010年8月20日16:51:42] [EUCAERROR]错误:doAttachVolume()失败错误= 1

问题:

  1. 我应该把SC加在哪里? 公共networking还是专用networking?
  2. 如果应该连接到专用networking,如果CLC无法到达专用networking,如何注册SC
  3. 为什么两个解决scheme都无法将音量附加到实例?

================================================== ==============

第二个是:

  1. 我目前正在尝试做更多的testing。
  2. 我想将4物理体系结构扩展到16物理体系结构。
  3. 无论我要使用多less台机器,我都有一个长期的问题,没有被大量的文件解读。
  4. 我devise的新架构就像下图 替代文字
  5. 在新的拓扑结构中,我假定存储控制器应该连接到专用networking
  6. 在这个模型中,运行在节点控制器上的实例应该分配两个IP地址,一个私有的,一个“公共”
  7. 公网IP地址应该和CC一样在networking上吗?
  8. 这意味着实例可以被CC所在的networking访问。
  9. CLC应该运行一个网关服务让实例访问外部networking

问题:

  1. 这个devise有什么问题吗?
  2. 如果实例只能得到与集群控制器在同一networking中的“公网IP”,客户端如何从外网访问呢?
  3. 意思是,如何通过CLC从云端访问实例?
  4. CLC是否具有像CC一样的机制来为实例分配一个“公共IP”,以便它可以被访问?

================================

这就是我需要问的。

非常感谢您阅读这个杂乱的post,任何forms的答复,高度赞赏!

下面的答案都假设networking模式是MANAGED-NOVLAN(这可能也适用于MANAGED模式)。

第1部分:

-1)除非你有特殊的需求阻止它,否则我会build议将SC与CC耦合。

-2)在“pipe理”模式下,CC位于公共networking与(一个)云集群的私有networking之间。 如果SC位于CC机器上,则可以与两个networking进行通信。 如果您决定将SC安装在专用networking上的单独服务器上,则需要在CC上创buildNAT规则(使用iptables),以便通过CC防火墙启用SC和CLC之间的通信。 CLC将需要这个规则与SC沟通。

-3)在解决scheme1中; 你的SC没有连接到专用交换机(这是必须的)。 在解决scheme2; 你可能没有在CC上创build这个iptables规则,然后SC被隔离在CC之后。

第2节:

-1)一次校正:合并交换机CTI和交换机1,应该是与公网连接相同的交换机。 我也build议(除非绝对需要)将CLC和WC合并成一台机器,并将SC合并到各自的CC上。 UEC云的这个图( http://cssoss.files.wordpress.com/2010/05/eucalyptus_cloud.png?w=600&h=467 )可以帮助你。

-2)当您创build一个新的实例(euca-run-instance)时,Eucalyptus将在pipe理正在运行实例的节点的CC服务器上创build一个新的iptable规则。 该规则允许通过CC的通信。 这种NAT穿越路由公众IP与其相应私有IP之间的通信。

-3)客户端通过相应的CC访问实例。 CLC只是在那里pipe理云,但一旦一个实例启动,CC处理通信。

-4)总之:不。

好,让我们试着开始回应

  • SC问题

SC需要始终可以从实例访问,因此它需要与节点控制器位于同一networking中,因为实例存在于不同的networking上,所以实例无法看到存储。

  • networking拓扑结构

有单独的networking是很好的,但是我认为最好是把你的安全设置在防火墙和stream量控制上,而不是把事情搞得太复杂了,Eucalyptus喜欢它,当networking很简单时,从一个networking开始,不要分开在两个,直到你有一个很好的安全感。 由于其他组件的安全性将由私有networking和桉树提供的协议提供,因此集中精力进行安全的CLC和CC。 在任何情况下NC都不需要外部IP。

  • networkingdevise

这样的devise看起来很稳固,所有的公共广播地址都会由CC提供,所以CC实际上就是你的门户,把它看作是Amazon EC2中的“可用区域”,通过拥有多个CC创build你的区域。

在简历中,密切关注CLC和CC和Walrus,确保你知道他们的安全和沟通的内部和外部,其余的组件应该是好的,在内部networking中生活愉快。