关于openSUSE长期版本和openSUSE是否适合做服务器答疑

ps:内容有点长,摘自openSUSE中文社区,点击访问原帖。

首先:关于版本号可以看这里 https://en.openSUSE.org/openSUSE:Versioning_scheme
支持周期在这里 https://en.openSUSE.org/Lifetime

1.关于长期版维护: 《

initialdp 写道:从您的描述看,Evergreen版本是单数版本号?11..x, 13.x, 15.x,,,,,,?我刚才google了一下,貌似Evergreen仅仅是社区简单维护一下,在SuSE公司层面是没有资源安排做这个事,对吗?

不是,偶然现象。你要知道,从 11.0 起才有 openSUSE 从 11.2 起才有 Evergreen 这个概念哦。12.1 是因为切了 systemd,所以整个系列都做不了。
嗯,是「社区简单维护一下」,因为:
1. 用 openSUSE 的大部分都在跟新版,这是我们和 Ubuntu 最大的区别。
2. 究竟是由社区里的谁「简单维护一下」的呢?Maintenance 小组,挑选什么版本能成为 Evergreen 也是它们来做。我们 Maintenance 小组目前一共三个人,都是 SuSE 员工。。。如果你一定要一顶员工帽子来当定心丸的话。。。
SUSE 公司层面只承认自己赞助了社区,「参与」了开发哦,它可不承认「主导」、「安排资源做」,openSUSE 项目是开源软件社区,SuSE 是商业公司。是由 SuSE 员工以个人身份在 openSUSE 项目参与了开发和维护。这个概念一定要搞清楚,我们的社区是大家的,SuSE 只是一个比较活跃的企业参与者。当然如果你说「要是 SuSE 有活这帮人不就跑了吗?」问题是这帮人在 SuSE 就是干 SLE 上相应的活。。。SLE 11 和目前的 Evergreen 基本一样(不是说底层,底层本来就一样,上层包的版本也基本一样)。。。。。同样之所以要发 13.1 Evergreen 因为转过年来 SuSE 就要发 SLE 12 了。
上面也可以看作是对你「为什么 SLE 没有 CentOS 类的东西」的回答,CentOS 是:社区对 RedHat Linux 的重编译版,由社区维护,RH 是不管的。SLE 是 Evergreen 的重编译版,是由维护 SLE 的同一帮人维护,当然甘心做雷锋的 SUSE 是不会承认的。(你可以想象为德国人的执拗,社区就是社区,给了你我不放心怎么办,我把活儿干了然后不承认)

2.关于测试:《

PaleFire 写道:不是说我们是有公司里专业的给我们做稳定测试的么?

很简单。Ubuntu 不稳定是因为它用用户来做小白鼠来测试,然后只修 Beta 用户汇报的故障一阵子,然后发布。
我们的测试流程是这样:
——————————————————————————————————
机器测试:http://openqa.openSUSE.org/
我不多讲,你看那个页面你就知道了。也就是说 SUSE 单独给 openSUSE 赞助了一个集群,这个集群干嘛的呢?装机。。。把安装过程全部拆解开,比如选时区(你用人力是选不完 200 多个的吧?即使 Ubuntu 的用户基数它也选不到,比如蒙古乌拉巴托的吧?),然后到了按「OK」还是「Cancel」的时候在虚拟机里进行截图存照。你要之前步骤出错是看不到这个页面的,虚拟机截不到这个图就证明前一个步骤有错误,于是人力就会介入去修。修好,继续跑,openQA 程序会自动记录状态,直接从这里开始,自动发送 OK。。。如此往复,我们连 ARM 平台都是这么测的。
也就是说我们处于一种「主动进攻 bug」而不是「被动发现 bug」的状态。
目前这个环节社区方面参与的比较少,所以我说稳定性基本都是由 SUSE 公司来保证的。这就是我们升级始终不挂的奥妙。C 家赞助得起集群吗?
之后,与 openSUSE 相关的 SUSE 员工基本会全员换装。人力安装后出 bug 内部消化。
——————————————————————————————————-
然后才会拿出 Beta 给社区用(这就是为什么我们的 feature freeze 为什么那么早的原因)。接着才是所有发行版都会有的正常测试流程。
目前据我了解所有「其它」发行版都没有我 block 里的那个部分。包括 Fedora。甚至 Debian/CentOS 也没有。所以它们的稳定版发布周期才会那么长。基本上就我感觉,如果你在服务器上想适当追新,那你基本没别的选了。好比你在 Debian 6 上跑 Python3,那能稳定得了吗?Python3 要求的 glibc 都比 Debian 带的高吧?于是 backport 的 glibc 能和其它系统组件比如 cracklib 的低版本一起工作吗?或者针对老版本 port 的 Python3 稳定吗?少功能吗?你是不开发发行版想不到,我想想就觉得毛。老房子是挺稳定的,但我为了新家具换了根梁或者砸面墙,再说整体稳定那是开玩笑。。。

