19.11.2018
сервер

Что такое сервер и как он работает

Рейтинг:  5 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна
 

Если в компанию-интегратор приходят начинающие специалисты, то придется заняться их просвещением. И среди первых тем обязательно будет серверная.

Например, ответ на вопрос о фундаментальных отличия сервера от обычного (пусть даже очень мощного) персонального компьютера – уже вызывает сложности. Особенно, если учесть, что на нижних ступенях иерархии вполне возможна замена сервера ПК и наоборот – будет зависеть от роли, в которой применяется такой компьютер.

Начнем с того, что понятие «сервер» является дуальным. Иногда его применяют к оборудованию, а иногда — к программному обеспечению. Но оба определения принадлежат к особой архитектуре подготовленной к получению запросов извне и ответы на эти запросы путем выдачи информации заданного типа. Считается, что впервые понятие «server» появилось в RFC5 (1969 год) — под этим названием известен один из ранних документов, который описывает ARPANET (ту же сеть, из которой «вырос» Интернет). Сервер был обозначен как составная часть клиент-серверной модели, когда сервер обслуживает данные для своих клиентов. Общение между клиентом и сервером происходит в режиме «запрос-ответ». Каждый вычислительный процесс, используемый или вызываемый другим процессом (особенно удаленно), и есть сервер; а процесс является клиентом. Именно поэтому на любой компьютер в сети теоретически можно сделать сервером. Если доступ к записанным на него файлам может быть разделен между группой пользователей - это файловый сервер. Если софт, отвечающий за работу сайта, то это веб-сервер и тому подобное.

Если говорим о сервере как про специальное оборудование, то это означает, что на нем работает одна или несколько серверных программ, обеспечивающих выполнение той или иной роли. И любая из этих ролей говорит о том, что это компьютер, который способен оказывать услуги другим, подсоединенным к нему. Таким образом, выяснили важнейшее различие между сервером и ПК, которая заключается в коллективной модели применения сервера, основанной на соответствующем ПО. Его можно установить на обычный ПК и использовать как сервер. Допустим, это сделали. После чего владелец познакомится и с другими различиями — уже на аппаратном уровне. Ведь они продиктованы тем, что по мере повышения нагрузки на сервер (более прожорливое ПО, рост количества клиентов и выделения большего объема ресурсов на каждом) значительно повышаются требования к его производительности, надежности, отказоустойчивости и управляемости.

Производительность сервера

Если требования к вычислительной мощности сервера должны вырасти не очень резко, то на смену установленного под это полезное дело ПК можно предложить однопроцессорный сервер начального уровня, который в случае применения платформы Intel работает на процессорах семейств Сeleron, Pentium или Xeon E3. Последний и является настоящим серверным процессором. Уже на этом этапе объем доступной оперативной памяти сервера превысит тот, на который рассчитано материнские платы обычных ПК (64 ГБ). Далее планируется принятие стратегического решения — будем ли увеличивать количество серверов, если вычислительная задача требует больших ресурсов?

Если да, то придется собрать их в кластер высокой производительности (HPC) и добавить ПО, которое отвечает за управление и балансировку нагрузки между узлами кластера. Такое масштабирование обычно называют Scale-out. Или пойти другим путем - установкой еще более мощных серверов. Перейдем на двухпроцессорную конфигурацию, вместе с этим разглядывая более мощные машины, имеющих 4, 8, 10 и более процессоров в рамках одной системы. Тогда ресурсы можно наращивать внутри одной коробки, то есть получить масштабирование Scale-up.

обслуживание сервера

Надежность сервера

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

И вот здесь становится понятным, почему для настоящего сервера нужны правильные комплектующие — тщательно отобранные и которые отличаются от обычного масс-маркета. В огромных (гораздо больших, чем в ПК) объемах оперативной памяти неизбежны сбои, которые нужно оперативно корректировать «на лету». Поэтому держите модули RAM по технологии Error-correcting code memory (ECC), благодаря чему можно корректировать хотя бы однобитные ошибки и к ним в придачу алгоритмы, благодаря которым можно бороться и с серьезными сбоями (Advanced ECC IBM Chipkill, HP ChipSpare — обычно здесь применялись различные вариации использования части памяти для страхования, вплоть до полного отражения, то есть половина памяти была нужна для борьбы с ошибками).

