Answers:
我们使用Solaris(2012年11月编辑:2009年)来设计只能在Solaris + Sparc上运行的软件,它肯定是可靠且强大的操作系统,但是除非您拥有在Solaris +上运行时具有巨大优势的应用程序Sparc,没有必要走那条路。
在大多数情况下,您将不在生产环境中使用OpenSolaris,而是使用最新的Solaris 10发行版(截至5月9日)。对于具有Linux / FOSS背景的人来说,需要付出巨大的努力才能使Solaris 10安装像Linux一样“舒适”。
我遇到的许多Solaris专家肯定很有才华……但是他们常常不知道Sunfreeware和OpenCSW提供的FOSS软件包如何使生活变得更轻松。
Solaris随附的标准Unix实用程序完全向后兼容(后向屁股的另一种说法)。一些Solaris专家最终出于合理性而安装了gnu-tar,wget,gnu-grep等。某些软件包仅作为源提供,并且未经Sparc的作者充分测试。(并非所有开发人员都有一个Sparc框)
Linux / FOSS用户习惯于使用apt / rpm / up2date / ports / yum / whatever来修补/升级系统。另一方面,Solaris patching = hell。功能最强大的Solaris修补工具实际上是Sun不支持的第三方脚本。花点时间浏览这里的评论。
Solaris的一个出色的后向“功能”是所有软件包名称都以SUNW开头。(他们正在使用OpenSolaris进行更改)。因此,假设您有一个名为SUNWfoo版本1.2的软件包。如果发布此软件包的补丁程序,您会怎么称呼它?没有引入Solaris的理性人士会认为“ SUNWfoo版本1.3”。错了,因为Solaris修补程序用于文件而非软件包。
看看本周的《太阳补丁俱乐部》我收到的 ”电子邮件。这没有道理。比较Linux / BSD OS更新工具和打包系统,然后考虑跳入这一步。
至于可靠性,最重要的参数是您的Sys Admin。如果您的Sys Admin是Solaris专家,但对Linux一无所知,那么Solaris是个好主意。在有能力的管理员的协助下,任何操作系统都是可靠的。但是硬件,磁盘,内存,网络设备都将失败。一旦拥有一定数量的服务器,每隔几周就会有Sun人员来更换服务器。如果使用x86,将会有Dell / HP的人员加入。有什么区别?我没有看这些数字,但我被告知Sun + Sparc更加昂贵。
我见过的许多Solaris商店仍然停留在1999年。他们购买了一个大型的Sun Box,却没有任何性能指标。一个更大的盒子。如果您的应用程序使用此策略效果最好,请继续使用Solaris。
另一方面,您可以架构您的应用程序是可靠的/可扩展/高可用性。如果Solaris上的一些很酷的软件/硬件使您能够显着提高性能或变得更加可靠,则可以使用Solaris。但是,您会发现许多公司已经能够使用基于FOSS的完整技术来扩展和扩展其应用程序服务器,Web服务器和数据库服务器。
我想在准备好Solaris之后的几年中,其中许多观点将被淘汰。截至2012年11月,Oracle破坏了OpenSolaris,Solaris 11不再具有吸引力。
ZFS和Dtrace是非常引人注目的功能。IMO,他们只是没有足够的吸引力而忽略Linux / * BSD。ZFS和容器并非没有问题。随着虚拟化技术的普及,“二进制兼容性”的观点并不那么重要。二进制兼容性也不是没有问题的。
如今,运行大型群集(仅在其下运行Linux )的Google,Apple(是Apple),Amazon,Facebook赚了数十亿美元。90%以上的HPC /超级计算机群集运行Linux。另一方面,大约有十亿多部电话和小型设备运行Linux。
即使可以在Solaris上运行上述代码,任何人都可以获得什么呢?换句话说,这些人由于不在 Solaris上运行而失去了什么?显然,ZFS,Zones,Dtrace等不足以吸引他们,胜过任何负面因素。这些问题的答案应能帮助您回答原始问题“为什么”。
Solaris确实具有许多不错的特性。我运行的Solaris不太多,我对它的使用经验也不多,因此我相信其他人的列表会比这大。
这是我能想到的一些。
Solaris是可靠的。在Sparc上运行Solaris的12年中,除非硬件出现故障,否则我从未遇到过内核恐慌。对于Linux,由于内核错误,我已经看到了大量的内核恐慌。
我也想不起必须重新启动Solaris盒,因为它不会响应。我一直能够从中得到一些东西并恢复系统-也许在小型服务器上不是问题,但是当您查看E10k或E20k花费了多长时间启动时,您真的不想被迫重新启动。我已经看到linux盒在很多情况下变得难以置信。
话虽这么说,但我使用linux来处理几乎所有的事情,从nlsu2作为打印/文件服务器,到相当强大的服务器。Solaris无法涵盖大多数此类硬件。Solaris已经占有一席之地,但是现在它正成为一个真正的利基市场。
在回答您的问题之前,我只想说,我永远不会在任何新项目上积极选择Solaris作为操作系统。Linux可以提供Solaris所缺少的更多功能,除非您花很多精力安装所有GNU东西以模拟Linux默认情况下的功能。话虽这么说,但有两件事可能会让我以外的人选择Solaris:
DTrace-这是您可能想到的最强大的OS工具工具。如果您一直想寻找某种性能瓶颈,那么在没有DTrace的情况下进行操作就像在寻找没有手电筒的室外小屋一样。
Niagara处理器 -在非常多线程的服务器应用程序的很小一部分上,Niagara可以为您提供相当不错的价格/功率/性能比。但是,这一子集每天都在变小,因为英特尔已经能够通过生产良好的通用硬件来吞噬掉大部分子集。
几个原因。我坚持下去。客户想要它。这是唯一在SPARC处理器上运行的东西(1)。但是主要是在我遇到的环境中,这是因为它是十年前的设置方式,因此没有理由对其进行更改。
传统上,Solaris的扩展比其他方法要好得多。当我指的是规模时,我的意思是多达数十个或更多的处理器,以及数十GB的RAM。这不仅是获得这种规模的最佳方法,而且是唯一的方法方法。
除了出色的可移植性(在旧的SPARC处理器上运行的二进制文件还可以在新的二进制文件上运行)之外,这家公司的计算机和软件确实处于落后地位,而Sun在许多方面都是赢家。
今天也许还没那么多,那让我有些难过。
脚注:
(1)是的,我知道Linux可在SPARC处理器上运行,但是在实验室或地下室之外很难找到它。就像Solaris x86以前以相同的方式逐渐消失一样。
目前,我们仅将其运行以提供供应商支持。几乎所有非本地生产的电话都是Solaris(特别是所有5类电话交换机和专用VOIP软交换机都在Solaris上以Java运行)。
我们还从计费系统的旧部分维护了一些Solaris框,这些框没有源代码,我们从来没有真正为Linux重写过它们。过去,在Solaris上运行Oracle DB曾经使我们感到更自在,但是随着时间的流逝,Linux变得更加稳定,并且对自己对Linux的理解更加自在,因此我们进行了迁移。
运行Solaris的原因之一是Sun硬件符合NEBS的要求。A / B电源,很多东西上的2n + 1冗余-速度不是很快,但可以经受住像地震一样的地震,这通常对于电话来说更为重要。
总的来说,我真的很喜欢Solaris,我喜欢它的稳定性,整洁度,操作系统支持的时间长度,二进制兼容性等。不过,在2002年左右,Solaris / SPARC与Linux / x86的价格/性能曲线非常疯狂。现在要花很多时间才能回到Solaris。
Solaris是类似于os的Unix,它是为企业服务器设计的,例如在io /吞吐量非常高且需要服务器24x7全天候运行且停机时间较少的地方部署了强大的应用程序和数据库。通常,ZFS功能令人赞叹,它像RAM一样工作,您无需管理任何io操作,并且可以在数据磁盘处于活动状态且绝不影响停机时间的情况下管理所有正在运行的io。简而言之,到目前为止,它的出色操作系统特别是在基于SPARC的服务器上部署时。
我有一个朋友专门为使用ZFS的规范实现而部署了OpenSolaris。