NGINX больше всего известен как высокопроизводительный веб-сервер, но его польза для компаний этим не ограничивается. Постепенное развертывание инструментов, реализуемых на основе его открытого исходного кода, расширяет возможности поставки и управления веб-приложениями в нужном масштабе, упрощая компаниям переход на технологию DevOps.
Ориентируясь на современные сценарии разработки приложений, платформа Nginx Application Platform опирается на сервер NGINX Plus. Платформа предназначена для поддержки разработчиков и организаций, желающих работать с приложениями на основе микрослужб с использованием инструментов управления подсистемами балансировки нагрузки, сетевыми экранами и шлюзами приложений. Раньше нам приходилось отдельно настраивать каждую функцию через графический интерфейс или из командной строки. Сегодня, когда современные приложения должны работать динамически, с автоматическим изменением масштаба в сторону увеличения или уменьшения, в «облаках» всех поставщиков, эта модель уже не работает.
С появлением того, что NGINX описывает как «центр управления полетами ваших особо ценных приложений» в лице контроллера NGINX Controller, встала на место последняя деталь этой сложной головоломки. Благодаря поддержке графического интерфейса управления основным сайтом и приложениями, а также наличию инструментария «глубокой» автоматизации для групп DevOps, NGINX Controller соединяет все средства управления NGINX Plus в одном месте, независимо от того, где работают и как развертываются ваши серверы. Вне зависимости от масштаба, NGINX Controller работает как для маленького кластера в вашем центре обработки данных, так и для виртуальных серверов в среде AWS или группы контейнеров, управляемых Kubernetes в Azure. Для использования контроллера не нужно менять настройки серверов, так как его установка не требует специальной процедуры.
Подобно большинству инструментов управления, контроллер имеет единое окно, откуда оператор может осуществлять контроль и управление своими серверами с выдачей оповещений на центральную консоль. Это позволяет администратору быстро реагировать на изменения в состоянии приложения. Контроллер выдает на дисплей ключевые метрики производительности, а также ошибки сервера для быстрого просмотра данных о состоянии приложений и служб. Рекомендации предупредительного характера от встроенного анализатора настроек позволяют применять наиболее эффективные методы, выработанные на основе передового опыта клиентской базы NGINX в части настроек и безопасности. К прочим возможностям относятся установка и развертывание с помощью мастера, включая централизованную обработку SSL и средства создания и развертывания политик на всех серверах.
Контроллер — это не только графический интерфейс, но и набор API, допускающих написание сценариев и интеграцию с прочими инструментальными средствами DevOps. Информацию о настройках можно хранить с использованием таких инструментов, как Puppet или Chef, и развертывать вместе с кодом приложения с помощью конвейера непрерывной интеграции и непрерывной доставки. Новые настройки можно делать частью описания приложения и доставлять с каждой новой сборкой.
NGINX предусматривает инструменты как для традиционных операционных групп, так и для групп, работающих в рамках современной модели DevOps, в предположении, что предприятия будут использовать контроллер при переключении между моделями операционной деятельности: администраторы, привыкшие работать по старинке, будут по-прежнему иметь доступ ко всем возможностям платформы и одновременно начнут внедрять автоматизацию. «Мы действуем в обеих областях, делая современный стиль работы доступным для предприятий и открывая новые возможности для существующих групп DevOps», — заявил Сидни Рабсатт, вице-президент NGINX по управлению продуктами.
Ключевой особенностью контроллера является поддержка развертывания в «многооблачных» средах, позволяющая компаниям создавать и развертывать приложения на основе микрослужб в нескольких частных и общедоступных «облаках» для повышения надежности и снижения риска, связанного с перебоями в обслуживании. Из единого окна панели управления администраторы могут осуществлять мониторинг операций по всем точкам развертывания, а встроенная подсистема балансировки нагрузки NGINX Plus позволяет управлять производительностью во всех географических точках. Состояние приложений мгновенно оценивается по сводным данным, собираемым по всем их экземплярам.
Очевидно, что компании, рассматривающие NGINX Plus как основной элемент программ автоматизации управления и обработки информации, считают модель DevOps важной составной частью процесса. «Принятие этой модели означает переход к формированию профессиональных навыков, реализации возможностей и оптимизации инвестиций, — поясняет Рабсатт. — Этот подход является не только техническим, но и бизнес-решением».
Учитывая, что число загрузок образов NGINX с Docker Hub уже превысило миллион, сегодня этот переход совершают уже многие компании.