Бог мой! Надо бы что-то предпринять. Но я уже в пижаме…
Профессор Хьюберт Фарнсворт “Футурама”

Итак, понеслась… на часах 21:00, ужин давно съеден, кот поглажен и, казалось бы,  пора на боковую, но к сожалению сегодня сервер тебя опередил. Вечер моментально перестал быть томным. Телефон разрывается от сообщений о недоступности сервисов, клиенты недовольны, коллеги в панике, кот стрессует.

Нужно как можно скорей проверить железку, которая находится на другом конце города и как-то ехать туда в ночь не хочется да, в принципе, и не нужно – как-никак в 21-м веке живем. Обращаешься в ЦОД с просьбой подключить KVM, получаешь удаленный доступ и приступаешь к диагностике. После успешной проверки и перезагрузки, серверу становится лучше и можно с чистой душой успокоить клиентов, коллег, кота,  снять супергеройский плащ и идти спать.

Как видим, благодаря KVM, удалось максимально оперативно приступить к решению проблемы, не тратя драгоценное время и деньги на поездку в дата-центр. Что же представляет из себя технология KVM? Какие бывают виды KVM и чем они отличаются? Как подобрать для себя оптимальный KVM? – эти и не только вопросы мы постараемся разобрать в данной статье. 

Что такое KVM?

Keyboard Video Mouse switch/console – оборудование, позволяющее управлять одним или несколькими компьютерами как локально, так и удаленно.

Пример локального подключения (в пределах помещения) 
с использованием KVM
Пример локального подключения (в пределах помещения) с использованием KVM
Пример удаленного подключения посредством IP-KVM
Пример удаленного подключения посредством IP-KVM

История разработки технологии KVM берет свое начало в 80х годах 20го века, когда скорость развития IT-индустрии начала набирать значительные темпы. Количество оборудования, располагаемого в дата-центрах с каждым днем увеличивалось. Каждое устройство требовало подключения к себе монитора, клавиатуры и мышки, которые вскоре стали занимать довольно весомую часть ценного пространства в серверных. Малого того, еще и росло время, потраченное на  выматывающие перебежки от одного сервера к другому.

В какой-то момент здравый смысл победил и инженеры взялись за разработку решения, которое позволило бы подключаться сразу к нескольким серверам имея всего лишь один комплект клавиатуры, мышки и монитора. Таким решением стали KVM-переключатели.

Первые KVM-переключатели (или kvm-switch/свитч) были  механическими приборами, которые при помощи гальванической развязки буквально физически отключали консоль от одного сервера к другому, с чем было связано множество неудобств.

Механический KVM-переключатель c PS/2- и VGA-разъёмами
Механический KVM-переключатель c PS/2- и VGA-разъёмами

С переходом на электронику многие KVM-переключатели стали активными устройствами с гибкой настройкой и множеством дополнительных полезных функций. Использование электрических схем и матриц коммутации позволило увеличить количество подключаемого оборудования — на данный момент существуют модели, к которым можно подключать до 64х серверов, а в случае применения каскадирования, количество возрастает до 512. Многочисленные активные удаленные сеансы перестали быть проблемой с переходом на протокол IP ( KVM over IP). 

64-портовый КВМ-коммутатор с доступом  по IP 
  и  поддержкой до  8 удаленных сеансов доступа
64-портовый КВМ-коммутатор с доступом по IP и поддержкой до 8 удаленных сеансов доступа

На сегодняшний день KVM устройства вышли за рамки оборудования для дата-центров и широко применяются в домашних условиях, а также в условиях малого офиса, позволяя управлять несколькими компьютерами с одной консоли.

Настольный KVM-switch с возможностью 
подключения двух компьютеров
Настольный KVM-switch с возможностью подключения двух компьютеров

Также KVM-переключатели и консоли просто незаменимы в промышленности при мониторинге технологических линий, систем безопасности и видеонаблюдения, активно встраиваются в банкоматы и вендинговые аппараты для удаленного контроля. 

Как работает KVM?

В общих чертах принцип работы всех KVM состоит в  преобразовании, усилении  и передаче сигналов,  между консолью и сервером, к которому подключен KVM переключатель

Передача сигнала от одного комплекта периферии
 на несколько серверов
Передача сигнала от одного комплекта периферии на несколько серверов

Практически во всех современных компьютерах в момент включения и загрузки операционной системы происходит инициализация периферийных устройств. В случае отключения клавиатура/мышь/дисплей повторная инициализация при подключении занимает ощутимый промежуток времени, что вносит неудобство при работе с большим количеством оборудования. Чтобы решить данный вопрос, была разработана технология, при помощи которой KVM-переключатели стали буквально эмулировать сигналы периферии (Signal Simulation Technology). На временно неиспользуемое устройство посылаются сигналы, имитирующие активный сеанс подключения консоли, чтоб сократить время переключения, если оно вновь будет выбрано пользователем.  

