gx6060
Staff member
- Nov 10, 2019
- 259
- 313
Традиционная конфигурация сети
Сетевые устройства, такие как маршрутизатор, коммутаторы и брандмауэры, традиционно настраиваются сетевым администратором с помощью интерфейса командной строки, как показано на рисунке. Всякий раз, когда есть изменение или новая функция, необходимые команды конфигурации должны быть введены вручную на всех соответствующих устройствах. Во многих случаях это не только отнимает много времени, но также может привести ошибкам. Это становится серьезной проблемой в больших сетях или в сетях со сложными конфигурациями.
Протокол SNMP был разработан, чтобы администраторы могли управлять узлами, такими как серверы, рабочие станции, маршрутизаторы, коммутаторы и устройства информационной безопасности, в сети IP. Используя станцию управления сетью (NMS). SNMP позволяет сетевым администраторам отслеживать и управлять производительностью сети, находить и решать сетевые проблемы, а также выполнять запросы для получения статистики. SNMP работает достаточно хорошо для мониторинга устройств. Тем не менее, он обычно не используется для конфигурации из-за проблем безопасности и сложности в реализации. Хотя SNMP широко доступен, он не может служить инструментом автоматизации для современных сетей.
Вместо того чтобы администратор сети вручную настраивал порты, списки доступа, качество обслуживания (QoS) и политики балансировки нагрузки, они могут использовать инструменты для автоматизации конфигураций. Эти инструменты подключаются к сетевым API-интерфейсам для автоматизации рутинных задач обеспечения сети, позволяя администратору выбирать и развертывать необходимые им сетевые службы. Это может значительно сократить количество повторяющихся и обыденных задач, чтобы освободить время сетевых администраторов для работы над более важными вещами.
Автоматизация сети
Для операторов сети существуют новые различные методы для автоматического мониторинга, управления и настройки сети. Как показано на рисунке, к ним относятся такие протоколы и технологии, как REST, Ansible, Puppet, Chef, Python, JSON, XML и другие.
Инструменты управления конфигурацией
Инструменты управления конфигурацией используют запросы API RESTful для автоматизации задач и могут масштабироваться на тысячи устройств. Инструменты управления конфигурацией поддерживают согласованность характеристик системы или сети. Вот некоторые характеристики сети, которые администраторы могут автоматизировать:
- Программное обеспечение и контроль версий
- Атрибуты устройства, такие как имена, адресация и безопасность
- Конфигурации протокола
- Настройки ACL-списков
Существует несколько инструментов, облегчающих управление конфигурацией:
- Ansible
- Chef
- Puppet
- Saltstack
Compare Ansible, Chef, Puppet, и SaltStack
Ansible, Chef, Puppet и SaltStack поставляются с документацией по API для настройки запросов RESTful API. Все они поддерживают JSON и YAML, а также другие форматы данных. В следующей таблице приведено краткое изложение основных характеристик инструментов управления конфигурациями Ansible, Puppet, Chef и SaltStack.
Характеристика | Ansible | Chef | Puppet | Saltstack |
---|---|---|---|---|
Что такое язык программирования? | Python + YAML | Ruby | Ruby | Python |
На основе агента или без использования агентов? | Без использования агентов | На уровне агента | Поддерживает оба | Поддерживает оба |
Как управляются устройства? | Любое устройство может быть “контроллером” | Chef мастер | Puppet мастер | Salt мастер |
Что создано инструментом? | Playbook (сборник сценариев) | Cookbook (сборник рецептов) | Manifest (манифест) | Pillar (базовый компонент) |
- Что такое язык программирования? - Ansible и SaltStack построены на Python, а Puppet и Chef - на Ruby. Как и Python, Ruby является кроссплатформенным языком программирования с открытым исходным кодом. Тем не менее, Ruby обычно считается более сложным языком для изучения, чем Python.
- На основе агента или без использования агентов? - Управление конфигурацией осуществляется на основе агентов или без агентов. Управление конфигурацией на основе агента - использование метода извлечения («pull-based»), он означает, что агент на управляемом устройстве периодически соединяется с ведущим устройством для получения информации о конфигурации. Изменения вначале выполняются на главном устройстве и затем разворачиваются и выполняются остальными устройствами. Безагентное управление конфигурацией на основе push («push-based»). Скрипт конфигурации запускается на главном устройстве - мастере. Мастер подключается к устройству и выполняет задачи в скрипте. Из четырех инструментов конфигурации в таблице только Ansible не имеет агентов.
- Как управляются устройства? - Это относится к устройству под названием Мастер в Puppet, Chef и SaltStack. Однако, поскольку Ansible не имеет агентов, контроллером может быть любой компьютер.
- Что создано инструментом? - Сетевые администраторы используют инструменты управления конфигурацией для создания набора инструкций для выполнения. Каждый инструмент имеет собственное название для этих инструкций: Playbook (сборник сценариев), Cookbook (сборник рецептов), Manifest (манифест) и Pillar (базовый компонент). Общим для каждого из них является спецификация политики или конфигурации, которая должна применяться к устройствам. У каждого типа устройства может быть своя собственная политика. Например, все серверы Linux могут иметь одинаковую базовую конфигурацию и политику безопасности.
Last edited by a moderator: