我正在尝试构build一个虚拟服务器用于J2EE Web应用程序托pipe的体系结构。 我没有虚拟化的经验。 我目前有1个服务器安装了Apache / Jboss / Postgresq / Proftpd,我想devise一些服务在不同的服务器上运行。
1个HTTP负载均衡器(+ 1个用于故障转移的HTTP服务器) – >多个应用程序服务器或Web服务器 – >数据库服务器(用于复制的+ 1个服务器)
数据库和HTTP负载平衡器(非虚拟)将存储在SAN和2台服务器上,
这是我心目中的: build筑
谢谢 !!!
减去FTP,那张图看起来非常像我们的一个系统,这对我们来说一直很好。 至于其他一些观点:
我们有一些运行JBoss的RH4虚拟机(ESX 3.5),它们都很好。 在构build虚拟框时,只要记住JBoss的内存要求。
如果你能负担得起,我肯定会select一个基于FC的SAN,如果你想要高吞吐量或未来的扩展。
根据我的经验,具有良好磁盘子系统的物理数据库服务器与访问SAN的虚拟数据库之间的性能差别不大。
一般来说,如果你预计高负载,我会100%把你的数据库放在一个FC SAN上,我们在VMWare ESX 3.5U4内部的Oracle RHEL 5U3上运行JBoss,效果很好,如果你使用VMWare的HA来进行故障切换,你想要吗?
我的2c
Xen虚拟化非常稳定,configuration良好可以带给你非常好的性能(当然,这不是一项简单的任务!)。 几乎唯一受到严重影响的应用程序是高带宽应用程序,如文件服务器或DBMS。 所以,如果你期望重负载,把数据库放在真正的服务器上是明智的。 其他一切都将受到你的互联网带宽的限制,所以虚拟化它们不是问题。
关于SAN:如果你有很好的交换机,通常使用Xen来存储Xen存储就足够了(要知道,3Com不太好,最好是惠普或戴尔)。 如果数据库不会长到TeraByte范围内,我会使用内部存储(如果需要的话,使用RAID1上的10K或15Krpm SAS磁盘),而不是SAN。 如果数据库将超过这个数字,那么更好地投资于一个好的FC SAN(我不能帮你)
如果您的负载均衡器暴露于不可信networking,我会考虑防火墙在不同区域的应用程序服务器和数据库服务器。 你的服务器angular色已经很好地分层了。 此外,我会尽量避免直接访问我的数据库服务器的FTP场。
把DBMS放在物理硬件上总是比较安全的。 除非你的背部靠墙,而你的老板比你大,否则不要虚拟化。
如果你有钱,可以得到FC。 单个iSCSI适配器比单个FC HBA慢4倍。 您可以通过添加千兆以太网适配器来获得FC的理论带宽,但不会得到低延迟。
您是否考虑将您的VM(虚拟机)放在SAN上? 对于虚拟机来说,由于虚拟机生成许多小的I / O,所以FC的低延迟计数很大。 对于一个更便宜的NAS选项,我更喜欢NFS over iSCSI。 备份虚拟机只是一个文件夹副本,configuration更容易。