Рубрика:
БИТ. Бизнес & Информационные технологии /
Выбор платформы
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
КОНСТАНТИН КОНДАКОВ, директор по ИТ в фирме Banks.com в Сан‑Франциско. Занимается автоматизацией и гетерогенными сетями. Женат, двое детей. Хобби – альтернативное кино и видеосъемка
GNU/Linux и Microsoft Windows Инфраструктура глазами ИТ-директора
В чем причина перехода от Microsoft Windows на средства GNU/Linux и от GNU/Linux к Microsoft Windows. Каковы варианты интеграции?
История вопроса
Где-то до 2000 года подобный вопрос не стоял перед системными администраторами. Были, разумеется, и раньше случаи успешного использования GNU/Linux в масштабах предприятия или организации, но массовое внедрение GNU/Linux началось в 2002-2003 годах. Мне пришлось плотно столкнуться с процессом внедрения и перевода корпоративной структуры на GNU/Linux в конце 2001-го, когда известные события 11 сентября усугубили кризис разорения «доткомов», и перед нами в условиях падения доходов фирмы встала нешуточая задача – сохранить ее работоспособность.
После того как мы поняли, что фирма, где я тогда работал, финансово никак не потянет поддержку MS Windows, а от количества ошибок и внеплановых аварийных установок MS Exchange 4.0 (была и такая версия) просто голова шла кругом, было принято решение перевести информационную структуру фирмы на новую платформу – GNU/Linux.
Первой «жертвой» стала корпоративная БД – философия MS SQL Server, которая идеально подходила бы для библиотеки, юридической структуры, исследовательской организации, – Decision Support System (система поддержки принятия решений) – частая выборка из нечасто меняющегося массива данных. Но у нас обратная ситуация: постоянное обновление сравнительно небольшого массива данных (OLTP – online transaction processing system) и, как следствие, постоянные блокировки таблиц, которые делали систему совершенно неработоспособной. В качестве решения подошла система Informix DB Online server, работающая под Microsoft.
Вторым этапом миграции стал тот самый пресловутый почтовый сервер. Вся замена MS Exchange на CommuniGate Pro для GNU/Linux прошла за один день. Возникает резонный вопрос: зачем в условиях нехватки денег приобретать коммерческий продукт, когда есть известные решения на базе GNU/Linux? Во-первых, не надо забывать, что по состоянию на 2001 год GNU/Linux находился в сравнительно начальной стадии широкомасштабного корпоративного использования. Да, сегодня есть немало детально описанных вариантов миграции существующей MS Exchange/Outlook-структуры, хотя надо отметить, что ставить новый почтовый сервер под GNU/Linux все же на несколько порядков проще, чем переносить существующие 100 почтовых ящиков из MS Exchange, но тогда мы не смогли найти приемлемое бесплатное решение. А во-вторых, фирма достаточно серьезно зависела от полностью работоспособной электронной почты, поэтому руководство настояло на коммерческом продукте – сначала купите «нормальный и проверенный сервер», а потом где-нибудь экспериментируйте с открытыми IMAP-серверами для GNU/Linux. Наконец, когда самые сложные этапы были позади, мы перекопировали все файлы из файловой системы MS Windows в GNU/Linux-сервер, предварительно сохранив всю матрицу безопасности и разделения доступа и воспроизведя их максимально приближенным способом средствами Samba и GNU/Linux access control list.
Последний шаг – миграция рабочих станций. В условиях очень высокой текучки кадров среди пользователей и постоянно проникающей «заразы» из Интернета наши сисадмины тратили непростительно много времени на то, чтобы заново установить MS Windows или что-то там подправить. Какое-то время мы думали решить проблему «анархии на рабочем месте» путем установки Mandatory User Profiles, т.к. технология «принудительных профайлов» и тотального ограничения действий пользователя была известна с 1995 года. Но затем, составив список необходимых приложений для работы пользователя, мы пришли к нестандартному выводу – все, что обычному пользователю надо для работы, умещается в простой рабочей станции GNU/Linux, установка которой проходит достаточно быстро. Стартовые скрипты быстро конфигурируют рабочую станцию и настраивают необходимое окружение – имя станции, IP-адрес и т.п. Вся технология описана в Kickstart GNU/Linux или Jumpstart – Sun Solaris.
Отдельно надо сказать и о высоконагруженных системах. Можно ли найти адекватную замену среди MS Windows для систем, которые работают под IBM AIX, Netezza, QNX?
Тут разговор о MS Windows не совсем уместен – почту Hotmail, которую купила Microsoft, обслуживают не MS Windows-серверы. Об этом стало известно быстро и давно, поэтому специалисты по высоконагруженным проектам стараются как можно дальше держаться от MS Windows. Посмотрите тезисы предыдущих конференций HighLoad++ [2] – там упоминается практически лишь MS Windows SQL 2008, который специально разрабатывался Microsoft как ответ на средства Oracle, PostgreSQL, традиционно работающие c высоконагруженными проектами.
За что не любят Microsoft Windows?
Самая толковая критика использования MS Windows заключалась в том, что подобные системы устанавливаются полуграмотными спецами, чей опыт общения с информационными технологиями ограничивается нажатием кнопки Next в процессе установки. Эти «специалисты» имеют очень поверхностное представление о том, как работают их системы «изнутри», а часто даже не имеют и такого представления. Отсюда и идут все цитируемые автором журнала Львом Мышкиным «накатил винду», «вогнал офис» и прочие неологизмы. В этом утверждении очень много правды, но не стоит списывать со счетов всю инфраструктуру MS Windows только потому, что она установлена полуграмотными ИТ-самоучками.
Не будем забывать, что MS Windows – это коммерчески поддерживаемые продукты, за которыми стоит не самая последняя фирма Microsoft. Например, понимая все ограничения подобных систем MS Windows, я тем не менее видел их прекрасно работающими во многих местах. Что же объединяет удачные установки MS Windows?
При всем разнообразии мест, где мне приходилось наблюдать отлаженную работу MS Windows, я обнаружил много общих черт – это фирмы и организации, в которых требуется гарантированная ИТ-поддержка от «А» до «Я». Чтобы можно было кому-то позвонить с проблемой, чтобы кто-то правильно и своевременно обновлял исправленные версии продуктов, информировал о наличии новых версий и чтобы продукт был гарантированно совместим – словом, нужна структура, которая бы предлагала комплексное решение. Конечно, не всегда удается достигнуть полной гармонии, но какая-то часть из этого набора присутствует неизменно.
В подобных местах предсказуемость работы и независимость от «ИТ-гениев» ставится выше скорости обработки данных или количества транзакций в секунду. Что имеется в виду? Допустим, есть офисная БД, которая худо-бедно, но работает. По моему опыту, новый администратор БД, у кого за плечами нормальный опыт GNU/Linux, знающий высоконагруженные системы, которые работают на GNU/Linux, будет удивлен, когда ему скажут «не трогать». Почему? Часто проще найти пусть не оптимальную, но надежно работающую систему, для обслуживания легче найти специалиста. Надо признать, что «самоучек» в сфере MS Windows все же больше, чем грамотных специалистов по GNU/Linux, а часто важно, чтобы работало прямо сейчас.
Примеры: не очень большие банки и финансовые учреждения, не очень крупные юридические структуры, библиотеки, музеи и другие учреждения культуры. Вектор понятен? Я познакомился с ИТ-структурой одного солидного банка и обнаружил многие тонкости MS Windows, часто не замечаемые в обыденной жизни. Перечислю их.
- Полностью лицензированная MS Windows-структура со всеми самыми последними обновлениями и оплаченной «золотой» поддержкой. То есть все счета из Microsoft оплачиваются немедленно и безоговорочно, а все необходимые обновления устанавливаются без промедления. Более того, один из местных сисадминов по секрету мне сказал, что на самом деле поддержка даже не «золотая», а «платиновая». На мой вопрос, что значит «платиновая», было сказано, что у сисадминов есть прямые телефоны разработчиков, и в случае чего консультация дается непосредственно специалистом из Microsoft, ответственным за тот или иной модуль. Во как!!!
- Сисадмины полностью лицензированы Microsoft, прошли все мыслимые и немыслимые школы и сертификации от Microsoft. Если какой-то сертификат или обучение устаревает, администратор проходит новый курс.
- Устанавливаются все продукты, которые Microsoft считает нужным уставить.
- Установлен график работы сисадминов в три смены, чтобы вся работа поздно ночью делалась не уставшими от дневных авралов итэшниками, а «свежей сменой», которая приступает к работе в 22.00.
Сколько все это стоит, ИТ-отдел не особо волнует – информационная инфраструктура банка рассматривается как необходимая операционная статья расходов. При такой организации работы у банка практически не бывает никаких сбоев, а тем более ЧП, связанных с MS Windows.
Переход от Microsoft Windows к GNU/Linux
В чем причина основного перехода?
- В условиях экономического кризиса и при любых неблагоприятных финансовых условиях выясняется, что у фирмы просто нет возможности адекватно поддерживать MS Windows. Техническая поддержка, лицензирование, CAL-лицензии, постоянное обновление – и на все нужно обучение и сертификация.
- В условиях, когда фирме требуется бесперебойная работа 24 часа в сутки, семь дней в неделю, но нет возможности нанять сисадминов, работающих в три смены. Системы под управлением MS Windows обычно более капризны, выдают непонятные, плохо диагностируемые ошибки, «утечки памяти», «зависают», особенно в условиях высоконагруженных систем. Часто у организации просто нет времени, чтобы детально разбираться, почему тот или иной сервер, работающий под управлением MS Windows, требует к себе повышенного внимания. Наверняка в средствах MSDN и при адекватном обращении к службе поддержки MS Windows можно найти ответ, но часто на это просто элементарно нет времени. Кстати, именно поэтому, в 2001 году мы вынуждены были заменить почтовый сервер MS Exchange на почтовую систему CommuniGate Pro, работающую под GNU/Linux. Совсем плохо, если на фирме установлены взломанные или нелегальные версии продуктов Microsoft, что исключает какие-либо механизмы официальной поддержки.
- Не все сисадмины знают, как правильно настроить MS Windows для работы в высоконагруженных системах. Часто приходится наблюдать, как в систему «начального уровня» – простенький MS Windows сервер, мало памяти, слабое сетевое оборудование, по скидке купленные б/у рабочие станции – пытаются засунуть информационную сеть организации, которой нужны совсем другие инструментальные и аппаратные средства. Вся комичность ситуации усугубляется админом-самоучкой, который, имея опыт домашней установки пиратских версий, считает себя «крутым компьютерщиком».
Говорить, что системы MS Windows не подходят для высоконагруженных систем, нельзя, просто их установка и настройка требуют, как правило, адекватных аппаратных средств, 64-битных Enterprise-версий программных продуктов MS Windows и, главное, специалистов, знающих, как это надо правильно делать.
Переход от GNU/Linux к Microsoft Windows
Такая ситуация встречается значительно реже. Каковы причины перехода?
- Местный «крутой специалист»по GNU/Linux установил систему, но «забыл» все задокументировать, объяснить своим коллегам и руководству, как и зачем все работает, а потом уволился. Если была установлена продвинутая система типа Gentoo Linux или какой-нибудь аналогичный интересный, но не так широко распространенный дистрибутив, то первая ошибка в команде emegre -uv world может не на шутку испугать руководство. Если в этом случае в поле зрения окажется неглупый или наглый системный администратор по MS Windows, он может сказать: «Я не знаю, что тут у вас наваяли, если вам нужна прямо сейчас работающая система, которая уже установлена во многих фирмах и будет работать, сносите весь этот GNU/Linux, давайте ставить MS Windows». А почему бы и нет? Грамотного специалиста по Gentoo Linux найти не очень просто, на фирме аврал, ничего не запускается – конечно, тут логичен переход на «проверенное решение».
- У фирмы появляется крупный заказчик или (и) профилирующее направление, которое крепко привязано к MS Windows. Как бы ни сопротивлялись сисадмины, какие бы доводы в поддержку GNU/Linux ни приводили, если не будет найдено соломоново решение по совместной работе MS Windows и GNU/Linux, то GNU/Linux придется убрать. У меня были и такие примеры.
Совместная работа GNU/Linux и Microsoft Windows
Несколько слов надо сказать и о вариантах интеграции MS Windows и GNU/Linux.
До установки GNU/Linux всю существующую инфраструктуру можно представить вот так (см. рис. 1).
Рисунок 1. Интеграция GNU/Linux и Microsoft Windows. Этап 1
В большинстве случаев MS Windows владеет средствами Active Directory (Users) и, возможно, DNS/DHCP. Файловые хранилища («файлопомойки»), почта, базы данных, веб-серверы уже переведены на управление GNU/Linux (см. рис. 2).
Рисунок 2. Интеграция GNU/Linux и Microsoft Windows. Этап 2
И, наконец, самый законченный вариант (см. рис. 3), когда все ключевые сервисы сети переведены под GNU/Linux, а на долю MS Windows остаются «унаследованные» системы, которые по тем или иным причинам приходится оставить.
Рисунок 3. Интеграция GNU/Linux и Microsoft Windows. Этап 3
В Интернете можно найти массу способов синхронизации аутентификации пользователей серверов GNU/Linux через средства MS Windows Active Directory [1]. Сегодня эта тема изучена и проработана достаточно хорошо. Повторюсь, что тут есть два проверенных способа интеграции – через средства LDAP (путем изменения механизма аутентификации MS Windows) и пакет Winbind.
Считается, что Kerberos + LDAP (первый способ) – более «чистый» и элегантный, но многие системные администраторы не хотят его применять, так как в случае ошибки установки есть вероятность получить полностью нефункциональную Active Directory, что скорее всего исправимо только переустановкой контроллера домена со всеми вытекающими последствиями. Поэтому в повседневной практике часто устанавливают Winbind и настраивают Kerberos, PAM-аутентификацию на работу с имеющимся в наличии контроллером домена, не производя там никаких «хирургических операций».
Надо заметить, что программные модули аутентификации, использующие Kerberos, довольно чувствительны к системному времени. Как правило, при разнице в несколько минут на серверах аутентификация не работает.
Если же нужно объединить много разнородных рабочих станций (GNU/Linux, Mac) под MS Windows, то есть смысл не настраивать все вручную, а использовать уже имеющиеся коммерческие решения для аутентификации, например, Likewise, хотя их линейка цен начинается от 1000$, что не всегда приемлемо. Существуют и свободная версия [3], и к ней «10-минутное пособие по установке» [4] – и там, кстати, есть достаточно подробное описание, как и что работает и как взаимосвязаны внутренние компоненты системы.
- Аутентификация GNU/Linux средствами MS Windows – http://en.gentoo-wiki.com/wiki/Active_Directory_Authentication_using_LDAP; http://en.gentoo-wiki.com/wiki/Active_Directory_with_Samba_and_Winbind.
- HighLoad++ – http://www.highload.ru/papers2009.
- http://www.likewise.com/community/index.php/download.
- http://www.likewise.com/resources/documentation_library/manuals/open/likewise-open-guide.html#quick-start.
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|