Возможно, программное моделирование будущего информационных технологий избавит директоров информационных служб от досадных ограничений, связанных с недоступностью необходимого оборудования...
Возможно, программное моделирование будущего информационных технологий избавит директоров информационных служб от досадных ограничений, связанных с недоступностью необходимого оборудования
В течение последних десятилетий руководители информационных служб находились в самом центре одной из наиболее значительных технологических революций в истории, когда на смену физическому атому, выступавшему в роли главного «кирпичика» коммерции и культуры, пришел информационный бит. Не будем слишком строги к коллегам, полагающим, что следующему поколению всего-то и останется, что где-то подровнять да кое-что подправить. И в самом деле, что может сравниться с таким эпохальным переворотом?
Но, может статься, на горизонте уже маячат перемены, едва ли не столь же значительные: на смену биту приходит виртуальный бит. Виртуализация — это замена физических элементов вычислительной среды (будь то аппаратура или программное обеспечение) искусственными «клонами», которые, являясь точными копиями оригиналов, избавляют нас от необходимости — порой доставляющей массу неудобств — иметь дело с этими самыми оригиналами. Вам требуется жесткий диск емкостью в 1 Тбайт, но вы располагаете только десятью дисками по 100 Гбайт каждый? Нет проблем; программные средства виртуализации могут создать интерфейс, благодаря которому все десять дисков будут с точки зрения любого обращающегося к ним приложения выглядеть и вести себя как одно устройство. Вам понадобилась информация из прикладной программы, которую вы в последний раз запускали в 1993 году на старой системе MicroVAX 2000, десять лет назад отправленной на свалку? Виртуальный имитатор Digital VMS поможет вам выйти из этого непростого положения.
В свете сказанного может показаться, что виртуализация представляет собой что-то вроде хакерской уловки, полумеры, позволяющей лишь на время избавиться от проблемы. И между прочим, именно такой репутацией виртуализация пользовалась на протяжении почти всей истории вычислительной техники. Она зародилась на первых стадиях этой истории. Тогда с помощью виртуализации люди, что называется, «водили за нос» рассчитанные на работу с одним пользователем и с одним приложением мэйнфреймы, чтобы заставить их взаимодействовать с несколькими пользователями и с несколькими приложениями.
Все стороны процесса обработки данных
Но процесс обработки данных усложняется во всех своих аспектах, и применение технологий виртуализации придает методам управления вычислительными ресурсами дополнительную гибкость и «интеллектуальность». В результате сама идея виртуализации год от года становится все более привлекательной, и сегодня есть основания полагать, что она, возможно, откроет новую главу в истории информационных технологий.
Воскрешение из мертвых
Участники проекта Computer History Simulation Project (см. врезку «Эликсир бессмертия для старых систем»), реализуемого фирмой SiCortex под руководством Боба Сапника, используют методы виртуализации для «зомбирования» программ, представляющих интерес с точки зрения истории отрасли. Экспериментаторы внушают этим программам, будто они выполняются на компьютерных системах, выведенных из эксплуатации десятилетия назад. Проект Сапника имеет и практическое значение. В некоторых организациях старые системы настолько «вросли» в производственный цикл, что от них невозможно отказаться. И если реальные аппаратные компоненты для старых машин уже не изготовляются, то единственный способ сохранить эти машины в строю состоит в том, чтобы виртуализировать данные компоненты.
Приведем еще один, более современный пример, иллюстрирующий важность виртуализации. В городе Бойс, (шт. Айдахо), базируется занимающаяся производством продуктов питания и агропромышленным бизнесом фирма J.R. Simplot. Года три назад сотрудникам этой фирмы с годовым оборотом 3 млрд. долл. пришлось ускоренными темпами осуществлять развертывание целого ряда серверов. Возник вопрос: каким образом обеспечить необходимое ускорение? Представители информационной службы компании пришли к выводу о необходимости рационализации старой системы закупок серверов.
Известно, что серверы — это физические компоненты; они поставляются с собственными средствами обработки и хранения данных, а также со своими операционными системами. Так вот, сотрудники Simplot, воспользовавшись средствами виртуализации компании Vmware (которая специализируется на производстве компонентов виртуальных инфраструктур), создали чисто программные серверы, которые взаимодействуют с сетью точно так же, как и аппаратные серверы, но на самом деле являются не более чем приложениями. При возникновении потребности еще в одном сервере сотрудник информационной службы Simplot просто переводит в другое положение переключатель, соответствующий требуемому типу сервера (Web-сервер, сервер приложений, баз данных, почтовый, FTP-сервер, сервер электронной торговли и т. д.). После чего автоматизированный шаблон генерирует виртуальную машину на хост-системе VMware ESX.
Реальные улучшения
По словам Тони Адамса, аналитика в области технологий из фирмы Simplot, это решение было удачным буквально во всех отношениях. Время на подготовку нового сервера к работе сократилось с нескольких недель до нескольких часов и даже менее того. Выросло время безотказной работы: ведь серверы представляют собой программы, которые могут выполняться в любом месте на любом оборудовании стандарта x86. Если машина выходит из строя или требует обслуживания, виртуальный сервер можно быстро перенести на другую машину.
Но, пожалуй, самый большой выигрыш состоял в повышении коэффициента полезного действия. Известно, что серверы создаются для выполнения конкретных задач. Иногда потребность в выполнении той или иной задачи соответствует наличествующим ресурсам, но обычно такого соответствия не бывает. Когда речь идет о «реальных» серверах, в случае несоответствия администратор ничего не может поделать: как говорится, что есть, то есть, а чего нет — того нет. И если окажется, что средний коэффициент загрузки сервера составляет 10%, повысить его никак нельзя. (Проблема обостряется, когда возникает необходимость удовлетворения пиковых потребностей, а с другой стороны, коэффициент загруженности сервера часто бывает намного ниже 10%.) Но низкий коэффициент загруженности влечет за собой ряд последствий: сотрудникам информационной службы приходится выполнять лишнюю работу по обслуживанию оборудования, службе безопасности приходится решать дополнительные проблемы по организации доступа (им нужно обеспечивать защиту большего числа машин), а коммунальщикам приходится брать на себя заботы по отоплению и обеспечению энергией дополнительных помещений).
Виртуализация снимает эти проблемы. Администраторы могут создавать любое количество серверов любого типа по своему усмотрению, и это дает им возможность постоянно и с большой точностью согласовывать имеющиеся мощности и текущие нагрузки. Вернемся к примеру с фирмой Simplot. После перевода серверов в «виртуальное состояние» Адамс смог развернуть почти 200 виртуальных серверов всего лишь на дюжине физических машин. При этом, как заявляет он, типичный коэффициент использования процессора, сетевых каналов связи, дисковой подсистемы и подсистемы памяти на машинах VMware ESX превосходит 50% — и это по сравнению с примерно 5% на выделенных аппаратных серверах.
Кроме того, виртуализация облегчает планирование восстановления данных после катастрофического сбоя: администратор получает возможность создавать серверные кластеры, соответствующие той инфраструктуре, которая имеется в данный момент. Как поясняет Адамс, если следовать традиционным схемам восстановления после аварийного сбоя, приходится содержать точные копии аппаратных средств, которые просто стоят и ничего не делают. «Но что особенно нравится мне лично, — продолжает он, — так это возможность дистанционного управления. Я могу создавать новые серверы или выполнять ремонтные работы в любой точке Сети; мне даже нет нужды заглядывать в центр обработки данных».
Адамсу нужно, чтобы одна машина виделась со стороны как несколько машин. Но виртуализация дает возможность решать задачу «с обратным знаком»: представлять множество машин как одну. Виртуализация лежит в основе хорошо известного эффекта RAID, когда из соображений простоты доступа множество дисков представляется как один диск, а из соображений удобства резервного копирования один диск представляется как множество дисков. Еще одна важная область применения средств виртуализации — это область разработки. Мир аппаратных компонентов постоянно усложняется: производственные циклы становятся все быстрее, растет число типов устройств, а благодаря практике выполнения программ по сетевым каналам любая программа имеет шанс вступить в контакт с целой вселенной различных типов оборудования. Разработчикам не хватит никаких денег, чтобы приобрести все эти устройства для тестирования. К счастью, и нужды в этом нет: выполняя свои программы на виртуализированных моделях аппаратных устройств, они могут гарантировать качество без излишних расходов. Кроме того, виртуализируя базовые аппаратные средства, разработчики приобретают гораздо более мощные средства контроля. Питер Магнуссон, главный технолог компании Vitrutech, которая специализируется на моделировании систем, поясняет, что разработчик может останавливать виртуальное оборудование где угодно и в какое угодно время — и после этого исследовать внутренние детали.
«Нереальное» будущее
Вполне вероятно, что на протяжении предстоящего года-двух средства виртуализации, успешно применяемые сегодня в системах хранения памяти, в серверах и в арсенале разработчиков, перекочуют в сети и в центры обработки данных. И тогда директора информационных служб смогут создавать программные версии брандмауэров, коммутаторов, маршрутизаторов, средств балансировки нагрузок, ускорителей и кэш-памяти в точном соответствии со своими потребностями. Все, что некогда было воплощено в платах, дисках и в физическом оборудовании разных типов, будет организовано вокруг одного пункта управления. Если обещания поставщиков средств виртуализации станут реальностью, то изменения, которые в прошлом выходили за грань возможного или, по крайней мере, требовали огромных трудозатрат и были чреваты серьезным риском, станут самым обычным делом и будут осуществляться за считанные минуты.
Но в чем состоит смысл упомянутых изменений? Этот вопрос широко обсуждается сегодня. К примеру, с появлением всех этих регуляторов и кнопок, столь характерных для средств виртуализации, будут возникать и новые политические вопросы, ибо появится возможность предоставлять клиентам услуги различного класса, чего не было раньше. К примеру, можно будет создать Web-сервер, предоставляющий пользователям, уплатившим сверх определенной суммы, услуги гораздо более высокого качества, нежели услуги для тех, кто заплатил в два раза меньше. Возникнут огромные возможности для автоматизации. Не исключено, что инфраструктуры будут реконфигурироваться в соответствии с изменяющимися потребностями и что новые серверы, а также маршрутизаторы будут появляться по мере необходимости — по тому же принципу, по какому сегодня осуществляется балансировка нагрузки. (Разумеется, представители IBM и других компаний пропагандируют именно такую версию будущего отрасли обработки данных.)
До сих пор мы приводили примеры использования методов виртуализации лишь из области замены аппаратных компонентов. Это связано с изначально присущей упомянутым компонентам жесткостью; на их фоне эластичность средств виртуализации проявляется ярче, чем на фоне ПО. Однако надо сказать, что виртуализация может функционировать в любом сегменте вычислительной среды. Виртуализировать можно и аппаратные компоненты, и операционную систему; в последнем случае программы, написанные для одной ОС, будут выполняться под управлением другой, а программы, написанные для виртуальной ОС, смогут выполняться в любой среде (то есть будут аппаратно независимыми, так же как программные средства Java, выполняемые в виртуальной машине Java).
Вполне возможно, что развитие виртуализации предвещает серьезные изменения в том круге задач, решением которых занимаются директора информационных служб. Вероятно, что в не столь отдаленном будущем вам вообще не придется думать об аппаратных компонентах: ресурсы для физической обработки данных и для их хранения будут приобретаться оптом у информационных коммунальных предприятий или у серверных пулов.
Все проблемы, связанные с приложениями, лягут на плечи департаментов и офисов, которым они нужны. А главной заботой директора информационной службы станет обслуживание и пестование среды исполнения. Не исключено, что исчезнет сам термин CIO (Chief Information Officer); на смену ему, разумеется, придет аббревиатура CVO (Chief Virtualization Officer).
Возможно, это будет так
В этом мире будущего виртуализация может превратиться в полнофункциональную технологию моделирования целых систем, элементами которых станут не только вычислительные машины (как сейчас), но и все двигатели, переключатели, клапаны, двери, процессоры, транспортные средства и датчики компании. Эта модель будет функционировать параллельно с физической компанией и, разумеется, в реальном масштабе времени. Там, где сегодня средства виртуализации используются для модификации управления, планирования мер по восстановлению после аварийного сбоя или по обслуживанию сетей и их элементов, в дальнейшем они будут делать ту же работу в масштабах объектов компании.
В комплект поставки каждого предмета или продукта будет входить модель этого объекта, которую можно будет «вписать» в одну из этих сред исполнения. На CVO (директора службы виртуализации) будет возложена ответственность за то, чтобы создаваемый каждой компанией «автопортрет» был точным, полным и включал в себя все важнейшие элементы. А уж эту задачу виртуальной никак не назовешь.
Эликсир бессмертия для старых систем
Вычислительная техника отличается от большинства других технологий тем, что в ее арсенале имеется две системы сохранения: восстановление (этот метод доступен и для всех прочих технологий) и моделирование. К сожалению, восстановление — процедура отнюдь не простая. Существует весьма ограниченное число компьютерных компонентов, которые энтузиасты могли бы изготовить в домашних условиях. Но, к счастью, имеется альтернативный метод — моделирование. Тот, кто располагает необходимыми программными средствами виртуализации, может вернуть к жизни старое оборудование в виде программ, выполняемых на ПК. Главное достоинство моделирования в том, что хранить старую документацию гораздо проще, чем старую аппаратуру, а ведь специалисты нередко хорошо помнят системы, с которыми они работали много лет назад.
В поисках старой документации и знаний, сохранившихся в памяти ветеранов, участники проекта Computer History Simulation Project работают над созданием ПК-совместимых имитаторов целого ряда важных аппаратных и программных компьютерных систем. Результаты их работы публикуются в Internet как бесплатно распространяемое ПО. В настоящее время всем желающим доступны имитаторы таких систем, как Data General Nova, Digital VAX, IBM System 3 и MITS Altair 8800.
Появление этих имитаторов вызвано следующими обстоятельствами: вычислительные системы быстро обесцениваются и незамедлительно списываются — вместе с приложениями и документацией. Через десять лет после появления на рынке той или иной модели компьютера от этого изделия не остается никаких следов, как если бы оно вообще никогда не выпускалось. В этой связи возникают как практические, так и культурные проблемы. Часто бывает, что в каком-то уголке мира все еще эксплуатируются отдельные экземпляры этих машин, и их владельцы оказываются в чрезвычайно затруднительном положении в связи с невозможностью получения технической поддержки. Бывает, что полезная или важная информация имеется лишь на таких носителях, которые могут считываться только с помощью этих старых машин. Наконец, такие машины являются свидетельствами важных глав нашей истории. И в самом деле, странно, что о технологиях XIX века мы порой знаем больше, чем о решениях сегодняшнего дня, хотя, конечно, это связано и с тем, что в те времена срок жизни машин был больше, и с тем, что они были лучше документированы.
Fred Hapgood. The Virtues of Virtualization. CIO Magazine. September 15, 2005