Если обратиться к дисковой памяти, то для разумного баланса между производительностью и защитой данных нужно будет объединить диски сервера в RAID-массив. Которым в случае эффективной его реализации (аппаратной, в виде RAID-контроллера) руководит еще один специализированный компьютер на борту сервера. А если крайне нежелательно терять данные в случае остановки сервера во время их обработки, контроллер можно нарастить или кэш-памятью на аккумуляторе, или солидными конденсаторами. Тогда в случае серьезного сбоя можно вынуть контроллер и без помех установить его в исправную систему.

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

Отказоустойчивость сервера

Переходим к отказоустойчивости и связанной с ней доступности сервера для клиентов. Для ее повышения нужно задублировать те компоненты сервера, у которых больше всего шансов выйти из строя. Дадим возможность менять их без выключения системы (hot pluggable). И добавим сюда средства диагностики, благодаря которым можно не ждать поломки, а сделать заказ на запчасть превентивно, поменяв ее потом в удобное время.

Доступность означает возможность клиентов использовать сервер. Высокая доступность (high availability) — это метод проектирования системы, благодаря которому можно достигать высокого уровня доступности системы в течение какого-либо промежутка времени. Недоступность серверов возникает по плановым и внеплановым причинам. Внеплановые причины означают отказ в предоставлении сервиса, вызванного сбоем в одном или нескольких элементах инфраструктуры, что привело к остановке в предоставлении сервиса. Доступность сервисов измеряется в процентах аптайму (время полной работоспособности сервиса) в год. Ниже приведена таблица непрерывности (см. таб.). И стоит вспомнить, что самые высокие показатели с нее присущи не отдельным системам, а кластерным структурам (HA-кластеры).

Управляемость

Операции управления реализовано через интеллектуальный интерфейс управления платформой Intelligent Platform Management Interface (IPMI). Стандарт для него предложен в 1998 году корпорациями Intel, Dell, NEC и HP. На плате сервера расположен чип Baseboard Management Controller (BMC). BMC обеспечивает: доступ к системе (независимо от состояния сервера), сбор информации о состоянии системы, ее обновления и другие полезные особенности. Может называться ВПО iLO, Dell (i)DRAC, Oracle SSP, IBM IMM, но смысл тот же. До общего принятия стандарта его могли реализовать через отдельный PCI-адаптер (стоимость была не меньше, чем сейчас в RAID-контроллера). ПО для управления сервером всегда включено в поставку, но если нужны функции KVM, удаленного доступа или развертывание большого количества серверов — нужно доплатить за расширенную лицензию.

Где научиться управлять сервером?

Если желаете получить знания об общих принципах, архитектуре и составных частях серверов, то можно рекомендовать курс CompTIA Server+, благодаря которому можно хорошо подготовиться к одноименному экзамену. В Украине его проводят крайне редко, хотя можно подготовиться самостоятельно по доступным онлайн учебными пособиями CompTIA. Но если толстая книга на английском пугает-обращайтесь в учебный комплекс ERC. Если найдутся единомышленники количеством от четырех людей — состоится курс.

Поскольку управление серверами (Server Management) может стать аргументом, который склонит чашу весов в пользу вендора, ему посвящены «родные», фирменные курсы производителей серверов. Именно там раскрывают тонкости, благодаря которым системный администратор выжмет из системы управления максимальный эффект. HPE проводит с этой целью коммерческие курсы с HPE OneView (ERC готова организовать их как учебный партнер HPE), DELL учит своими силами, Huawei тоже, Cisco и IBM в последние годы отдали это в руки глобальных учебных партнеров. А вот в Lenovo подобных курсов пока не было, но их уже планируется запустить этой осенью.

