По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Всем привет! Недавно одну из наших статей мы посвятили рассказу о Route Patterns. Сегодня мы продолжим рассматривать механизм маршрутизации звонка в Cisco Unified Communications Manager (CUCM), и рассмотрим, что происходит с вызовом после того как он попал под определенный паттерн – а именно про Route List и Route Group. Рассмотрим, как происходит процесс маршрутизации. После набора номера в Route Patterns происходит сверка с заданными паттернами и выбирается подходящий, который указывает на Route List, который указывает на группы Route Group, которые в свою очередь указывают на устройства, шлюзы и транки. Настройка Route Group Для создания группы нужно перейти во вкладку Call Routing → Route/Hunt → Route Group и нажимаем Add New. Тут указываем название группы и в поле Distribution Algorithm выбираем, по какому алгоритму будут распределяться устройства – Top Down или Circular. Сами устройства, транки или шлюзы выбираем в поле Available Devices и для добавления в группу нажимаем кнопку Add to Route Group. После этого добавленное устройство появляется в поле Selected Devices. Для сохранения настроек нажимаем Save. Настройка Route List. Чтобы создать список нужно вкладку Call Routing → Route/Hunt → Route List и нажать Add New. Здесь указываем название, описание и группу (по умолчанию – Default). После нажатия Save внизу появляется поле Route List Member Information, в котором нужно нажать кнопку Add Route Group. В открывшемся окне в строке Route Group выбираем необходимую группу и нажимаем Save. Также в этом окне содержатся настройки трансформации номеров. После этого добавленная группа появится в поле Selected Groups. Затем добавляем остальные группы и сохраняем настройки. Проверить получившийся маршрут можно перейдя во вкладку Call Routing → Route Plan Report. Здесь можно увидеть список паттернов Route Patterns, список Route List на который они указывают, группы Route Groups, которые содержит список и устройства, шлюзы и транки, указанные в группе. Это наглядно показывает в иерархическом порядке структуру маршрутизации.
img
Сериализация – это процесс, в котором одна служба берет структуру данных, такую как словарь в Python, упаковывает ее и передает другой службе для чтения. Это максимально простое определение. Представьте, что мне нужно отправить кому-то сообщение. Итак, я записываю текст на уже собранный пазл. Далее я разбираю части пазла, добавляю несколько инструкций о том, как его собрать, и отправляю его. Затем получатель сообщения, получив кусочки головоломки, собирает их вместе. И теперь у него есть мое сообщение. Техническое определение этого понятия немного интереснее. А именно, сериализация – это процесс преобразования объекта данных в поток байтов и сохранения состояния объекта для хранения на диске или передачи по сети. Это сокращает необходимый размер хранилища и упрощает передачу информации по сети. Маршалинг и сериализация – в чем разница? Здесь на ум может прийти понятие маршалинга (Marshalling). Маршалинг – это процесс преобразования представления объекта в памяти в форму, подходящую для передачи. Хотя маршалинг и сериализация в общих чертах похожи, между ними все-таки есть принципиальная разница. Например, при создании программы в Golang для считывания JSON данных в структуру данных Golang вы можете использовать маршалинг для преобразования пары «ключ-значение» JSON в пару «ключ-значение» Golang. Разница в том, что маршалинг используется для преобразования данных. А сериализация, напротив, отправляет или сохраняет данные в потоке байтов и повторно собирает их в исходную форму. Оба процесса вроде бы выполняют процесс сериализации, но с разными намерениями. Вы можете увидеть структуру, которую я создал для взаимодействия с данными Twitter, ниже, как пример процесса маршалинга в действии. В Golang вы можете вставлять подсказки, называемые тегами, легко преобразовывая этот объект в данные JSON с помощью встроенной службы маршалинга Golang. Что такое Endianness? Я также хотел бы немного затронуть тему порядка следования байтов. Endianness – это термин, который используется для описания порядка байтов в памяти. Представьте, что память – это блок, в котором хранятся биты данных. Чтобы сериализация работала, поток байтов должен передавать типы данных независимо от изменения порядка следования байтов из одной системы в другую. Здесь вы можете увидеть большие различия и не очень. Очень важно, чтобы порядок следования байтов из одной системы в другую совпадал или каким-либо образом преобразовывался, поскольку не все системы упорядочивают свои биты одинаково. Little endian (от младшего к старшему) и big endian (от старшего к младшему) Варианты использования сериализации Наш вариант использования в полной мере использует все функции сериализации. Мы планируем получить некоторую информацию от сканируемого оборудования, упаковать эту информацию в поток байтов и отправить ее по сети в другую службу, которая восстановит данные. Процесс обратной сериализации и восстановления данных в исходную форму называется десериализацией. Есть и другие варианты использования сериализации. Например, REST API или протоколы обмена сообщениями, такие как AMQP, могут использовать сериализацию для сжатия и отправки данных. AMQP – это протокол обмена сообщениями, в котором вы отправляете сообщение брокеру AMQP, а служба-получатель «прослушивает» этого брокера в поисках сообщения. Серверные специалисты должны быть хорошо с этим знакомы, так как это часто используется для отправки данных туда и обратно в распределенных системах. Многие языки программирования включают возможность легкого развертывания некоторой сериализации. Так что это языково-независимая тема. Пример сериализации Приведем краткий пример. Код, приведенный ниже, использует библиотеку kombu для отправки сообщений через AMQP. Мы используем ее для отправки сообщений из одного программного пакета в другой по сети. Данный код предназначен для службы, отправляющей сообщение брокеру AMQP: Обратите внимание на метод publish. Мы передаем метод сериализации в качестве аргумента, чтобы библиотека понимала, как сериализовать данные, которые мы передаем. Сообщение с данными преобразуется в поток байтов, который, если на него посмотреть, выглядит просто как длинная строка букв и цифр. И мы отправляем сообщение. Соответствующая служба будет использовать тот же метод сериализации для восстановления данных в их исходное состояние. Это важная функция, поскольку мы создаем набор инструментов, которые должны иметь возможность отправлять сообщения друг другу, чтобы все работало. Форматы данных сериализации В основном я использую JSON для сериализации, когда этого требует задача. Но тем не менее, вы можете использовать и другие варианты. У JSON много издержек, но для меня он идеален, потому что он читабелен. Вы также можете использовать Protobuf, YAML или XML. Это лишь некоторые из возможных. Заключение Сериализация становится необходимостью, когда вы строите свои каналы связи. Полезно знать о таком понятии, чтобы чувствовать себя уверенно при подходе к любому инструменту, который вы используете, с соответствующими базовыми знаниями.
img
SNMP (Simple Network Management Protocol) – протокол, используемый для управления устройствами в IP – сети. Данный протокол основывается на запросах и соответствующих им ответах. Если коротко, то в устройстве, предназначенном для мониторинга, вся нужная информация хранится в базе данных MIB (Management Information Base), при обращении к переменным которой передаются различные параметры объекта управления. В маршрутизаторах на базе MikroTik реализована поддержка SNMP, поэтому, сегодня мы расскажем, как подключить указанный роутер к системе мониторинга Zabbix 3.2.3 на примере модели RB951Ui-2HnD. Настройка SNMP на MikroTik Первым делом необходимо включить поддержку SNMP на маршрутизаторе MikroTik. Для этого воспользуемся утилитой администратора Winbox и подключимся к роутеру. Переходим во вкладку IP → SNMP и производим следующие настройки: Enabled - отмечаем чекбокс Contact Info - указываем e-mail адрес администратора Location - информация о местонахождении оборудования Trap Community - указываем public Trap Version - здесь мы указываем версию протокола SNMP. Первая версия протокола не поддерживает шифрование и авторизацию, а последующие, вторая и третья поддерживают. Поэтому, выставляем 2 в данном поле. Далее нажимаем Apply. Теперь нажимаем на кнопку Communities и двойным нажатием на public открываем его конфигурацию. Addresses - указываем адрес подсети, с которой разрешим подключаться к Микротику по SNMP Read Access - отмечаем чекбокс Нажимаем Apply и OK, после чего закрываем конфигурацию. Настройка Zabbix Первым делом необходимо добавить шаблон для мониторинга MikroTik в Zabbix. Для этого, переходим во вкладку Configuration → Templates и нажимаем Import Скачать шаблон для мониторинга Микротика в Zabbix вы можете по этой ссылке. После открытия, правой кнопкой мыши нажмите "Сохранить как". Выбираем файл с расширением .xml и загружаем его на сервер. По окончанию процесса будет показано сообщение об успешной загрузке. Теперь добавляем хост мониторинга. Для этого, переходим во вкладку Configuration → Hosts и нажимаем Create host Указываем следующие параметры: Host Name - даем имя для хоста (отображаемое в интерфейса мониторинга Zabbix) Groups - у нас выбрана группа Routers. Если у вас таковой нет, то вы можете сразу создать такую группу, указав ее название в поле New Group, которое выделено зеленым селектором. SNMP Interfaces - указываем IP – адрес нашего MikroTik Там же, переходим во вкладку Templates и выбираем шаблон, импортированный ранее: Сохраняем изменения. Отлично возвращаемся во вкладку Hosts и проверяем новый объект мониторинга: Как видно, статус доступности по протоколу SNMP у нас корректный – соответствующий индикатор выделен зеленым цветом. Спустя некоторое время вы сможете проверять параметры Mikrotik в разделе Monitoring → Latest Data.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59