3.关于稳定性:《

initialdp 写道:我觉得您说的不具有可比性。 比如openSUSE社区的所有服务器,会要求99.99%的稳定性么?会要求至少N年的运行么?如果有问题,大不了重启一下,死不了人,也不用赔钱吧。这种情况下,就算用Fedora我觉得都没有任何问题。

在银行系统、通信系统、工业控制系统、商业系统等对稳定性有一定要求的领域,就算很小规模,您看到过(或者听说过)有人敢用Arch么? 个人而言,我对openSUSE、Chakra、Arch、Gentoo等系统仰慕不已,愿意学习试错。我们选择linux发布版本的前提,就是后面要有商业公司支撑,openSUSE是个不错的选择。但就我们的应用场景而言,目前感觉openSUSE还不太合适,SLES应该不错,不过没有免费版本。如果openSUSE能提供类似Ubuntu LTS的版本安排(不一定非要7年,但18个月肯定不行),那也是可以接受的。

1. 会。我遇到过的场景有两个,我总去的两个,OBS 和 Wiki 我们是有 sheduled maintenance 的。没 sheduled 的 unavailable,我 11 年开始参与 openSUSE 开发,两年了没遇到过。另外你要知道 OBS 的管理员同时维护着 SUSE 内部的 SUSEBS 和 Meego 的 OBS。
SUSE 是有 High Availablity 服务的,毕竟它是 SAP 的老大。而 High Availability 你学计算机你应该知道,这不是我拿个筛子后改能改出 high availablity 的。它得从 openSUSE 就开始塑形。
再举个简单点的例子,你听说过有人汇报 openSUSE 的 X11 以下层面的东西的 bug 吗?有人报过 glibc?Apche?php5?mysql?
个人觉得你有个思想需要转变,openSUSE 不是 Ubuntu 一样只有 LTS 能用的烂货,你需要把它定义成企业版和完全社区版之间的一个奇葩,是由企业顶着社区帽子干出的、自己拒绝承认的、为了给自己企业版塑形甚至有完整的 SLES 内容的「社区版」(SLED 不是,它有桌面环境)。它每一个 openSUSE 版本的底层都是用 SLES 的标准来要求的(但它不承认)。为什么做 openSUSE 开发者比别人规矩多流程多?就在这儿。它欣赏你的帮助但又不能任你把底层破坏。为什么你在邮件列表发这种帖子都是 SUSE 的人来回来修,第一个搭理你的人为什么不是我。好吧你又问了,那 SUSE 要社区干嘛?干嘛无私奉献?它要社区的 GNOME。这就是为什么 openSUSE 那么多人用 KDE 但它的 GNOME 就是死不了的原因。这也是 SUSE 在全球只保留研发中心招什么内核工程师而不招什么美化小组的原因,在 SUSE 里入门才干桌面呢,它把这块外包给社区了,自己只搞最核心最尖端的。SUSE 把 GNOME 拿来,由入门工程师再修几遍 bug 然后装到 SLED。
据我所知,openSUSE 的非 SUSE 成员最牛的干的才是桌面环境,真正把手伸到内核这种底层东西里的,他不是 SUSE 员工也基本是 Bluesystem 索尼爱立信 IBM 这种买了或卖了我们企业版的公司的人(不然你也不懂啊)。。。当然在我们这儿他们也叫「社区成员」。而 Debian 我估计应该至少有 50% 左右的 70 年代的那种老自由黑客。那才是真正的「社区成员」。但后果就是它的底层比较 casual,全靠人格而没有太多规矩去约束着,有点像 FreeBSD。
另外你可能还有一个误区:觉得 SUSE 会把好东西藏到 SLE。事实上它只是对 SLE 做更多的测试(上面讲了,比如 openSUSE 是三个月,它做半年甚至八个月机器测试),根据企业应用需要做修改(这你应该能理解,淘宝要的内核跟腾讯要的内核肯定不一样,淘宝要高并发的一次性 http 请求,QQ 可能要持续连接的,这内核肯定要改),它的工程师主要干这个事情,而不会蛋疼的「这个 bug 我在 SLE 修了不给 openSUSE 修」,因为那样未来你还是要修。与之相反它反而会把 SLE 上发现的 bug 修到 openSUSE,持续的整理在「根据企业应用需要做修改」中的通用部分并反馈回 openSUSE 和上游,因为那样他们维护的代码树会变少。
所以说如果你要的是 SLES,它就在 openSUSE 里(你别装桌面)。SUSE 并没有用 SLE 来赚钱,SUSE 并没有用 SLE 来赚钱,SUSE 并没有用 SLE 来赚钱。因为很重要所以我重复三遍。它赚钱依靠的是上面我说的特殊修改,以及在某些需要认证的领域的独家垄断(比如 SAP,你想买 IBM 的 SAP,给你搭配的服务器就是 SLE,你想用别的?抱歉你支付的价格里已经包括这个了,你不用,我们 IBM 不管你在其上的 SAP bug!这话 IBM 敢说的!因为它垄断的!),和自家和 Novell 基于 SLE 开发的企业应用(Netware?)来赚钱。这些是没有竞争的。操作系统是有竞争的。实际上在这个行当里只有 C 家还天真的以为光卖操作系统就能赚钱了。为什么超算优先用 SLE?一因为 IBM 就是超算的爷爷,二是因为我们可以为了你超算专门定做。别的发行版恐怕连超算都没见过吧?这不 C 家盯上广州的天河二号了,要不为什么争当「中国国家操作系统」?当然有社区的人说 SLE 卖得贵,一是怕你买裸系统来盗跑 SAP,或许是 IBM 建议的。二这是一种销售策略,因为这样我们自产的应用软件就可以卖得很便宜,实际上却没有损失任何金钱!给你的代码糖而已!因为没有人是买 SLE 装在 PC 上的!包括 SLED 也是!它是你后面说的银行系统的给你取钱那个柜员用的!是捆绑销售里面的一环。

2. 银行系统、通信系统、工业控制系统、商业系统等对稳定性有一定要求的领域,就算很小规模,您看到过(或者听说过)有人敢用Arch么?

你刚说完我的没有可比性,你又来一个更没可比性的。那种环境不要说 Arch,Debian/CentOS 都不可能。人家看得只是「认证」、「认证」、「认证」!看得只是「有没有可追踪的成功案例」还得是类似规模的!你说你前东家跑 Debian 三五年一点问题没有,那不可追踪。没有银行会让竞争对手参观这个!
所以必须是认证最多的企业版:SLE。没有选择!没有选择!因为很重要所以。。。这就是为什么 SUSE 能独吃世界 500 强 95% 连 RH 都做不到的原因!你想做到,先认证,认什么证?SUSE 出的认证。。。尼玛。。。
我对你的应用场景的假设肯定不是这个,如果你问的是这个的话,我建议你立刻拿起手中的电话,拨通 SUSE 的销售热线(声音很美哦)!
我对你的应用场景的假设是:中小型互联网公司,那么是「有人敢用 Arch」的。Arch 中文社区里面有两三个开这种公司的,跑的都是 Arch。也是有用 Gentoo 的,豆瓣嘛。。。

3、SLES应该不错,不过没有免费版本。如果openSUSE能提供类似Ubuntu LTS的版本安排(不一定非要7年,但18个月肯定不行),那也是可以接受的。

你想在 openSUSE 上用到 SLES 的服务,是不可能实现的。因为那是最好的企业操作系统。那些价格它一定会给你免除麻烦。我可以说,我手里就有激活码,可我敢说有就敢说不给你。激活码是服务的钱。
你要在 openSUSE 上用到 SLES 的质量,有 95% 的可能。90% 来自于 openSUSE 本身,5% 来自 Evergreen 和 SLE 的同质性、更新、修复和维护。剩下那 5% 你可以自己实现(英文社区很多人都是这么干的),装 SLES 试用版,不用 SLES 的更新源(激活码就是激活的这个),用同质的 Evergreen 的更新源,然后再自己在 OBS 维护一部分软件包。但这 5% 实现的前提是,你得对 openSUSE 非常非常熟悉。最终还是:看谁运维。

4.关于与Centos相比:《

initialdp 写道:CentOS 的确是社区维护,但由于是完全copy自RedHat,因此也可以认为质量实际是有保证的。当然,也就是因为单纯由社区维护,说不准哪天就撤了或者被redhat给掐了。

我能说你「认为」有误,或者「评估」有 regression 嘛?
1. CentOS 是重编译版。你要知道,编译是个大活(不然我们的 Factory 岂不是随时可用了?),openSUSE 和 SLE 是由同一帮人编译整合成操作系统的(我们社区的 release manager 其实是个 SUSE 的职位,他有管那边。。。),甚至由于 OBS 有「导入」功能,他们「重编译」了没都不知道。
而 CentOS 可是没有 OBS 的。编译中由于编译机不同造成的编译 RH 时没出现的问题,是解决了?还是简单的丢了那个包不提供?解决了的话是由社区修的还是 RH 修的?社区修的的话,修复质量跟 RH 比如何?我觉得如果真做尽职调查这种不一致的地方就是你要抠 detail 的地方。我们有 OBS 所以基本是一致的,不一致的地方在于 openSUSE 不支持而 SLE 支持的平台,比如 s390, ppc, ppc64。
2. CentOS 的更新是由社区提供的,而不是由 RH 提供的,甚至 CentOS 的一些底层更新包或者 nginx 这种服务器用包都是社区提供的(据说有一个集中的地方有 4w 多个包),但那也不是企业应用级啊,提供它的人是免责的嘛。我们是由同一批人提供的啊,openSUSE 这边是的他可以免责,但 SLE 那边使用的是同样的更新,他怎么办?还是有能追究责任的 part 存在的。
所以我觉得在上面两个问题你没有真正搞清楚(比如请教一下红帽的人)之前,「也可以认为质量实际是有保证的」应该始终打上引号来提醒自己。我觉得 Evergreen 和 CentOS 深层分析后可能有个代码糖:
首先两者目前都没有出现广为流传的笑柄级 bug。但是未来都是有可能出现的。万一出现了:CentOS,自认倒霉。Evergreen,我虽然倒了霉但让我倒霉那位也别想好过!这就是代码糖,有个安慰奖。。。
RH 可以掐掉 CentOS,因为它严格说和 RH 没有关系。是一帮人在把玩他的企业版(用 SRPM 重编,你也可以做到去重编 SLES,但这么多年为什么一直没人做我觉得不是没人想到,那就只能是:不需要)。
Evergreen 完全属于 openSUSE 社区,SUSE 无权掐。SUSE 可以掐掉 Evergreen 的维护团队,但那样一来 openSUSE 甚至是 SLE 的维护团队实际上就也被掐掉了。因为不像 CentOS 和 Fedora 没有关系,openSUSE Evergreen 是 openSUSE 的 LTS 分支。Evergreen 因为是注重稳定的 LTS,维护更新和 bug 都比较少,因为在 openSUSE 是那个版本的时候修 bug 修的就比较勤奋。它只占用了维护团队很少的时间,出于成本效益原则,SUSE 掐它几乎不省成本,更重要的是维护 openSUSE 各个分支就在负责维护的员工的工作内容里,除非你给他另找活,但 SUSE 就做这一个操作系统,找什么活? 或者给他降薪,那他跳槽全系列 openSUSE 包括 SLE 都没有维护人员了,更更重要的是:SUSE 财大气粗不差钱。完全掐掉呢?哈哈,维护不像打包,他需要有网络安全背景,需要从安全公司手里收漏洞,安全公司不信任没有公司的人,万一你加入 openSUSE 社区是爱好,职业是黑客怎么办?除非我们社区有开安全公司的,不然社区成员接手不了。于是一个完全没有更新维护的发行版是不符合 SUSE 把 openSUSE 作为它企业版的 base 的定位的。所以它掐掉 OBS 不在全世界各地办开发者大会都不会掐这个的。

 

4.关于openSUE长期版定位:《

补充几点:
其实常用的服务器机型就那几种,与 Ubuntu LTS/Canonical 这种新进入服务器市场的不同,我们自己在服务器市场有很大份额,常用机型基本事先都能 cover 得到而不用交给用户去测(据 OBS 管理员 Adrian 爆料,德国总部地下全是各类服务器集群)。甚至我们和 IBM 是基友,有些型号 IBM 会给我们测。SUSE 和 Ubuntu 的最大不同就是 SUSE 能够随时给你变出集群来。。。
今天刚听说如果社区有学生要做镜像,一般是能直接申请赞助一台服务器的,我当时就震惊了,原来没有脸大的去试验不代表人家没给你准备啊。。。下一步等我忙完这几个月准备撺掇北交更新下他们的服务器。。。
而且,如果你研究的深入会发现:有些架构开发 ARM 是更加优良的,比如我们 lizards.o.o 前面爆出我们在 ppc64 上面弄工具集为 ARM 编译软件,编译时间节省了一半。而业内对 ppc64 有支持的还能给人用也就 RH/SUSE 了吧?Debian 那是过家家,它甚至「鲁莽」的要求全部软件必须在 ppc 上能编译(上游没开发怎么办呢)。说这些的意思是说,你选 Evergreen 虽然不能得到付费的服务,但是人是靠关系维系的,如果你混的足够久,你就能得到一些糖果。。。openSUSE 是没有 ppc64 架构,但是如果你是资深社区开发者,你在 ppc64 上遇到的问题能不能发到邮件列表呢?实际上我们的邮件列表连垃圾信漏网发上去都没人有权限删除,因为我们没有 list manager,全靠人脑忽略。于是。。。。你懂得,中国人不就爱拉关系嘛。
其实严格意义上说:Evergreen 也是个奇葩。它的定位比较类似 CentOS,但你和 CentOS 比较又不科学。因为 CentOS 全是社区力量,我们能收到说了不是企业级但其实是企业级的更新维护。但你和 Ubuntu LTS 比也不科学,它的更新也不全是 C 家给你修的。可是我们在核心更新之外呢,又有了类似 Ubuntu 的 ppa 支持一样的 OBS 支持。。。。总之大概就是这样,可能整个 openSUSE 都是这样,爱它的人会很爱它,因为它太灵活太强大了。。。恨它的人也会很恨它,因为它是个四不像。。。就连「同质」的 Fedora 都没有像它这样更贴近企业(虽然官方不承认),而就连「完全不同质」的 Debian 在某些方面都不像它更「民主」、「更像社区发行版」,你不能喷红帽员工还能在 Fedora 混得好吧?我们这儿他脑残您随意。Debian 可以移除 scim,在咱们这儿什么都得上会。。。你不把异议全消除了想强推个什么那是完全不可能的啦。

5.关于SUSE给openSUSE的定位:《

initialdp 写道:我的应用场景您猜错了,实际上是“通信领域、工业控制领域”。在我了解的范围内,其实大部分厂家用的是CentOS,部分用Debian,有少量企业采用SLES,我们用Ubuntu LTS已经算比较激进了,的确没有看到用openSUSE的。根据您介绍的信息,我觉得大家(我是指:像我这类不明真相的群众)对openSUSE的了解可能都存在极大的误区。

我想我明白了。我们对“通信企业”的规模理解得不同。我说的是电信移动网通联通中兴华为这种,你说的是比如小米魅族或者深圳产机顶盒的某寨厂的规模。
好吧我承认你学通信工程的话去那儿是能找到活干,有射频模块就行。
但实际上是这样的:
SUSE 只面对五百强规模的,它都是高技术,动辄定制,你钱不厚它没利润就不爱服务你。(你说的”少量企业就是有追求的那种,其它的从你描述也看出来了,他们更注重的是 IT 成本)
它对你说的这种的答案就是 openSUSE 系列。高度近似五百强企业级的质量,够你用的,又不收钱。
这么做主要是自上而下蚕食 RH。因为相比较而言,RH 的市场定位垄断性差。而 Ubuntu LTS 做再好,不定义其为竞争对手。我们传统领域它进不来。充其量是谁抢中小企业快的问题(RH 才需要操心 Ubuntu)。但我们有先天优势:稳定性。我们 openSUSE 就是五百强用的东西的胚胎。就跟你看不起演唱会去彩排探班也比去街头杂耍强吧?
但问题就像你说的,之前太高山流水没人信它能走近生活。
再就是屌丝的劣根性,白富美给你机会你不去占便宜反而怀疑是陷阱宁可去找黑木耳紫葡萄,也花点钱,但心里舒坦觉得比较符合现实了。但白富美找你当备胎可能是跟另一个白富美打了无聊的赌注怕她勾搭成功所以先来把坑占上啊!基本敢上的都得到实惠了。
之前德国社区经理找我听取意见的那次视频会议的其中一个议题就是这个。把 openSUSE 做得更稳定,给你们这些有追求又好面子又拿不起钱的人用。不计成本,就为恶心其它企业发行版或想成为企业发行版的发行版。(帮你做得更稳定对 openSUSE 社区有好处啊,在其中 SUSE 实现了它的战略目的,双赢)(这不是 Linux 社区的敌视与发行版荣誉战,接近同质的企业间搞死对方或者至少确保相互毁灭是永恒的主题)
简单说吧,2004 年左右 SUSE Linux 为啥在中国这么火?还不是它当时是唯一一个给你免费用我只卖服务的企业发行版嘛(当时没有 openSUSE)。后来 SUSE 为啥在中国没什么人用了?就你这种代表中国大多数的家伙们觉得搭不到免费车了就用看似有噱头其实完全不是那回事的 CentOS 了嘛,加上个人桌面换 Ubuntu 老运维去做 partner 不进机房新人渐渐就 Debian 之类的了。
但你要知道上帝关门的时候总是留窗户的,但太多人蠢到发现不了窗。领会了意图的老外就没有这个问题,这跟当时封闭的环境有关,咱们那时是知道一个什么东西就在小圈子里琢磨,70 年代人就有这个封闭意识,没改革开放时代长大的嘛。实际上是当时和 IBM 战略联盟,IBM 好像不让这么干,你卖服务我也卖服务,钱咋分?你去卖系统吧。这就是现在 SUSE 也强于服务并且偷着摸着总想卖服务的根源吧!老外人有材料有新闻能分析明白,噢 openSUSE 就是窗,咱们就知道 SUSE 不给用了,出了个社区版,就没意思了,但不知道其实换汤不换药一直都是一帮人,反而多了参与进来的新生血液比如我。于是现在曾经的巨人现在的王者带着崭新的一眼就能看出能出去的落地窗归来也就很正常了。

来自marguerite(女王)解答。

《关于openSUSE长期版本和openSUSE是否适合做服务器答疑》有13个想法

发表评论

电子邮件地址不会被公开。 必填项已用*标注