Руководство по отклонению конфигурации и способам его предотвращения

Дрейф конфигурации является серьезной проблемой для всех разработчиков IAAC. В этом посте вы узнаете об управлении отклонением конфигурации, его важности, причинах и возможных решениях.

Оглавление

Что такое дрейф конфигурации?

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

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

Как работает дрейф конфигурации

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

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

Распространенные причины дрейфа конфигурации

Отсутствие связи

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

Исправления

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

Критические обновления пакетов

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

Отсутствие автоматизации

Автоматизация не полностью устранит вероятность дрейфа конфигурации. Это просто снизит его шансы.

Изменения удобства

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

Почему управление конфигурацией важно?

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

Когда обнаруживается дрейф конфигурации, поиск основной причины дрейфа конфигурации, из-за которой все это произошло, требует времени, которое является ценным ресурсом в чрезвычайной ситуации.

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

Низкие затраты

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

Более высокая производительность

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

Быстрая отладка

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

Проблемы, вызванные отклонением конфигурации

Проблемы с безопасностью

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

Время простоя

Значительное время простоя может быть вызвано ошибкой конфигурации, которая позволяет злоумышленнику использовать уязвимость DoS или скомпрометировать важный сервер. Но это еще не все. Допустим, вы изменили конфигурацию сетевого устройства, влияя на производительность. Вы всегда можете вернуться к своей «золотой конфигурации», верно? Восстановление службы займет гораздо больше времени, если эта конфигурация ошибочна.

Выход из строя

Жесткий контроль безопасности необходим для соблюдения таких норм, как ISO 27001, PCI-DSS и HIPAA. Дрейф конфигурации может привести к нарушению соответствия, если его не остановить.

Снижение производительности

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

Потерянное время

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

Распространенные ошибки, на которые следует обратить внимание при отслеживании дрейфа конфигурации

В идеальном мире все серверы среды для разработчиков (Dev/QA/Staging/Prod) должны иметь одинаковые конфигурации. К сожалению, в «реальном» мире все происходит иначе. В коммерческих условиях владельцы приложений часто модифицируют инфраструктуру, когда в программное обеспечение вводятся новые возможности.

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

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

Распространенные ошибки перечислены ниже:

Не поддерживать CMDB

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

Неспособность поддерживать CMDB подвергает предприятия опасности неполного понимания того, как конфигурация одного элемента влияет на другой элемент. Организации рискуют нанести ущерб своей инфраструктуре и безопасности, не понимая последствий.

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

Отсутствие плана мониторинга дрейфа конфигурации

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

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

Не отслеживать автоматически

Организации могут контролировать дрейф конфигурации несколькими способами. Однако некоторые подходы более совершенны и успешны, чем другие.

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

Автоматический мониторинг — наиболее развитый и эффективный способ поддержания конфигураций в нужном состоянии. Специализированные системы мониторинга конфигурации могут мгновенно обнаруживать дрейф и часто предлагают решения, включая быструю коррекцию. Это гарантирует, что инфраструктура бизнеса будет возвращена в нужное состояние максимально быстро и с минимальными последствиями.

Как контролировать дрейф конфигурации:

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

Знаете, что Вы ищете

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

Это зависит от подразделения и может быть обширным в строго регулируемых отраслях или сосредоточено исключительно на более узких системных файлах / приложениях. Важность системы будет определять частоту и серьезность систем мониторинга.

Установите базовый уровень

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

Ранние этапы тестирования могут быть более подходящими для более высокого допуска на дрейф, чем настройка пользовательского приемочного тестирования или производственный этап нулевого дрейфа.

Контролируйте свою систему

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

Как предотвратить дрейф конфигурации

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

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

Постоянный ручной мониторинг

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

Аудиты

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

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

Аудит гарантирует согласованную и воспроизводимую конфигурацию сервера по заранее определенному расписанию.

Однако до следующей ревизии настройки будут дрейфовать и оставаться все больше и больше.

Автоматизированный мониторинг в реальном времени

Автоматизированный мониторинг в режиме реального времени — наиболее сложный способ поддержания конфигураций в нужном состоянии. Для этого необходимо создать серверы или группы серверов вместе с описанием того, как их следует настроить с помощью инструментов настройки выделенных серверов.

Эти программы будут использовать упрощенный агент для мониторинга конфигурации сервера в этой группе и сравнения ее с ее определением.

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

Заключительные слова:

Несогласованные элементы конфигурации (CI) между компьютерами или устройствами являются основной причиной дрейфа конфигурации. Дрейф конфигурации происходит естественным образом в средах центров обработки данных, когда модификации программного и аппаратного обеспечения выполняются «на лету» без тщательного документирования или отслеживания.

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