Я работаю аналитиком в компании, которая занимается (в том числе) созданием ЦОДов и построением IT-инфраструктуры для других компаний. Как-то на одном из рабочих совещаний во весь рост встала следующая проблема - часто новые сотрудники не до конца понимали, чем именно мы занимаемся и не могли описать потенциальным заказчикам, что именно мы предлагаем. Именно тогда родилась мысль написать цикл статей, который бы доступно объяснял, что такое виртуальная инфраструктура, с помощью чего она может быть построена и чем она может быть выгодна нашим клиентам. Это первая статья из данного цикла и в ней я расскажу о том, что вообще представляет собой IT-инфраструктура и какие подходы к ее построению существуют.
Сейчас трудно представить себе успешную среднюю или крупную организацию, которая не использует для поддержки своих бизнес-процессов развитую IT-инфраструктуру. Под ней обычно понимают совокупность следующих элементов:
- Вычислительного оборудования (серверов);
- Клиентского оборудования;
- Программного обеспечения;
- Оргтехники;
- Сети передачи данных;
- Сетевого оборудования (маршрутизаторы, коммутаторы, концентраторы и т.д.);
- Сотрудников, обслуживающих эту инфраструктуру.
При построении IT-инфраструктуры обычно выделяют следующие подходы:
- Традиционный подход, при котором используются реально существующие серверы, сетевое оборудование и системы хранения данных;
- Подход с применением технологий виртуализации, при котором некоторые элементы инфраструктуры воссоздаются на реальных вычислительных мощностях, но не завися от физического оборудования. Например, с помощью средств виртуализации можно развернуть на одном физическом сервере несколько виртуальных машин с разными операционными системами и/или копиями корпоративных приложений.
При традиционном подходе на сервер обычно устанавливают несколько приложений, которые не изолированы друг от друга. Такой подход имеет следующие минусы:
- Если одно приложение потребляет все ресурсы сервера, то это отрицательно сказывается на скорости работы других приложений.
- Во время обслуживания традиционной IT-инфраструктур часто проходится останавливать приложения на время проведения работ.
- С ростом нагрузки приходится увеличивать количество физических серверов. А с ростом парка серверов усложняется процесс их администрирования, а также растет стоимость поддержки.
- Отсутствует гибкость в управлении инфраструктурой;
- Со временем образуется разнородный парк серверов, использующий разные ПО;
- Вычислительные ресурсы серверов (ЦП, ОЗУ, Дисковое пространство) зачастую используются неэффективно;
- Разработчики вынуждены собирать ПО из исходников для определенного сервера, учитывая при этом архитектуру, тип и версию используемой на сервере ОС, а также версии библиотек.
Подход с использованием виртуализации лишен этих недостатков, и потому становится все более популярным. Он обладает следующими преимуществами:
- Позволяет быстро адаптировать IT-инфраструктуру под меняющиеся требования (добавить новые или удалить неиспользуемые сервера, изменить объем используемых ресурсов, например, объём оперативной памяти и т.д.);
- Позволяет воссоздать окружение необходимое для работы приложений вне зависимости от реально используемого «железа»;
- Переносимость контейнеров обеспечивает потенциальную возможность устранения целого класса программных ошибок, вызываемых незначительными изменениями рабочей̆ среды;
- Позволяет перемещать и копировать виртуальные машины (по аналогии с операциями над файлами и папками).
- Позволяет быстро увеличить число независимых друг от друга изолированных приложений без закупки дополнительного оборудования.
- Можно сохранить состояние виртуальной машины и быстро вернуться к точке до внесения изменений в систему.
К недостаткам виртуализации можно отнести следующие моменты:
- Некоторые решения для виртуализации могут обойтись дороже, поскольку компоненты виртуальной инфраструктуры могут быть очень требовательным к вычислительным ресурсам.
- Необходимо уделять гораздо больше внимания к обеспечению бесперебойной работы. Так неполадки с железом физического оборудования выведут из строя всю созданную на ней виртуальную инфраструктуру.
- Некоторые решения виртуализации требуют хранить данные вне компании, что может быть неприемлемо для самой организации.
В одной из следующих статей я более подробно рассмотрю способы построения IT-инфраструктуры с использованием технологий виртуализации.