На каком уровне KVM дает доступ к серверу?

Одним из важнейших преимуществ в использовании удаленного подключения через KVM-переключатель является то, что он независим от операционной системы. В связи с этим, в отличии от программных средств удаленного доступа (Radmin, VNC, Hamachi, AnyDesktop и тд), KVM дает доступ на уровне BIOS. Посредством KVM возможен мониторинг системы и запуск диагностических тестов, инсталляция ОС, перезагрузка сервера, обновление программного обеспечения.

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

Какие нужны разъемы для подключения KVM?

Как упоминалось выше, KVM-переключатель должен поддерживать подключение периферии от различных брендов, а раз к нему подключаются клавиатура, мышь и монитор, значит, должны быть и определенные требования к консольным портам. 

Мышь и клавиатура

Подключение мыши и клавиатуры возможно через интерфейсы типа USB  или же PS/2.

В причину своей распространённости и внедряемости практически во все, что движется и не движется, наличие USB Type-A в KVM-переключателе является предпочтительней, чем PS/2. Также на многих серверах либо полностью отсутствует PS/2,  либо есть лишь один порт, что, мягко говоря, не совсем удобно, если ты собираешься использовать KVM.

Как вывод, в случае выбора KVM-переключателя с PS/2 или USB, следует опираться на наличие тех или иных интерфейсов в устройствах, к которым вы будете в дальнейшем удаленно подключаться.

Видеовыходы

KVM-переключатели в зависимости от модели поддерживают различные виды цифровых и аналоговых видео-выходов (CatX KVM, HDMI, VGA, DisplayPort, DVI, USB-C, Thunderbolt). Максимально передаваемое разрешение картинки через KVM-переключатель на нынешний момент ограничено форматом Ultra HD (3840×2160).

Видеоинтерфейс

Максимальное разрешение

Максимальная длина кабеля

VGA

1280×1024

3 метра

DVI

1920×1200

10 метров

HDMI

3840×2160

10 метров

DisplayPort

3840×2160

3 метра

KVM CatX

Технология, позволяющая передавать видео сигнал, а также сигналы клавиатуры и мыши  от сервера не по разным кабелям, а по одному кабелю (UTP cat5/6) при помощи CAM-модуля. При этом сам сервер может быть удален от KVM-переключателя на десятки метров (до 300м). Подключение через витую пару позволяет передавать сигнал на значительное расстояние без  потерь. Данное решение универсально, так как существует огромное количество CAM-модулей (Computer Access Module) с различными наборами интерфейсов.

Пример использования технологии KVMx
Пример использования технологии KVMx
Виды CAM модулей
Виды CAM модулей

Данная технология, благодаря экономии пространства, занимаемого на KVM-переключателе (один порт под RJ-45 вместо трех  портов под монитор/клавиатуру/мышь), позволяет значительно увеличить количество подключаемых устройств, что является весомым плюсом при выборе KVM-переключателя.

Но не клавиатурой, мышкой и монитором едиными. Существует множество моделей KVM-переключателей, способных подключать аудио-девайсы, принтеры, съемные накопители и так далее. 

А что насчет питания?

KVM-переключатели, предназначенные для подключения до четырех устройств, зачастую являются пассивными и запитываются непосредственно от самого оборудования  через интерфейс USB или PS/2. Более дорогим, но и в то же время более надежным является вариант подключения через собственный  адаптер питания, которым всегда снабжены активные KVM-переключатели.

Подключение оператора к KVM switch

Хорошо, сервера к KVM-переключателю мы подключили, теперь и самим бы как-то подключиться надо. Подключение, в зависимости от модели KVM-переключателя, возможно локальное или же удаленное.

аналоговые KVM-переключатели – предоставляют только локальное подключение. Обязательным условием для передачи сигнала является наличие прямого подключения между сервером, KVM-переключателем и  пользовательской консолью. Для соединения KVM  с пользовательским ПК может использоваться витая пара или коаксиальный кабель.

Пример подключения посредством аналогового KVM-switch
Пример подключения посредством аналогового KVM-switch

цифровые (KVM over IP / IP-KVM) –поддерживают удаленное подключение. Конвертируют аналоговый сигнал, поступающий от мышки, клавиатуры и монитора в цифровой и передают его поверх протокола IP через Internet на целевое устройство. Таким образом пользователь может управлять своим сервером с любой точки мира, где есть доступ к сети Интернет.

