Open Source на корпоративном рынке: сравнение совокупной стоимости
ОТКРЫТОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ОЖЕСТОЧЕННО КОНКУРИРУЕТ С ЗАКРЫТЫМ,
ПРИЧЕМ БОРЬБА НОСИТ НЕ ТОЛЬКО (И НЕ СТОЛЬКО) ТЕХНИЧЕСКИЙ, СКОЛЬКО ИДЕОЛОГИЧЕСКИЙ
ХАРАКТЕР. MICROSOFT И ДРУГИЕ МОНСТРЫ ПРОТАЛКИВАЮТ СВОИ, ЗАЧАСТУЮ НЕ САМЫЕ ЛУЧШИЕ
РЕШЕНИЯ, ЗАПУГИВАЯ УЖАСАМИ, КОТОРЫЕ НЕСЕТ ОТКРЫТОЕ ПО. ПОПРОБУЕМ ОСНОВАТЕЛЬНО
РАЗОБРАТЬСЯ.
Прежде чем бросаться в бой, неплохо бы для начала определиться с терминами,
закрыв этот вопрос раз и навсегда. На самом деле, не существует никакого
«открытого» или «закрытого» программного обеспечения. Граница между ними
настолько тонка, что практически незаметна. (Не)доступность исходных текстов
сама по себе никак не влияет на качество программного продукта, и наиболее
значимым критерием является выбранная модель разработки, включающая в себя
проектирование, кодирование, отладку, введение системы в эксплуатацию, поддержку
обратной связи с пользователями и так далее. Хороших программных продуктов
единицы - это правило справедливо как для открытых, так и для закрытых проектов.
Поэтому, чтобы до конца быть честными и беспристрастными, необходимо сравнивать
не что попало, а лучшие из имеющихся решений. Причем сравнивать по наиболее
значимым критериям, определяющим потребительские характеристики продукта, среди
которых на первое место выдвигается «совокупная стоимость владения».
Сравнение совокупной стоимости владения Windows Server и Linux/xBSD
Совокупная стоимость владения определяется полной суммой всех вложенных
средств, включая убытки. Вычислять ее можно по-разному (общепринятой методики
нет), поэтому совершенно неудивительно, что, подтасовав критерии, легко
выдвинуть на первое место свою любимую операционную систему, утопив конкурентов.
Ничего не остается, как заниматься расчетами самостоятельно.
В совокупную стоимость в первую очередь входит стоимость железа, необходимого
для обеспечения приемлемого уровня производительности. Известно, что Windows
предъявляет намного более жесткие требования к железу, чем Linux или BSD, причем
она хуже масштабируется и тянет за собой графический интерфейс с кучей слоев
абстракций, образовавшихся в ходе ее эволюции. А зачем серверу графический
интерфейс? Он не только съедает память и процессорные такты, но и существенно
осложняет удаленное администрирование, требуя высокоскоростных каналов и
применения специализированных аппаратных средств. Но «отодрать» GUI от Windows
невозможно, как невозможно исключить множество посторонних компонентов,
«слушающих» порты и создающих прямую угрозу безопасности. В то же самое время
поддержка многопроцессорных систем существенно затруднена лицензионными
ограничениями. Поэтому по части железа и Linux, и xBSD рвут Windows как тузик
грелку — сборка кластера на основе Windows обходится намного дороже.
А как обстоят дела с расходами на эксплуатацию? Возьмем то же железо. Windows
NT, в отличие от Windows 9x, хранит информацию о конфигурации оборудования в
реестре в виде дерева, которое строится на первоначальном этапе инсталляции и в
последствии не может быть радикально изменено. То есть просто снять жесткий диск
с Windows NT с одного компьютера и воткнуть его в другой (более современный) не
получится и потребуется переустанавливать систему заново. Если никакие пакеты
обновлений (Service Pack'и) не устанавливались, то можно обойтись и установкой
«поверх» (правда, о стабильной работе в этом случае придется забыть). В
противном случае потребуется полная переустановка системы со всеми приложениями
и последующей конфигурацией оных. При этом очень сложно не потерять никакие
настройки, которые не могут быть восстановлены с «чистого листа».
Другими словами, Windows NT привязывает нас к железу и не позволяет его
обновлять. А новые версии Windows в дополнение к переустановке требуют еще и
повторной авторизации, в которой нам компания Microsoft может запросто отказать.
И хотя серверное железо не меняется каждый день, оно подвержено поломкам (как
правило, внезапным). В случае Linux/xBSD все просто — переставил жесткий диск в
другой компьютер, и корпорация (или маленькая компания) продолжает жить полной
жизнью и дышать полной грудью, а вот Windows требует кучи времени...
На самом деле операционная система сама по себе никому не нужна, поскольку
она всего лишь обеспечивает унифицированную среду для запуска программ и следит
за распределением ресурсов. Весь сок в ПО. Нормальный Linux/xBSD дистрибутив уже
включает в себя практически все необходимое, а оставшееся можно будет легко
собрать на месте из готовых «кубиков». Фактически, Linux/xBSD представляет собой
идеальную интегрированную среду программирования — своеобразный конструктор, из
которого можно построить все что угодно. Windows же, напротив, являет собой
монолитный дистрибутив, и вся свобода выбора сводится к вопросу: устанавливать
ли «Блокнот» или не устанавливать. Чисто технически его можно и не установить,
но тогда перестанут работать программы, его использующие, а таких программ
оказывается на удивление много.
Как минимум, потребуется докупить антивирус, брандмауэр, систему обнаружения
вторжений, комплекс для удаленного администрирования и диагностики
неисправностей, утилиту архивирования и восстановления данных, не говоря уже о
серверах баз данных и так далее. Даже при минимальных потребностях стоимость
дополнительного ПО заметно превышает цену самой Windows вместе с железом, на
котором она стоит. А в Linux/xBSD все это есть изначально. И ставится одним
махом в автоматическом (точнее, почти автоматическом) режиме. Подчеркнем, что
речь в данном случае идет только о серверах. Что же касается рабочих станций, то
здесь вопрос даже не в стоимости, а в наличии, то есть отсутствии необходимого
ПО. Можно до хрипоты доказывать, что Open Office практически не уступает
Microsoft Office, а GIMP по целому ряду критериев даже переплевывает Adobe
Photoshop. Все это так, но… где найти людей, владеющих Open Office и GIMP'ом?
Где найти сопутствующую литературу? Открывая любую книгу, посвященную
фотомонтажу, мы с большой степенью вероятности встретим описание приемов работы
с Photoshop'ом, но практически нигде не увидим GIMP. К тому же, переходить с
одного программного пакета на другой очень муторно (переучиваться всегда трудно)
и производительность труда на долгое время падает ниже нуля.
Раз уж речь зашла о людях, то в совокупную стоимость владения необходимо
включить оплату труда системного администратора, которая тесным образом связана
с его квалификацией. Достоинство Windows в том, что установить ее может даже
четырехлетний ребенок, и система будет стоять и даже как бы работать. «Как бы»,
потому что иллюзия полета еще не есть сам полет, и такая «работа» продлится
недолго, если должным образом не позаботиться о безопасности, не установить и не
сконфигурировать дополнительные средства защиты, не разработать правильную
стратегию резервирования данных. Иначе рано или поздно произойдет крах.
Миллиардные убытки от хакерских атак, о которых неустанно рапортуют специалисты
по безопасности, не возникают из ниоткуда, а входят в счет совокупной стоимости
владения, зачастую ведущей к банкротству компании, подвергнувшейся атаке. В
частности, 90% системных администраторов, резервируя данные на DVD/CD-RW,
совершенно забывают о таком понятии как «время подъема системы». Вроде бы все,
что нужно, зарезервировано, но это «все» разбросано по десяткам, а то и сотням
дисков, в которых еще предстоит разобраться. Восстановление может занять
несколько дней, и при этом не все пользовательские данные окажутся когерентными,
то есть должным образом согласованными друг с другом.
Также необходимо отметить, что должным образом настроенная Linux/xBSD
способна беспрерывно пахать годами (или обслуживаться удаленно), а Windows
требует постоянного внимания, заботы и ухода (прямо как тамагочи). Отсутствие
средств удаленного администрирования приводит к необходимости найма отдельного
сотрудника на постоянной основе с хорошим окладом…
Свободное программное обеспечение развивается по естественным законам. В
частности, «морально устаревшая» версия компилятора GCC 2.95 успешно конкурирует
с новыми версиями, и разработчики продолжают ей активно пользоваться к
недовольству создателей GCC, но что последние могут сделать? Либо выпустить
более качественный продукт, либо заниматься бессмысленной пропагандой в надежде,
что кто-нибудь на нее клюнет. В случае же с закрытыми продуктами все намного
сложнее. Жизненный цикл поддержки Windows 2000 уже подходит к концу. А это
значит, что легальным путем ее будет уже не купить, и дыры останутся без
заплаток. Переход же на новую версию Windows требует вложений, превышающих ее
стоимость, ведь это не только время на переустановку и перенастройку всего ПО с
устранением всех конфликтов, но еще и простои, вызванные сбоями системы, с
которыми администраторы не имеют опыта борьбы. То есть, сделав выбор в пользу
Microsoft, мы попадаем в зависимость.
А открытое программное обеспечение предоставляет выбор. Никто и ничто не
сгонит нас с однажды установленной FreeBSD 4.5. Даже если полностью преобразится
железо и появятся новые протоколы интернета, непременно найдутся энтузиасты (и
это будут тысячи энтузиастов), которые реализуют все эти фичи в древней, но
горячо любимой 4.5 версии.
Мифы и их разоблачение
Экономическая модель, положенная в основу свободного ПО, радикальным образом
отличается от модели несвободного, и напрямую конкурировать с Linux/xBSD
компания Microsoft не может. Все что ей остается — вести скрытую информационную
войну, подпитываемую различными мифами, слухами и страхами. Главное для
Microsoft — запугать корпоративных клиентов свободным ПО, внушить им мысль, что
бесплатный продукт не может быть хорошим по определению. Рассмотрим эти слухи и
покажем, насколько они (не)состоятельны.
Свободное ПО плохо поддерживается
Действительно, свободное ПО чаще всего документировано кое-как. Информация
отвратительно структурирована и разбросана по многочисленным man'ам, факам,
комментариям в конфигурационных файлах, спискам рассылки и т.п. Ведущие
разработчики проекта на вопросы пользователей, за редкими исключениями, никогда
толком не отвечают, а примкнувшие к сообществу личности начинают ответ с
традиционного приветствия «ну, ты, блин, в натуре ламер», за которым следует не
менее традиционное «у нормальных людей все работает, так что ищи ошибку в модуле
hands или замени прокладку между креслом и клавиатурой». Существуют, правда,
организации, оказывающие поддержку на коммерческой основе, только ее качество не
дотягивает даже до уровня левой руки, и в нештатных ситуациях служба поддержки
бессильно разводит руками, оставляя нас наедине с проблемами, которые приходится
решать методом тыка.
Неожиданная «смерть» открытых проектов
Представим себе такую ситуацию. Два молодых, но очень талантливых и
деятельных парня создают замечательный продут, которым мы с удовольствуем
пользуемся. Но их обоих забирают в армию или они женятся, заводят кучу детей,
устраиваются на постоянную работу и утрачивают к своему проекту интерес,
прекращая его дальнейшую поддержку и развитие. И что тогда?! Во-первых,
пользоваться уже имеющейся версией никто не запрещает и если в этой версии все
всех устаивает, чего еще надобно? Если же появляется новое железо, новые форматы
и протоколы, которые крайне желательно поддержать — берем исходные тексты и
дорабатываем. Если не доработаем мы, это непременно сделает кто-нибудь другой. А
если не сделает, то возникает резонный вопрос: «Из какой дыры мы выкопали такой
продукт, который кроме нас и не нужен никому?»
Конечно, описанная ситуация несколько утрирована, но можно привести массу
примеров, как достойные продукты имели хорошее начало и плохой конец. Говоря о
распределенной разработке и миллионах программистов по всему миру, приверженцы
Open Source почему-то забывают, что из этих миллионов программировать умеют
сотни и при этом лишь единицы готовы засучить рукава и приступить к работе, не
ожидая, что ее сделает кто-нибудь другой. Причем, после ухода лидера о
какой-либо координации говорить не приходится — полноводный проект разваливается
на несколько независимых ручейков, постепенно исчезающих в пустыне
всеохватывающей энтропии. Это наихудший вариант развития событий, но он вполне
возможен.
Используя свободное программное обеспечение, мы не застрахованы от его краха.
Поэтому в корпоративной среде можно использовать те и только те программы,
которые придерживаются общепринятого стандарта, чтобы в случае смерти одного
продукта его было возможно безболезненно заменить другим. Пусть не совсем
безболезненно, но с разумными затратами и потерями машинного времени.
Но с закрытыми продуктами дело обстоит еще хуже. Если фирма принимает решение
о прекращении разработки (как, например, это случилось с отладчиком Soft-Ice или
языком Visual Basic), нам остается лишь заходиться в приступах бессильной злобы.
Никакой возможности заполучить исходные тексты и продолжить разработку нет. Хуже
того, напряженная патентная ситуация препятствует переписыванию продукта с
чистого листа. Даже если мы не заимствуем код, мы вынуждены копировать
определенные форматы, алгоритмы и технологии, а вот они-то зачастую и
оказываются запатентованными. То же самое происходит, если фирма, выпускающая
«наш» продукт, скупается конкурентом с целью «убить» удачный проект в пользу
своего, менее удачного, но более дорогостоящего.
Открытые проекты создаются по базарному принципу
Коммерческие проекты, как правило, более качественны, поскольку во главе
проекта стоит архитектор, а сам программный код подвергается контролю качества.
По крайней мере, можно надеяться на то, что установка завершится успешно, и
программа запустится. Открытые проекты, создаваемые на голом энтузиазме, очень
часто работают по принципу: умный разберется, а глупому это и не надо. Сообщения
об ошибках сплошь и рядом замалчиваются или перекладываются на чужие плечи: «это
ошибка компилятора/разработчика сторонней библиотеки/или чего-нибудь там еще,
почему мы должны исправлять чужие ошибки». Но это только вершина айсберга, -
худшие аспекты проблемы скрыты глубоко под водой.
Организация работы, при которой архитектура проекта составляется после начала
кодирования, порождает уродливые гибриды, развивающиеся по совершенно
«ненаучному» принципу и сочетающие несочетаемое. С одной стороны, «базарный»
стиль проектирования — это безусловное зло, а с другой, программисты реализуют
необходимые лично им функции в том виде, в котором с ними удобно работать,
невзирая на то, что он совершенно не вписывается в концепцию проекта. Вот,
например, IE имеет функцию поиска, но людям, реализовавшим ее, вряд ли
доводилось с ней плотно работать, иначе бы они взвыли от злости и переписали все
так, как это сделано в Горящем Лисе или Опере.
МНЕНИЕ ЭКСПЕРТА
Алексей Стахнов (писатель, программист, администратор)
Оценка стоимости владения
| Название |
Цена Покупки (БД + ОС + железо) |
Стоимость специалиста для обслуживания БД (36 месяцев)
|
Стоимость специалиста для обслуживания ОС(36 месяцев)
|
Остаточная стоимость на конец периода |
TCO итого |
| Самосборный сервер + Fedora core +fireBird |
0+5+1000=$1005 |
50*36=$1800 |
500*36 =$18000 |
$150 |
$20655 |
| Cервер начального уровня + Fedora core + fireBird |
0+5+2500=$2505 |
50*36=$1800 |
500*36 =$18000 |
$375 |
$21930 |
| Самосборный сервер + Windows 2000 Server + fireBird |
0+650+1000=$1650 |
50*36=$1800 |
500*36 =$18000 |
$150 |
$21300 |
| Cервер начального уровня + Windows 2000 Server core + fireBird |
0+650+2500=$3150 |
50*36=$1800 |
500*36 =$18000 |
$375 |
$22575 |
| Самосборный сервер + Windows 2000 Server + MS SQL |
600+650+1000=$2250 |
100*36=$3600 |
500*36 =$18000 |
$150 |
$23700 |
| Cервер начального уровня + Windows 2000 Server core + MS SQL |
600+650+2500=$3750 |
100*36=$3600 |
500*36 =$18000 |
$375 |
$24975 |
| Самосборный сервер + Windows 2003 Server + MS SQL |
600+660+1000=$2260 |
100*36=$3600 |
600*36 =$21600 |
$150 |
$27310 |
| Cервер начального уровня + Windows 2003 Server core + MS SQL |
600+660+2500=$3760 |
100*36=$3600 |
600*36 =$21600 |
$375 |
$28585 |
И вот теперь можно взглянуть на цифры и задуматься. Утверждение, что
«программное обеспечение от Microsoft стоит денег и немалых», на фоне
трехлетнего срока эксплуатации выливается в разницу порядка 15 процентов между
Linux и бесплатным софтом с одной стороны и пропиетарными продуктами с другой
стороны (для распространенных пакетов). Конечно, мы не учитывали трудовые
затраты, обновления на новые версии ПО, простой железа (поломки, дефекты, смена
драйверов и т.п.), затраты на интернет. Но в целом — экономия в долгосрочном
плане может достигать максимум 20–25%, а иногда даже свестись к нулю (при
использовании стандартных решений). Поэтому необходимо, во-первых, разбираться в
стоимости оборудования, программ и их эксплуатации, во-вторых, иметь много
аргументов за и против «неденежного» плана – удобство, меньше вирусов, более
защищенное решение, меньше потребляет ресурсов и т.п. И, в-третьих, быть хорошим
оратором, чтобы уметь донести плюсы вашего решения до руководства.
 |
|
Крис Касперски
|
|
Специалист по компьютерной безопасности и сжатию
цифрового аудио/видео, системный программист,
участвующий во многих проектах (большей частью
под NDA) по анализу вредоносного программного
обеспечения, поиску “закладок”, разработке систем
защиты информации от несанкционированного досту-
па/копирования информации как в качестве рядового
сотрудника, так и руководителя отдела. В настоящее
время работает в компании Endeavor Security, Inc, а так
же занимается преподавательской деятельностью.
|
|
|
Обсуждение статьи
|
|
|
|
RE: Open Source на корпоративном рынке: сравнение совокупной стоимости автором были немного некорректно "уравнены" MS SQL и FireBird, (видимо, рассматривались небольшие "задачи"). но для таких можно использовать бесплатные MSSQL Express, Oracle XE и т.п. |
|
RE: Open Source на корпоративном рынке: сравнение совокупной стоимости а где MySQL? PostgreSQL? |
|
RE: Open Source на корпоративном рынке: сравнение совокупной стоимости Стахнов в своих табличках смахлевал - не указал, что проприетарщина зависит в цене и от количества лицензий и что как правило это "на фоне трехлетнего срока эксплуатации выливается в" дополнительные затраты. |
|
RE: Open Source на корпоративном рынке: сравнение совокупной стоимости замечание по колонке: "Цена Покупки (БД + ОС + железо)" Цены на продукты от MS в реальности могут оказать другими, основываю свои слова на данных с: http://www.microsoft.com/sqlserver/2005/en/us/pricing.aspx http://www.microsoft.com/windowsserver2003/howtobuy/licensing/pricing.mspx 1. Минимальная цена на 2003 Server = $999, при этом это Standard Edition с возможностью подключения 5-ти пользователей 2. Минимальная цена на SQL Server 2005 = $739, при этом это Workgroup Edition с возможностью подключения 5-ти пользователей. Если на сервер и база данных используется для веб-сайта, а это максимум 2 подключения - одно для узла сайта и одно для админа, то все 5 CALs хватит. А если то-то решит равернуть корпоративную систему на MS-продуктах, то выбора на чем развернуть у него, наверно, не будет - MS так MS. И стоить это будет дороже - на MS SQL 2005 Server Workgroup Edition (200 CALs) = $739 + 195*$146 = $29209 MS SQL 2005 Server Workgroup Edition (без ограничений) = $3,899 То, что за 3-4 года работы любого хорошего продукта он окупится спора нет, но на этапе внедрения выгода неочевидна. |
|
|
Keywords: zPOSTz zMAIN_THEMEz z10006z
Для Авторов: edit delete
Автор: Крис Касперски Дата: 02.12.2008 15:59:28©
|