Журнал LinuxFormat - перейти на главную

LXF119:История успеха

Материал из Linuxformat
Версия от 13:49, 27 мая 2010; Crazy Rebel (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Inquisitor тестирует, чтобы вы спали спокойно

Покупаете новый компьютер или даже отвечаете за парк машин в организации? Inquisitor поможет вам сэкономить нервные клетки, заранее проинспектировав ваше «чудо техники», а Михаил Якшин подскажет, как это сделать, а заодно объяснит, зачем и почему этим выгодно заниматься.


Прежде всего, хотелось бы внести ясность в то, что такое Inquisitor (http://www.inquisitor.ru). Inquisitor — не просто еще один тест оборудования: Inquisitor — это некая «пусковая установка» для набора уже существующих тестов.

К Inquisitor имеет смысл присмотреться, если необходимо автоматизировать проверку множества компьютеров. Например, сейчас Inquisitor постепенно внедряется в CERN (это там, где строится Большой адронный коллайдер) в качестве систем приемки нового оборудования, мониторинга и проверки старого оборудования, коего в такой организации, как CERN, великое множество.

Хотя Inquisitor изначально разрабатывался для автоматизирования тестирования компьютеров в промышленных масштабах, для продвинутого домашнего пользователя существует LiveCD, который может скачать любой желающий.

Мне приходилось видеть достаточно много компьютерных производств, дата- центров и просто больших организаций, имеющих парк в несколько тысяч компьютеров. В большинстве случаев там наблюдается довольно разная (в зависимости от количества денег), но одинаково грустная ситуация:

  • Либо вообще нет никакой систематизации, и компьютеры тестируются чем взбредет в голову тестировщику в этот день. Результаты, естественно, нигде не протоколируются (то есть тесты типа 3DMark запускаются полностью вручную: «прошло – и ладненько»).
  • Либоиспользуются самописные «наколенные» решения, которые пытаются вызывать проприетарные тесты с помощью всяких ухищрений, что в случае закрытых программ весьма нетривиально.
  • Либо используются ужасно дорогие системы, обычно обклеенные стикерами вида «Industrial grade» или «Enterprise». Как правило, за ними скрывается то, что поставщик такого сверхдорогого решения заплатил и в индивидуальном порядке договорился с десятком производителей тестов типа 3DMark и лицензировал их продукцию.

Я лично категорически против тестирования, в котором участвуют какие- то закрытые тесты, драйверы или оборудование. Жизнь показала уже массу примеров того, куда заводит эта тропинка. Напомню, например, что уже упомянутый к слову 3DMark в свое время «попал под раздачу», когда выяснилось, что производители видеокарт «оптимизировали» в своих драйверах выполнение тестов 3DMark, искусственно занижая качество рендеринга для приложения типа 3dmark2003.exe.

Еще один пример: посмотрите на красивую на бумаге инициативу SPEC (Standard Performance Evaluation Corporation) и на то, как она дискредитировала себя сейчас. По замыслу SPEC должен был быть единым универсальным сравнительным тестом [benchmark]. Заинтересованному пользователю по идее достаточно было оценить, сколько у него денег, посмотреть в список и увидеть, какую производительность можно за них купить. Но разве кто-то всерьез рассматривает эти тесты, когда приобретает сейчас компьютер? Гонка за результатами в SPEC давно уже превратилась в состязание по «оптимизации» BIOS’ов, прошивок, прописыванию всевозможных настроек и обманок, которые помогли бы получить больше очков. Для конечного пользователя разница в полтора раза в очках SPEC не значит ровным счетом ничего, так как на его конкретных приложениях эта аппаратура может показать совсем другую производительность.

Открытый тест честнее

При разработке под Linux и с привлечением свободного программного обеспечения эти проблемы во многом сглаживаются. Если «тормозит » какой- то конкретный тест, то при некотором наличии желания и определенной квалификации можно влезть с отладчиком и разобраться, почему. Какой- то практический результат отличается от теоретического? Наверняка есть рациональное объяснение – код доступен, то есть все в ваших руках. А самое главное в свободном сообществе – это естественность и отсутствие специально организуемых препятствий. Хочешь использовать тест – бери и используй. Да и по самой идеологии системы, как правило, практически все приложения в Linux имеют хотя бы простой интерфейс командной строки, что значительно облегчает автоматизацию

На мой взгляд, Inquisitor – это один из тех случаев, когда открытая модель разработки может удачно сочетаться с бизнес-интересами и серьезными коммерческими внедрениями. К сожалению, часто можно видеть, как открытая разработка коммерциализируется в ключе «несколько человек делают проект N лет Just for Fun, а потом приходит корпорация X и продает плоды их трудов, наживаясь на бесплатной кодовой базе». В нашем случае, такой вариант развития событий маловероятен за счет того, что:

  • Основная платформа доступна под GPLv3+ и будет оставаться свободной, что бы ни случилось.
  • Основной труд по развертыванию решения на базе Inquisitor «сидит» именно в организационно-внедренческой части. Если кто-то возьмет и установит Inquisitor у себя – отлично, так как мы ничего не теряем, а скорее всего, приобретаем. Такой человек с большой долей вероятности присоединится к сообществу/проекту и поделится основной массой своих наработок.

В частности, по этой причине основной упор пока еще делается именно на предприятия, то есть те места, на которые ориентирован Inquisitor Enterprise. При использовании этого продукта разворачивается сервер, который в дальнейшем обслуживает некую специализированную сеть по DHCP. Компьютеры могут загрузиться с нее, как- то идентифицироваться, распознать оборудование, отправить результаты на сервер и выполнить набор назначенных им заданий (тестов). На сервере есть web-интерфейс по типу такого: http://demo.inquisitor.ru.

Безусловно, мы не хотим обижать домашнего пользователя, противопоставляя его корпоративному – просто в этом направлении мы делаем только первые шаги и будем благодарны за любые идеи и помощь. Сейчас можно скачать третью версию нашего LiveCD http://www.inquisitor.ru/download.html. Там гарантированно есть ошибки. Интерфейс пользователя и документацию, очевидно, есть куда развивать, но это только первый шаг к «светлому будущему», когда пользователь сможет без страха пойти в компьютерный магазин с нашим CD в руках, дабы сразу на месте протестировать будущую покупку.

Два пути

Inquisitor – это не законченный продукт и не «коробочное» решение. Inquisitor – это платформа или конструктор, из которой можно сделать все, что угодно, приложив некоторое количество усилий. Если к нам приходит человек (лучше через списки рассылки http://sourceforge.net/mail/?group_id=100064) с неким «хочу», то ему на выбор предлагаются два варианта, которые устраивают нас как команду:

  • Человек вливается в проект, внедряет его у себя. По ходу процесса у него практически наверняка возникнут тысячи различных сложностей. И здесь мы как некое сообщество всячески помогаем и способствуем решению этих проблем. В итоге сам проект и все сообщество получает новые наработки, новые тесты, новые решения, а также новые интересные и неожиданные сферы и возможности применения платформы. И человеку хорошо, так как он сэкономил на внедрении и не писал все с нуля, и нам хорошо, так как проект развивается и живет.
  • Человек не хочет вливаться в проект. Обычно это происходит потому, что он или его компания не обладают необходимыми знаниями, навыками, ресурсами, или он просто не хочет заниматься внедрением такой системы и нести за нее ответственность. Зато у него есть средства, чтобы нанять одного или нескольких членов нашей команды для создания именно того решения, которое будет наиболее адекватно.

Яркий пример первого подхода – это Андрас [Andras Horvath], швейцарец, пришествие которого в команду сделало нас понастоящему интернациональными. Андрас возглавляет подразделение системного администрирования в CERN – огромном научном центре, в парке которого несколько тысяч серверов и десятки тысяч рабочих станций. Большой адронный коллайдер – это в первую очередь огромный генератор данных объемом многие терабайты в день. Все эти нечеловеческие потоки нужно хранить и обрабатывать, и для этого нужно действительно стабильное оборудование.

По словам самого Андраса, до недавнего времени администрирование и поддержка всего этого комплекса была сумасшедшей по сложности задачей, так как далеко не все компьютеры, даже известных марок, приходили в исправном состоянии. Более того, ввиду распределенной структуры CERN, на разных факультетах/филиалах оборудование закупалось по принципу «что нашли» (издержки тендеров: выигрывает тот, кто предложил самое дешевое решение), без выстраивания какой- то общей линии по поставщикам или комплектующим. В итоге, когда он пришел в CERN, там был (и по сей день остается) страшный зоопарк.

Первым нововведением, которое неожиданно сильно облегчило жизнь системных администраторов CERN, стал Einarc. Это такой подпроект – в общем-то, совершенно отдельный пакет, разработанный в рамках Inquisitor. Einarc позволяет управлять многими видами аппаратных RAID из одного унифицированного интерфейса (как программного, так и пользовательского). Не важно, какой применяется RAID- контроллер (Areca, Adaptec, LSI или еще что-то): создание нового логического диска всегда делается простой и понятной командой logical add, а просмотр их состояний – командой logical list.

Второй подход тоже имеет место быть. У многих из нас за плечами солидный опыт подобных внедрений, и хотя это недешевое удовольствие, пока все без исключения организации, внедрившие у себя Inquisitor, отмечают, что эти вложения окупаются даже в краткосрочной перспективе. Не говоря уже о том, что затраты на сервис могут уменьшаться на порядок-два. Так что если вы что-то тестируете – то мы идем к вам. LXF

Персональные инструменты
купить
подписаться
Яндекс.Метрика