Пример подключения через KVM over IP
Пример подключения через KVM over IP

Сколько людей может пользоваться KVM одновременно? 

По количеству возможных пользовательских режимов KVM-переключатели делятся на:

однопользовательские – один пользователь может управлять группой удаленных устройств;

многопользовательские – группа пользователей может одновременно управлять группой удаленных устройств.  Современные KVM-переключатели поддерживают до 16 одновременных сеансов.

Безопасно ли подключаться через KVM?

При удаленном подключении через сеть Интернет всегда следует рассмотреть риски атаки на подключаемое устройство со стороны злоумышленников. При выборе KVM стоит особое внимание уделить этому вопросу и подробно ознакомиться с характеристиками.

Многие производители KVM-переключателей с функцией KVM over IP заботятся о том, чтоб их продукция поддерживать современные протоколы безопасности, такие как TLS 1.2-шифрование для браузеров и 128-битное RC4-шифрование для данных клавиатуры, мыши и видео. Также  с целью повышения удобства и эффективности работы пользователей KVM-переключатель должен поддерживать идентификацию и авторизацию через удаленные серверы, такие как LDAP, RADIUS, LDAPS и MS Active Directory.

KVM-консоль

По ходу статьи упоминалась KVM-консоль, что же это такое, где она применяется и какие у неё особенности – рассмотрим ниже.

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

KVM-консоль
KVM-консоль

По количеству портов KVM-консоли делятся на однопортовые и многопортовые. В многопортовых консолях обычно заранее встроен KVM-переключатель.

По размеру диагонали на сегодняшний день наиболее популярны консоли с экранами 15,17,19 дюймов. Во всех KVM-консолях применяется экраны с LCD матрицы.

Управление KVM-консоли может быть локальным, когда пользователь работает непосредственно за самой консолью или же удаленном (через протокол IP).

Трансформирование консоли может быть по типу Dual Rail  – монитор и клавиатура могут отдельно друг от друга выезжать из стойки, или же  Single Rail – монитор и клавиатура могут выезжать только совместно.

Подключение к серверам зачастую происходит по технологии CATx – когда CAM модуль с одной стороны подключен к серверу интерфейсами VGA, DVI, USB и др., а с другой стороны коннектором RJ-45 вставляется в консоль.

KVM-консоли дают доступ к серверу на уровне BIOS, тем самым предоставляя широкие возможности конфигурации и удаленной настройки.

Зачастую KVM-консоли применяют в дата-центрах, их монтируют непосредственно в стойку, при этом консоль в сложенном состоянии занимает всего лишь один юнит, чем помогает значительно сэкономить пространство и улучшить эргономику машинного зала.

Существует ли альтернатива KVM?

 IPMI

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

Для реализации данной идеи был разработан стандарт IPMI (Intelligent Platform Management Interface) – специализированный интеллектуальный интерфейс для удаленного мониторинга и управления физическим состоянием сервера. Важной особенностью IPMI является его автономность – работа данного интерфейса не зависит от процессора, операционной системы, встроенного программного обеспечения (BIOS или UEFI). При помощи IPMI возможно включения/выключения питания на сервере, аппаратный сброс устройства, мониторинг состояния всех компонентов материнской платы.

Реализация IPMI основывается на использовании встроенного в плату контроллера BMC (Baseboard Management Controller) – абсолютно автономного  модуля  с собственным процессором, операционной системой и памятью. Наличие дежурного напряжения (+5V Standby) на блоке питания достаточно, чтоб схема BMC корректно работала, то есть при этом сам сервер может быть выключен, что является важным преимуществом данной технологии.

Схема работы BMC контроллера
Схема работы BMC контроллера

Контроллер BMC через различные интерфейсы соединен со всеми компонентами материнской платы, чтоб считывать показатели их состояния и предоставлять администратору подробную информацию о системе.

Взаимодействие между удаленным пользователем и BMC контроллером осуществляется через специальный сетевой интерфейс, отдельно встраиваемый в материнскую плату, обычно он находится отдельно от остальных сетевых портов, рядом с разъемами для подключения периферии. Для обмена сообщениями используется протокол RMCP (Remote Management Control Protocol)  –  простой протокол запроса-ответа, реализуемый посредством дейтаграмм по протоколу UDP.  Такой способ обмена данными носит название “IPMI over LAN”.

Порт IPMI на сервере
Порт IPMI на сервере

