21
Автоматизация мониторинга распределенной сети подразделений Самосват Николай

Автоматизация мониторинга распределенной сети подразделений

Embed Size (px)

Citation preview

Page 1: Автоматизация мониторинга распределенной сети подразделений

Автоматизация мониторингараспределенной сети подразделений

Самосват Николай

Page 2: Автоматизация мониторинга распределенной сети подразделений

О компании «Магнит»• Сеть магазинов «Магнит» - ведущая розничная сеть по торговле

продуктами питания в России

• Магазины розничной сети «Магнит» расположены в 2 361 населенном пункте Российской Федерации.

• Зона покрытия магазинов растянулась от Пскова до Нижневартовска, и от Архангельска до Владикавказа.

Page 3: Автоматизация мониторинга распределенной сети подразделений

Филиалы80 подразделений1 000 хостов

Головной офис3 ЦОДа2 000 хостов

Распред. центры40 подразделений4 000 хостов

Гипермаркеты380 подразделений 40 000 хостов

Магазины15 000 подразделений300 000 хостов

Экземпляры

Page 4: Автоматизация мониторинга распределенной сети подразделений

Архитектура системы мониторингаZ-Server + Z-DB:IBM x3650 M4

Page 5: Автоматизация мониторинга распределенной сети подразделений

Мониторинг ГипермаркетовZabbix• Proxy – 380• Hosts – 40 000• Items – 560 000• Triggers – 200 000• Users – 1 000• NVPS – 2 400

ЗадачаИсключить рутинные операции:• Добавление новых подразделений• Настройка мониторинга хостов • Управление получателями оповещений

Page 6: Автоматизация мониторинга распределенной сети подразделений

APIСкрипты автоматизации 4 php scriptscron – every 2h

Общая схема - Источники данныхVPN CONTROLУправление каналами связи подразделений

ACTIVE DIRECTORYАтрибуты подразделений, хостов, пользователей

HOSTS.CSVМатрицанастройки хостовна подразделениях

HELP DESKУправление специалистами тех. поддержки

Page 7: Автоматизация мониторинга распределенной сети подразделений

Скрипт UNITSОбщая схема – Создание объектов

Скрипт HOSTSСкрипт USERS

Скрипт VHOSTS

ProxyDiscoveryGroupsVisible nameTemplatesinterfacesName & AliasMedia TypesGroupsHostTemplatesMacros

Page 8: Автоматизация мониторинга распределенной сети подразделений

Скрипт

1 -UN

ITS

Создание записей о подразделенииЗапрос списка подразделений

Список кодов [CODE]подразделений

VPN CONTROL- Код подразделения- Список провайдеров- Состояние VPNСоздание / обновление

- Zabbix Proxy

- Host group- Discovery rule

Поиск OU содержащего[CODE] в имени

Атрибуты подразделения

ACTIVE DIRECTORY- Имя подразделения- Сеть подразделения- Часы работы

- User group- Maintenance period

Page 9: Автоматизация мониторинга распределенной сети подразделений

Результат работы скрипта UNITSПри появлении в сети компании нового подразделения ГМ Простоквашино с кодом 992233• Запись о zabbix-proxy с именем [CODE]: 992233• Правило обнаружение: 992233 (ГМ Простоквашино)Подсеть: 10.1.1.0/23Работа через прокси: 992233

• Создан период обслуживания: 992233 (ГМ Простоквашино)Интервал: с 23 до 23:30Для группы хостов: 992233 (ГМ Простоквашино)

• Группа хостов c именем [CODE]([Name]): 992233 (ГМ Простоквашино)• Группа пользователей с именем «Получатели [CODE]([Name])»Получатели 992233 (ГМ Простоквашино)

Page 10: Автоматизация мониторинга распределенной сети подразделений

Тем временем на подразделении

1. Тех. поддержкой развернут сервер, с предустановленным Zabbix-Proxy2. Автоматически настраивается Zabbix-Proxy

echo Hostname=[CODE] >> /etc/zabbix/zabbix_proxy.confsystemctl restart zabbix-proxy

3. Начинается сетевое обнаружение хостов3. Все обнаруженные хосты добавляются в состоянии «Деактивирован»

Page 11: Автоматизация мониторинга распределенной сети подразделений

Результат работы сетевого обнаруженияОбнаруженные хосты имеют:1. Неюзабельное имя = [system.hostname] или [IP]BKP99223310.2.3.42. Деактивированное состояние3. Включены только в группу Discovered hosts4. Отсутствуют метрики и триггеры

Page 12: Автоматизация мониторинга распределенной сети подразделений

APIСкрипты автоматизации 4 php scriptscron – every 2h

Источники данных – HOSTS.CSVVPN CONTROLУправление каналами связи подразделений

ACTIVE DIRECTORYАтрибуты подразделений, хостов, пользователей

HOSTS.CSVМатрицанастройки хостовна подразделениях

HELP DESKУправление специалистами тех. поддержки

Page 13: Автоматизация мониторинга распределенной сети подразделений

