Прогресс в области серверного аппаратного обеспечения идет быстрыми темпами. 64-разрядные вычисления и многоядерные процессоры — вот лишь немногие из технологий, которые в будущем станут играть важную роль. В фокусе внимания находятся и высокопроизводительные приложения, а также стратегические концепции, например консолидация и виртуализация серверов.
Рынок дорогостоящих нестандартных систем RISC сокращается из года в год. Вместо них все чаще используются стандартные высокопроизводительные серверы. Огромный выбор продуктов предлагают многочисленные производители 64-разрядных процессоров, микросхем памяти, программного обеспечения, инструментов и приложений. Кроме того, распространенные системы на базе Linux или Windows заметно дешевле, чем решения RISC/UNIX. Такое развитие ситуации стало возможным благодаря способности стандартных систем осуществлять 64-разрядную адресацию и тем самым предоставлять заметно большую емкость хранения и производительность вычислений.
В первую очередь следует разобраться в значении термина «64-разрядные вычисления», ведь возможность обработки 64-разрядных данных существует давно. Напротив, переход с 8 до 16 разрядов при адресации памяти занял гораздо больше времени, чем на 32 разряда. Длина адресов памяти в процессоре или во всей системе определяет размер той части оперативной памяти, которую задание или процесс при его выполнении на центральном процессоре могут использовать для записи либо чтения. В случае 32-разрядного процессора это максимум 4 Гбайт, для 64-разрядного — в 232 (4 млрд) раз больше. 64-разрядная адресация памяти еще четыре года назад применялась только в мэйнфреймах и системах RISC. Соответствующие платформы и компоненты памяти с высокой производительностью были очень дороги и мало доступны. Постепенно все большее число приложений начинало пользоваться возможностью адресации памяти свыше 4 Гбайт. Между тем процессоры и системы с 64-разрядной адресацией — к примеру Itanium и Xeon с архитектурой EM64T от Intel — стали по ка-рману и рядовому потребителю.
Использование 64-разрядной адресации памяти зависит от конкретных требований прикладной области и имеющихся программных решений. Приложениями, выигрывающими от этого, являются базы данных с малым временем доступа и транзакций, системы ERP и управления товарными запасами, «добычи данных» и «складирования данных», логистические процессы или решения CRM.
Появление перспективных 64-раз-рядных вычислений обусловлено потребностью в быстрой обработке данных при одновременном снижении стоимости ИТ. Благодаря заметно лучшему соотношению цены и качества новых стандартных 64-разрядных процессоров по сравнению с системами RISC/UNIX эти преимущества доступны теперь средним и небольшим предприятиям. Нужны лишь 64-разрядное аппаратное обеспечение (процессоры, память, ввод/вывод), 64-разрядная операционная система и соответствующие приложения.
ВЕРТИКАЛЬНОЕ ИЛИ ГОРИЗОНТАЛЬНОЕ МАСШТАБИРОВАНИЕ
Параллельно с требованиями в деловой области растут претензии к электронной обработке данных и инфраструктуре ИТ. На практике это часто означает, что для введения новых приложений в существующую архитектуру необходимо включить дополнительные серверные системы, которые, однако, оказываются загруженными не полностью. Одновременно повышаются затраты на управление и сеть.
В случае расширения серверного ландшафта приходится выбирать между вертикальным (scale-up) или горизонтальным масштабированием (scale-out). Вертикальное масштабирование представляет собой деление нескольких центральных серверов на разделы. Функциональность серверной системы может быть расширена и при помощи второго подхода, когда отдельные, преимущественно небольшие, серверы объединяются в единую (распределенную) кластерную систему. На рынке представлено три типа подобных кластеров: кластеры для достижения чрезвычайно большой мощности (область высокопроизводительных вычислений), кластеры с максимально доступной пропускной способностью и кластеры очень высокой готовности с возможностью перераспределения/переключения нагрузки и функциями восстановления после катастроф.
К наиболее быстро растущим сегментам серверного рынка относится область модульных серверов. При этом огромная вычислительная мощность размещается на минимальном пространстве. Подобное серверное шасси состоит из нескольких серверных модулей, т. е. компьютеров на одной плате (Single-Board Computer, SBC) — независимых систем с микропроцессорами, оперативной памятью, сетевыми интерфейсами или коммутаторами для локальной сети.
Преимущество модульных серверов по сравнению с традиционными отдельными машинами заключается в компактности конструкции, высокой плотности производительности, огромной масштабируемости и гибкости, а также в умеренном количестве проводки, быстром и простом обслуживании. Кроме того, для серверного шасси нужен лишь один контроллер клавиатуры/графики/мыши. В современные стандартные 19-дюймовые стойки умещается до 100 серверных «лезвий», содержащих приблизительно 200 процессоров. Такая плотность требует эффективного охлаждения. Как и прежде, стандартом является охлаждение воздухом, однако на рынке имеются вычислительные шкафы с различными системами водяного охлаждения.
ВИРТУАЛИЗАЦИЯ СЕРВЕРОВ
Серверные решения часто базируются на так называемом многозвенном подходе. Это означает, что разные задачи разделены по разным областям. В сегменте систем старшего класса и баз данных часто применяются крупные системы симметричной многопроцессорной обработки (Symmetric Multi Processing, SMP) и согласованного с кэшем неунифицированного доступа к памяти (Cache-Coherent Non-Uniform Memory Access, ccNUMA). Они обладают общей оперативной памятью, очень мощной коллективной системой ввода/вывода и базируются на высокопроизводительных процессорных архитектурах, к примеру Itanium.
Для их эффективного масштабирования рекомендуется использовать современные технологии виртуализации. Под понятием «виртуализация» понимают разделение ресурсов физической серверной системы на несколько виртуальных машин, в результате которого для нескольких операционных систем — а значит, и приложений — создается видимость, что они — единственные пользователи системы. На самом же деле память, процессоры, сеть и периферийные устройства разделяются без ненужных конфликтов между отдельными пользователями и приложениями. Разделением ресурсов управляет так называемый «монитор виртуальной машины» (Virtual Machine Monitor, VMM). Подобные решения предлагают VMware, Microsoft и Project Xen (в области Linux). С их помощью на одном сервере в собственной системной среде несколько различных приложений могут работать даже при несовместимых требованиях взаимно.
В большинстве случаев современные решения виртуализации базируются на программной эмуляции VMM. Речь идет о хостовой операционной системе, посредством которой осуществляются управление и отображение виртуальных ресурсов на физические, а все разделы выполняются в качестве гостевых. Ее недостаток заключается в том, что при определенных условиях заметно ухудшаются эффективность, производительность и безопасность. Однако виртуализация может обеспечиваться и на физическом уровне, что, в частности, предусматривает технология виртуализации Vanderpool от Intel.
Благодаря виртуализации достигается значительное снижение стоимости управления серверами и об-служивания. Сотни серверов могут быть сконцентрированы в нескольких системах с десятикратной производительностью, а нагрузка на серверы увеличена с 10% и менее до 60% и более. Даже при росте требований надобности в физическом расширении серверов не возникает, а сложность сетей остается невысокой. Другое преимущество состоит в том, что виртуальные драйверы для аппаратного обеспечения доступны для очень широкого спектра компонентов и операционных систем. Так, если предприятие использует «старое приложение», работающее, к примеру, еще под Windows NT 4, то в большинстве случаев гораздо проще и эффективнее выделить приложению собственный виртуальный раздел на сервере, чем искать драйверы устройств для нового аппаратного обеспечения и старой операционной системы.
Благодаря высокой производительности, масштабируемости и гибкости серверные системы с вертикальной масштабируемостью хорошо подходят для сложных, требующих интенсивных вычислений задач обработки данных. К таким областям применения относятся крупные базы данных, системы учета товаров, управление цепочками поставок (Supply Chain Management, SCM), интеллектуальные ресурсы предприятия (Business Intelligence, BI) и управление жизненным циклом продукта (Product Lifecycle Management, PLM).
Еще одной составляющей увеличения эффективности в серверной области является управление потреблением энергии, которое начинается на уровне процессора. Например, технология переключения в зависимости от потребности (Demand Based Switching, DBS) от Intel при малом количестве заданий на вычисление снижает тактовую частоту процессоров до 2,8 ГГц и тем самым напряжение. В результате уменьшается теряемая мощность и экономится энергия без ущерба для производительности. С новым процессором Itanium 2 (под кодовым названием Montecito) в конце года на рынке появится технология Foxtron, благодаря которой процессор при возникновении острой потребности сможет предлагать большую производительность (тактовую частоту), исходя из нагрузки и питания.
ТЕХНОЛОГИИ ПАМЯТИ
В области ввода/вывода в качестве стандарта для локальных серверных технологий утвердилась шина PCI Express. С пропускной способностью от 500 Мбайт/с до 8 Гбайт/с она представляет собой довольно мощную технологию ввода/вывода и способна полностью удовлетворять потребности 10 Gigabit Ethernet и Infiniband.
В подсистемах памяти находят применение новейшие технологии DDR2. Весьма перспективными считаются так называемые полностью буферизованные модули памяти с двухрядным расположением выводов (Fully Buffered Dual In-line Memory Module, FB-DIMM), потенциал которых может наращиваться с увеличением скорости процессора и системы ввода/вывода (см. статью Г. Дирке «Смена поколений серверных модулей» в этом номере «Журнала сетевых решений/LAN»). Эта новая технология памяти, без сомнения, будет способствовать достижению максимума производительности будущих многоядерных процессоров.
В современных корпоративных серверных системах данные должны быстро доставляться к месту назначения в нужный момент времени через системы ввода/вывода. За поддержку критичных компонентов ввода/вывода отвечает, например, технология ускорения ввода/вывода (Input/Output Acceleration Technology, I/OAT) от Intel. Она улучшает широко распространенный стек TCP/IP, снижая время задержки и увеличивая пропускную способность, а кроме того, повышая надежность и эффективность. При этом I/OAT остается полностью прозрачной для всех других приложений, а дополнительных настроек не требуется. Технология адресует все области непроизводительных накладных расходов в системе: так, обработка стека сетевого протокола динамически распределяется по всем физическим и логическим процессорам серверной системы. Это позволяет быстро выполнять приложения на процессорах. Кроме того, I/OAT поддерживает асинхронные операции «недорогого копирования» (прямой доступ к памяти — Direct Memory Access, DMA). С их помощью данные от контроллеров сетевого интерфейса (Network Interface Controllers, NIC) передаются в буферы приложений при заметно меньшей загрузке процессора, что ведет к более высокой производительности вычислений и большей пропускной способности данных.
МНОГОЯДЕРНЫЕ ПРОЦЕССОРЫ
Будущее вычислений — в применении многоядерных технологий. Термин «многоядерный» означает реализацию нескольких процессорных ядер на одной микросхеме. Тем самым достигаются высокая производительность обработки и эффективное использование имеющихся транзисторов (в соответствии с законом Мура следует ожидать, что количество транзисторов на одной микросхеме будет удваиваться каждые 24 месяца, по крайней мере до 2010 г.). Традиционно процессоры, базирующиеся на архитектуре х86, — независимо от их тактовой частоты — единовременно решают лишь одну задачу. Хотя разные приложения и могут работать параллельно, но процессор выполняет свои задачи одну за одной или в мультиплексном режиме. В зависимости от их сложности пользователь из-за соответствующего удлинения времени обработки или получает какую-то выгоду от этого, или наоборот. С введением в 2002 г. технологии Hyperthreading Intel удалось заставить процессор выполнять два задания параллельно: относительно операционной системы он функционирует как два виртуальных процессора. Это стало первым шагом в направлении многоядерной обработки данных.
Рисунок 1. Принцип построения двухъядерного процессора. |
Перспективным приложениям требуются системы со все большей производительностью, которая достигается не только увеличением числа гигагерц. Следующим логическим шагом станет появление многоядерных процессоров, благодаря которой окажется возможна многопроцессорная обработка данных, т. е. решение каждой задачи на отдельном ядре. Первыми представителями являются двухъядерные процессоры (см. Рисунок 1), к примеру новая микросхема Itanium от Intel под кодовым названием Montecito (она должна появиться на рынке в 2005 г.). Тогда при наличии двух процессорных ядер и поддержке Multithreading на двухпроцессорной платформе на базе Itanium будут выполняться по восемь задач одновременно, а на 16-процессорной платформе, соответственно, 64 задачи. В общей сложности многоядерная технология в серверном сегменте должна предложить значительные преимущества в том, что касается цены и соотношения цена/качество, по сравнению с традиционными системами.
Герберт Корнелиус — менеджер по техническому маркетингу компании Intel. С ним можно связаться по адресу: http://www.intel.com.
? AWi Verlag