Крупные вендоры серверного оборудования, с целью коммерциализации, дорабатывали  данный стандарт под своё видение прекрасного и на выходе получился небольшой зоопарк в наименованиях одной и той же технологии, но с различными проприетарными модификациями:

  • iDRAC (integrated Dell Remote Access Controller) –  DELL;

  • iLO (Integrated Lights-Out) – Hewlett-Packard;

  • IMM (Integrated Management Module) – у фирм Lenovo и IBM;

  • IMC (Integrated Management Controller) – Cisco;

  • SIM (Supermicro Intelligent Management) – Supermicro;

  • iRMC (integrated Remote Management Controller) –  Fujitsu;

  • и тд. и тп. … 

Intel vPro

Также свое решение в области удаленного администрирования представили специалисты компании Intel  в виде платформы Intel vPro в таком близком, но уже далеком 2007 году.

По своей сути vPro это понятие, обобщающее под собой целый набор различных технологий (TXT, VT, AMT, XD-Bit, Turbo Boost, WiDi), направленных на облегчение обслуживания информационных систем и повышение безопасности доступа.

Стандартная линейка технологий, входящих в платформу Intel vPro состоит из:

- Intel VT (Intel Virtualization Technology) набор инструкций для процессора, позволяющий значительно повысить скорость работы виртуальной машины за счет аппаратной виртуализации.

Инструкции Intel VT-x позволили виртуальным машинам работать напрямую с процессором, тем самым сокращая задержки и избегая потерь производительности. В свою очередь инструкции Intel VT-d отвечает за безопасное подключение гостевой OC к периферии, выделяя защищенные кластеры адресного пространства виртуальной памяти;

- Intel TXT (Intel Trusted Execution Technology) — технология отвечающая за безопасность кода, выполняемого в виртуальной среде. В случае обнаружения несанкционированного изменения исполняемого кода,  Intel TXT позволяет отследить его и отсечь, таким образом эффективно борясь с вирусами, руткитами и прочим вредоносным ПО;

- Intel AMT (Intel Active Management Technology)  - отвечает за удаленный доступ к системе. Так как AMT реализована как набор аппаратных функций на одной микросхеме с BIOS, это позволяет управлять устройством даже если на него не установлена операционная система или даже если оно выключено. Подключение через AMT происходит по отдельному независимому каналу обмена данными;

- Intel Turbo Boost — механизм автоматического разгона процессора в моменты краткосрочных нагрузок. Данная технология позволяет увеличивать тактовую частоту до значений, превышающих допустимые по TDP (Thermal Design Power). Работа Intel Turbo Boost очень зависит от качественной работы системы охлаждения;

- Intel XD-Bit (Intel Execute Disable Bit) — еще одно средство, позволяющее повысить безопасность работы с vPro. XD-Bit предотвращает атаки, использующие уязвимость переполнение буфера, с помощью  NX-Bit (No Execute Bit) «бита запрета на исполнение»;

- Intel WiDi / Intel Wireless Docking — технологии подключения к периферии, мониторам, проекторам и прочему по выделенному беспроводному каналу.

Как видно, технология представленная Intel действительно является достойным конкурентом IPMI и KVM-переключателям, но стоит не забывать, что для использования платформы vPro вся ваша IT-инфраструктура должна быть построена на технике с поддержкой  vPro (обычно, такая техника имеет маркировку Intel vPro®).

В качестве вывода

Популярность технологии KVM действительно заслужена, ведь благодаря ей многие пользователи могут работать со своими устройствами, находясь в разных точках земного шара. KVM позволяет практически без ограничений настраивать, мониторить и обслуживать сотни удаленных серверов, имея под рукой стандартный набор периферии. KVM-переключатели и консоли  позволяют с максимальной пользой использовать место в серверных стойках, снижают электропотребление и сокращают материальные затраты на обслуживание IT-инфраструктуры.

Этот, зачастую незаметный, но стойкий «оловянный солдатик» уже десятилетиями с достоинством и честью выполняет возложенные на него функции, каждый день облегчая жизнь и работу тысячам людей.

Комментарии (18)


  1. volchenkodmitriy
    31.10.2022 11:27

    Здравствуйте! Спасибо за статью. KVM действительно очень удобное решение при настройке серверов, решение проблем с ними, хотя для серверов это именно инструмент на случай аварии. А вот когда я работал в техподдержке в достаточно крупной организации аналоговый KVM switch был просто незаменим, когда нужно настроить сразу несколько рабочих станций, до этого настраиваемый компьютер тупо подключался и настраивался от и до, а потом только следующий и т.д. С KVM я мог одновременно настраивать до 4х компьютеров, на большее уже не хватало меня)


  1. QuAzI
    31.10.2022 12:10

    С серверами то всё просто... куда хуже если нужно срочно другу поднять незагружаемую систему, а он в другом городе и вообще за NAT. Вот бы кто годный готовый KVM подсказал за адекватные деньги, чтобы не возиться с заказом/сборкой рассыпухи PiKVM/BliKVM.

    Ну и одноразовый вариант для совсем бомжей: делаем загрузочную флешку через Ventoy, на неё накатываем SystemRescueCD, учим друга бутаться в консоль, задавать пароль (иначе SSH не летит) и пробрасывать временно порт на роутере в мир. Ну а там почти весь софтовый инструментарий для ремонта в наличии, плюс можно qemu-x86 поставить в RAM, запустить x11vnc и попытаться поломанную ОС с харда забутать. А если совсем прижмёт, SystemRescueCD можно пересобрать под себя с нужным софтом, SSH-ключём вшитым и т.д.


    1. 2Nplus1 Автор
      31.10.2022 12:22

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

      Проблемы у Lantronix Spyder две, первая это то что его на российском рынке не достать, мы закупались на ebay, второе это java с которой у пользователей возникают сложности. Так что ищем альтернативу и как раз смотрим в сторону PiKVM


  1. Exchan-ge
    31.10.2022 13:29

    и широко применяются в домашних условиях


    Таки да:
    image


    (вот эта кнопочка на тонком проводке — переключатель KVM)

    Как оказалось — вещь поразительно полезная даже в «быту».
    Мне, наконец, удалось разделить функции домашнего универсального компа на два разных устройства — один системник деловой, второй — игровой.

    Кстати, это хорошо и с точки зрения инфобеза :)


    1. Asbor
      01.11.2022 14:16

      у меня таким образом подключен мой комп и комп жены к проектору)


  1. Exchan-ge
    31.10.2022 14:02

    Механический KVM-переключатель c PS/2- и VGA-разъёмами


    О мой первый KVM… ностальгия :)

    Потом были:
    PLANET KVM-400 4-port VGA-PS/2
    D-Link KVM-121 VGA-PS/2
    D-Link DKVM-2U VGA-USB


  1. inkvizitor68sl
    31.10.2022 14:28

    Непонятно только, зачем писать эту статью и не упомянуть PI-KVM и аналоги.

    Все эти дорогущие железки ни за что уже не в чести.


    1. 2Nplus1 Автор
      31.10.2022 15:04

      Я думаю это тема отдельной статьи, где мы расскажем процесс сборки и тестирования в ЦОД этих девайсов. Не уверен, что она будет скоро, но все же


  1. mayorovp
    31.10.2022 19:01

    Кто-нибудь знает, существуют ли в природе KVM для нескольких мониторов? И по каком ключевым словам их искать?


    1. Busla
      31.10.2022 22:47

      DisplayPort позволяет подключать несколько мониторов через один порт: либо через hub, либо каскадом, если это реализовано в монике. Возможно прокатит и в сочетании с KVM для DisplayPort.


      1. mayorovp
        01.11.2022 17:58

        Хм, неплохо, жаль только DisplayPort у меня нет ни на видеокарте, ни на мониторах...


    1. darkxanter
      01.11.2022 00:04
      +1

      Dual Monitor KVM


    1. QuAzI
      01.11.2022 16:39

      Навалом барахла, вот например https://aliexpress.ru/item/4000945555455.html

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

      Проще брать сразу монитор с полноценным USB/type-c хабом, втыкаться в него, включать основную периферию в него, он же заодно и ноут по type-c может питать. Он же, если поддерживается вашими компами по MST в DisplayPort и остальные мониторы подтянет.


      1. mayorovp
        01.11.2022 17:56

        На фотографиях по вашей ссылке я вижу порт только для одного монитора.


        Про монитор (в единственном числе) с хабом я тоже не понял. Как это решение поможет подключить второй монитор?


  1. Busla
    31.10.2022 23:00
    +1

    IPMI

    Многие производители серверов позаботились о том, чтоб их клиенты могли в любое время получать доступ к своему оборудованию

    на самом деле IPMI - это не обязательно что-то встроенное в серверную материнку. Есть реализации в виде стандартных карт/плат расширения. Например, ASUS выпустил в этом году IPMI Expansion Card


    1. Kitsok
      31.10.2022 23:24

      Прекрасная, между тем, железка. OpenBMC въедет в неё как в родную, ну и дальше можно пилить любой функционал, какой душе угодно. Лишь бы стоила недорого.


  1. vladvul
    01.11.2022 10:23

    а есть устройство с GSM связью?


    1. 2Nplus1 Автор
      01.11.2022 11:24

      Я не встречал таких, как и решений с wifi на борту. Наверняка в сборку pikvm можно воткнуть gsm модуль для Raspberry Pi