Матрица хостов (HOSTS.CSV)

IPADDR IPMI SNMP PREFIX GROUP TEMPLATExxx.xxx.xxx.1 0 0 Terminal Серверы - Terminal TMPL_TERMxxx.xxx.xxx.2 1 1 Backup Серверы - Backup TMPL_BACKUP… … … ... ... ...xxx.xxx.xxx.130 0 1 Wi-Fi Оборудование - Сеть TMPL_WIFI... ... ... ... ... ...xxx.xxx.xxx.210 0 0 ПК Рабочие станции TMPL_WS

• Инфраструктура всех подразделений стандартизирована.• Сервера и оборудование на подразделении настроено согласно стандарта IP-адресов.

Page 14: Автоматизация мониторинга распределенной сети подразделений

Обработка хостов после обнаружения

Формируем массив с данными матрицы хостов

Поиск OU содержащего подсеть в атрибутах

Получение атрибутов

HOSTS.CSV- 4-й октет IP-адреса- Интерфейсы- Префикс- Группа- Шаблон

ACTIVE DIRECTORY- Имя подразделения- Код подразделенияСкр

ипт 2 -

HOSTS

- Видимое имя хоста

- Добавление интерфейсов- Добавление в группы

Получение 2 списковхостов с их IP-адресами

Запрос списков хостовгрупп «Discovered hosts»и «Обработано»

Обновление хостов:

- Назначение шаблонов

Читаем файл

Page 15: Автоматизация мониторинга распределенной сети подразделений

Результат работы скрипта HOSTSВсе обработанные хосты имеют:1. Видимое имя [PREFIX] [CODE] [NAME] Backup 992233 (ГМ Простоквашино)2. Дополнительные интерфейсы SNMP IPMI JMX, по необходимости

4. Включены в группы: - по территориальному признаку: 992233 (ГМ Простоквашино)- по функциональному признаку: Серверы – BACKUP- служебную Обработано5. Назначенные шаблоны:TMPL_BACKUP

3. Активированное состояние

Page 16: Автоматизация мониторинга распределенной сети подразделений

Управление пользователями

Поиск объекта c нужнымemail в атрибутах

Логин и ФИО пользов.

HELP DESK- Email- Телефон- Должность- Подразделение

ACTIVE DIRECTORY- sAMAccountName- Ф.И.О.Скр

ипт 3 -

USERS

- УЗ пользователя- Добавление в группы- Медиатипы

Список групппользователей«Получатели [CODE]»

Запрос списка групппользователей«Получатели [CODE]»

Создание / обновление

Запрос пользователейпринадлежащих подразделению [CODE]

Список пользователейподразделения CODEс атрибутами

Page 17: Автоматизация мониторинга распределенной сети подразделений

Результат работы скрипта USERS

• Пользователи могут логиниться в Zabbix под доменной УЗ• Пользователям назначены актуальные медиатипы (sms+email)• Пользователи включены в различные группы: - по территориальному признаку: Получатели 992233 (ГМ Простоквашино)- по должностям: СистемотехникиНачальники отделовРегиональные руководители

• В Zabbix присутствуют все пользователи технической поддержки ГМ (около 1 тыс)

Page 18: Автоматизация мониторинга распределенной сети подразделений

Скрипт

-VHO

STS

Виртуальные хостыЗапрос данных о провайдерах

Код подразделенияИмена провайдеров

VPN CONTROL- Код подразделения- Список провайдеров:ИмяНомер канала

Создание/обновление

- Назначение шаблонов- Макросы хоста с именамипровайдеров

Поиск OU содержащего[CODE] в имениИмя подразделения

ACTIVE DIRECTORY- Имя подразделения- Код подразделения

- Включение в группы

Запрос списка хостовпо маске providers*

Получение списка хостов

- Видимое имя

Page 19: Автоматизация мониторинга распределенной сети подразделений

Результат работы скрипта VHOSTSВсе обработанные хосты имеют:• Видимое имя на основе Провайдеры [CODE] [NAME] Провайдеры 992233 (ГМ Простоквашино)• Актуальные имена провайдеров, задаваемые через макросы хоста{$PROV-1} = SkyNet{$PROV-2} = Virgin

• Включены в группы: - по территориальному признаку: 992233 (ГМ Простоквашино)- по функциональному признаку: Оборудование – Провайдеры

• Назначенные шаблоны:TMPL_PROV-1TMPL_PROV-2

Page 20: Автоматизация мониторинга распределенной сети подразделений

ИТОГОВЫЙ РЕЗУЛЬТАТПолностью автоматически:• Создаются «подразделения» в Zabbix• Настраиваются хосты на подразделениях (как реальные так и виртуальные)• Создаются пользователи, получающие уведомления по подразделениям

Требуется ручная работа:• Создание или корректировка шаблонов• Корректировка матрицы хостов (hosts.csv)

Page 21: Автоматизация мониторинга распределенной сети подразделений

Спасибо !Вопросы ?

Самосват Николай[email protected]