В 2018 году резко повысился интерес к однопроцессорным серверам. Причиной стала активность AMD, которая предложила в прошлом году процессоры EPYC на 32 ядра на функциональных материнских платах. Для сравнения, в Intel Xeon сейчас 28 ядер в топовых моделях Gold/Platinum, а Intel Xeon Phi стоит в разы дороже и для специальной сферы применения. Так что AMD объявила о начале новой эры вычислений — мол, даже двух процессоров в одной системе будет слишком много. Призыв услышали Cisco, Cray, Dell и HPE. Предсказуемо, что наиболее активно на него откликнулись производители комплектующих к серверам (например, ASUS). А еще переход к однопроцессорным решениям означает экономию на серьезном ПО, иногда выраженную четырехзначными числами. Ведь лицензирование той же VMware vSphere основано на количестве используемых CPU, а вот однопроцессорные решения пока облагаются выгодному льготному тарифу.

При построении серверных решений нет ограничений только платформами x86 Intel, AMD и полузабытой VIA, но в странах с не очень развитой экономикой именно они составляли большинство серверных инсталляций. Решения на базе мейнфреймов, RISC-систем и серверов на Intel Itanium были не столь популярны по ряду причин. Но если взять топ-уровень серверных технологий, которым принято считать список ТОП-500 самых производительных компьютерных систем мира (top500.org), то в его последней редакции (июнь 2018 года) в десятку лучших вошли пять систем на Intel Xeon и одна на AMD Opteron.

То есть вариации на тему Xeon преобладают. Но при этом первые три места в списке занимают RISC-системы на процессорах IBM Power8 и созданных в Китае Sunway, которые опять-таки принадлежат к RISC. Рывок AMD на серверном рынке было усиленно соглашениям с китайскими компаниями, которые организуют массовое производство лицензионных процессоров для китайских ЦОД прямо у них, в пику Intel. Если же от таких глобальных задач снова обратиться к менее пафосным, то использование в серверах процессоров ARM-архитектуры, которые прекрасно работают в смартфонах и других персональных гаджетах, потихоньку набирает обороты. Но все равно по общему количеству поставок систем для массового рынка – у Intel отрыв пока огромный.

При использовании многих типов задач (особо машинного обучения и AI) семейство адаптеров с мощными графическими ускорителями (прежде всего NVidia Tesla) хорошо взаимодействует с основными процессорами как «цифродробилки», и это учитывают их проектировщики. Так что в самом продуктивном кластере мира (IBM Summit, первое место в ТОП 500), в каждом вычислительном узле на два Power9 CPU приходятся уже шесть графических адаптеров NVidia V100. И в том самом списке немало систем, использующих Intel Xeon Phi, который со сопроцессора стал еще одним «компьютером в компьютере» со своей операционной системой (второго поколения уже можно использовать его сокетную версию вместо универсального Xeon), вычислительными ресурсами (до 72 ядер, в 4 потока!) и системой взаимодействия с хост-платформой.

Появление SSD, а за ними NVMe заставило начать удаление скоростных HDD SAS10-15K rpm из серверных конфигураций – они все равно проигрывают по ряду параметров. Теперь уже возникает вопрос: зачем ставить HDD NL SAS/SATA в форм-факторе 3,5", если проще подключить JBOD-полку, одну или несколько (счет уже идет на сотни терабайт). Проще оставить в сервере только диски малого форм-фактора 2,5". И по возможности подключать любой из трех типов накопителей NVMe/SAS/SATA. Под загрузку ОС на серверных платах вместо USB-флешек или SD-карт ставятся накопители M.2 на шине PCIe x4, можно даже два в RAID0/1. И уже в строю безконтроллерные массивы на NVMe-накопители, которые в Intel назвали VROC (Virtual RAID on CPU). И отдельным пунктом повышения надежности примем, что производитель позволяет компонентам своего сервера работать в экстремальном температурном режиме. Конечно, придерживаться строгого стандарта MIL-STD-810 в обычных серверах никто не будет (дорого), но вот поднять гарантированную рабочую температуру некоторых конфигураций до 45 °C возможно. Вот Lenovo, кстати, так и делает.

  1. Последние
  2. Популярные
Загрузка...

Новости технологий сегодня

Самые популярные метки