По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В последнее время DevOps является одним из самых громких словечек в мире технологий, поскольку предлагает организации огромное количество преимуществ для сокращения жизненного цикла разработки программного обеспечения. Что такое DevOps? Нет единого определения или правильного ответа на вопрос «Что такое DevOps». DevOps (акроним от англ. development и operations) не является инструментом, технологией или какой-либо структурой; это больше философия и концепция. Это набор практик, сочетающий разработку программного обеспечения (Dev) и ИТ-операции (Ops), который помогает сократить жизненный цикл разработки системы и обеспечить непрерывную интеграцию и поставку с высоким качеством программного обеспечения. Подробно про DevOps можно прочитать в нашей статье ”DevOps – это философия будущего: кто, что и как?” и в нашем разделе про него. Преимущества DevOps Улучшенное сотрудничество и общение Ускоренная доставка программного обеспечения или продуктов Постоянное снижение затрат Улучшенный процесс Ускоренное решение проблем В мире DevOps нет ни одного волшебного инструмента, который бы соответствовал всем потребностям. Речь идет о выборе правильного инструмента, который соответствует потребностям организации. Давайте узнаем о них. Что такое DevOps, что нужно знать и сколько получают DevOps - специалисты? Инструменты DevOps Планирование и сотрудничество JIRA JIRA - это один из популярных инструментов управления проектами, разработанный Atlassian, который используется для отслеживания проблем, ошибок и проектов. Это позволяет пользователю отслеживать проект и выпускать статус. Его можно легко интегрировать с другими продуктами Atlassian, такими как Bitbucket, в дополнение к другим инструментам DevOps, таким как Jenkins. Slack Slack - это бесплатный инструмент для совместной работы на основе облака, для групповой коммуникации и совместной работе в одном месте. Этот инструмент также можно использовать для обмена документами и другой информацией среди членов команды. Это также может быть легко интегрировано с другими инструментами, такими как GIT, Jenkins, JIRA и так далее. А еще Slack можно интегрировать с Asterisk Zoom Zoom - это платформа для веб-конференций и мгновенного обмена экранами. Вы можете общаться со своей командой через аудио или видео. Неважно, насколько велика ваша команда, Zoom способен принять до 1000 получателей на онлайн-встречу. Clarizen Clarizen - это программное обеспечение для совместной работы и управления проектами, которое помогает отслеживать проблемы, управлять задачами и управлять портфелем проектов. Clarizen легко настроить, и он имеет удобный интерактивный интерфейс пользователя. Asana Asana - это мобильное и веб-приложение, которое помогает командам эффективно и результативно организовывать, отслеживать и управлять своей работой. Он используется для отслеживания ежедневных командных задач и поддержки обмена сообщениями и общения в организации. Управление исходным кодом SVN SVN - это централизованный инструмент контроля версий и исходного кода, разработанный Apache. SVN помогает разработчикам поддерживать разные версии исходного кода и вести полную историю всех изменений. Git Git - это распределенная система контроля версий, которая нацелена на скорость, целостность данных, поддержку распределенных, нелинейных рабочих процессов. Помимо управления исходным кодом, его также можно использовать для отслеживания изменений в любом наборе файлов. Подробнее про Git Bitbucket Bitbucket - это веб-хостинговая платформа, разработанная Atlassian. Bitbucket также предлагает эффективную систему проверки кода и отслеживает все изменения в коде. Его можно легко интегрировать с другими инструментами DevOps, такими как Jenkins, Bamboo. GitHub GitHub - это платформа для размещения кода, предназначенная для контроля версий и совместной работы. Он предлагает все функции распределенного контроля версий и управления исходным кодом (SCM) в Git в дополнение к своим функциям. GitHub предлагает функции контроля доступа и совместной работы, такие как отслеживание ошибок, создание функций и запросов, управление задачами и так далее. Инструменты для сборки Ant Apache Ant - это инструмент для сборки и развертывания на основе Java с открытым исходным кодом. Он поддерживает формат файла XML. Он имеет несколько встроенных задач, позволяющих нам компилировать, собирать, тестировать и запускать приложения Java. Maven Maven - это инструмент для автоматизации сборки, который в основном используется для Java-проектов. Он содержит файл XML, в котором описывается создаваемый программный проект, его зависимости от других внешних компонентов и модулей, последовательность сборки, каталоги и другие необходимые подключаемые модули. Подробно про Maven Grunt Grunt - это инструмент командной строки Javascript, который помогает создавать приложения и помогает разработчикам автоматизировать повторяющиеся задачи, такие как компиляция, модульное тестирование, кодирование кода, проверка и так далее. Это хорошая альтернатива для таких инструментов, как Make или Ant. Gradle Gradle - это система автоматизации сборки с открытым исходным кодом, основанная на концепциях Apache Maven и Apache Ant. Он поддерживает Groovy правильный язык программирования вместо XML-файла конфигурации. Он предлагает поддержку добавочных сборок, автоматически определяя, какие части сборки обновлены. Управление конфигурацией Puppet Puppet - это инструмент управления конфигурацией с открытым исходным кодом, используемый для настройки, развертывания и управления многочисленными серверами. Этот инструмент поддерживает концепцию инфраструктуры как кода и написан на Ruby DSL. Он также поддерживает динамическое масштабирование машин по мере необходимости. Подробно про Puppet, его плюсы и минусы и примеры использования Chef Chef - это инструмент управления конфигурацией с открытым исходным кодом, разработанный Opscode с использованием Ruby для управления инфраструктурой на виртуальных или физических машинах. Он также помогает в управлении сложной инфраструктурой на виртуальных, физических и облачных машинах. Подробно про Chef и его плюсы и минусы Ansible Ansible - это инструмент для управления ИТ-конфигурацией с открытым исходным кодом, обеспечения программного обеспечения, оркестровки и развертывания приложений. Это простой, но мощный инструмент для автоматизации простых и сложных многоуровневых ИТ-приложений. Подробно про Ansible и его плюсы и минусы SaltStack SaltStack - это программное обеспечение с открытым исходным кодом, написанное на python и использующее push-модель для выполнения команд по протоколу SSH. Он предлагает поддержку как горизонтального, так и вертикального масштабирования. Он поддерживает шаблоны YAML для записи любых скриптов. Terraform Terraform - это инструмент с открытым исходным кодом для безопасного, эффективного построения, изменения, развертывания и управления версиями инфраструктуры. Он используется для управления существующими и популярными поставщиками услуг, а также для создания собственных решений. Это помогает в определении инфраструктуры в конфиге или коде и позволит пользователю легко перестраивать или изменять и отслеживать изменения в инфраструктуре. Vagrant Vagrant является одним из популярных инструментов для создания и управления виртуальными машинами (VM). Он имеет простой в использовании и настраиваемый рабочий процесс, ориентированный на автоматизацию. Это помогает сократить время настройки среды разработки, увеличивает производственный паритет. Подробно про Vagrant Непрерывная интеграция Jenkins Jenkins является одним из самых популярных инструментов DevOps с открытым исходным кодом для поддержки непрерывной интеграции и доставки через DevOps. Это позволяет осуществлять непрерывную интеграцию и непрерывную доставку проектов независимо от того, над чем работают пользователи платформы, с помощью различных конвейеров сборки и развертывания. Jenkins можно интегрировать с несколькими инструментами тестирования и развертывания. Подробно про Jenkins Travis CI Travis CI - это облачная распределенная платформа непрерывной интеграции, используемая для создания и тестирования проектов, размещенных на GitHub и Bitbucket. Это настраивается путем добавления файла YAML. Его можно протестировать бесплатно для проектов с открытым исходным кодом и на платной основе для частного проекта. Bamboo Bamboo является одним из популярных продуктов, разработанных Atlassian для поддержки непрерывной непрерывной интеграции. Его большая часть функциональности предварительно встроена, что означает, что нам не нужно загружать различные плагины, такие как Jenkins. Он также поддерживает плавную интеграцию с другими продуктами Atlassian, такими как JIRA и Bitbucket. Hudson Hudson - это свободное программное обеспечение, написанное на JAVA и работающее в контейнере сервлетов, например, GlassFish и Apache Tomcat. Он обеспечивает возможность запуска вашего пакета автоматизации с любыми изменениями в соответствующей системе управления исходными кодами, такими как GIT, SVN и так далее. Он также обеспечивает поддержку всех базовых проектов maven и Java. TeamCity TeamCity - это непрерывная интеграция на основе сервера, которая создает инструмент управления, разработанный JetBrains. Он имеет простой и удобный пользовательский интерфейс (UI) и обеспечивает прогресс сборки, детализирует информацию о сборке и хронологическую информацию для всех конфигураций и проектов. CircleCI CircleCI доступен как в виде облачных, так и локальных решений для непрерывной интеграции. Запускать и поддерживать легковесные и легкочитаемые конфигурации YAML просто и быстро. Непрерывная безопасность Snyk Интегрируйте Snyk в жизненный цикл разработки, чтобы автоматически находить и исправлять уязвимости безопасности с открытым исходным кодом. Он поддерживает JS, .Net, PHP, NPM, jQuery, Python, Java и так далее, и может быть интегрирован в кодирование, управление кодом, CI/CI, контейнер и развертывание. Snyk имеет самую большую базу уязвимостей с открытым исходным кодом Netsparker Netsparker автоматически сканирует ваше приложение на наличие уязвимостей и предоставляет действенные секретные отчеты, чтобы вы могли действовать в соответствии с приоритетом. Сценарий безопасности DevOps заключается в проверке нового коммита и сообщении об ошибке непосредственно в систему отслеживания, например, Jira или GitHub, и повторном сканировании после исправления разработчиком. Вы видите, что это интегрируется на каждом этапе SDLC (Software Development Life Cycle - жизненный цикл разработки). Тестирование Selenium Selenium - самый популярный инструмент для тестирования с открытым исходным кодом. Он поддерживает автоматизацию тестирования в различных браузерах и операционных системах. Его легко интегрировать с инструментами управления тестированием, такими как ALM, JIRA, а также с другими инструментами DevOps, такими как Jenkins, Teamcity, Bamboo и так далее. TestNG TestNG - это среда тестирования с открытым исходным кодом, разработанная и вдохновленная Junit и Nunit. Ее можно легко интегрировать с веб-драйвером selenium для настройки и запуска сценариев автоматизации тестирования. Она также генерирует различные отчеты о тестировании, такие как HTML или XSLT. JUnit JUnit - это инфраструктура модульного тестирования с открытым исходным кодом, используемая разработчиками для написания и запуска повторяющихся тестов. JUnit поддерживает различные аннотации тестов, с помощью которых любой разработчик может написать цельный тестовый блок. Его легко интегрировать с другими инструментами DevOps, такими как Jenkins, GIT и так далее. Мониторинг Nagios Nagios - это открытый исходный код и один из самых популярных инструментов для непрерывного мониторинга. Nagios помогает отслеживать системы, приложения, услуги и бизнес-процессы в культуре DevOps. Он предупреждает пользователей, когда что-то не так с инфраструктурой, и предупреждает их, когда проблема решена. Подробно про Nagios Grafana Grafana - это аналитическая платформа с открытым исходным кодом, позволяющая отслеживать все показатели инфраструктуры, приложений и аппаратных устройств. Вы можете визуализировать данные, создавать и совместно использовать панель инструментов, настраивать оповещения. Вы можете получать данные из более чем 30 источников, включая Prometheus, InfluxDB, Elasticsearch, AWS CloudWatch и так далее. Sensu Sensu - это инструмент для мониторинга с открытым исходным кодом, написанный на Ruby, который помогает просто и эффективно контролировать серверы, сервисы, приложения, облачную инфраструктуру. Его легко масштабировать, чтобы вы могли легко отслеживать тысячи серверов. New Relic New Relic - это программный аналитический продукт для мониторинга производительности приложений (APM - Application Performance Monitoring), который предоставляет в реальном времени трендовые данные о производительности веб-приложений и уровне удовлетворенности, которое испытывают конечные пользователи. Он поддерживает сквозную трассировку транзакций и отображает их с помощью различных цветовых диаграмм, графиков и отчетов. Datadog Datadog - это инструментальный инструмент метрики сервера. Он поддерживает интеграцию с различными веб-серверами, приложениями и облачными серверами. Его сервисная панель предоставляет различные графики мониторинга в реальном времени по всей инфраструктуре. ELK ELK - это коллекция из трех продуктов с открытым исходным кодом - Elasticsearch, Logstash и Kibana, которые разрабатываются, управляются и поддерживаются компанией Elastic. Он позволяет пользователям получать данные из любого источника в любом формате, а затем искать, анализировать и визуализировать эти данные в режиме реального времени. Облачный хостинг AWS AWS - это веб-хостинговая платформа, созданная Amazon, которая предлагает гибкие, надежные, масштабируемые, простые в использовании, масштабируемые и экономически эффективные решения. Используя эту облачную платформу, нам не нужно беспокоиться о настройке ИТ-инфраструктуры, которая обычно занимает достаточно много времени. Azure Azure - это платформа облачных вычислений, разработанная Microsoft для создания, развертывания, тестирования и управления приложениями и службами через глобальную сеть своих центров обработки данных. Службы, предоставляемые Microsoft Azure, представлены в форме PaaS (платформа как услуга) и IaaS (инфраструктура как услуга). GCP Google Cloud - это полный набор услуг облачного хостинга и вычислений, предлагаемых Google. Он поддерживает широкий спектр услуг для вычислений, хранения и разработки приложений, которые используют Google Hardware. Контейнеры и оркестровка Docker Docker - это инструмент для создания, развертывания и запуска приложений с использованием контейнеров. Этот контейнер позволяет разработчику упаковывать приложение со всеми необходимыми ему компонентами и подкомпонентами, такими как библиотеки и другие зависимости, и отправлять все это в виде одного пакета. Подробно про Docker, Docker Compose и Docker Swarm Kubernetes Kubernetes - это система контейнерной оркестрации с открытым исходным кодом, изначально разработанная Google, и в настоящее время она поддерживается Cloud Native Computing Foundation. Он используется для автоматизации развертывания, масштабирования и управления приложениями. Он работает с другими инструментами-контейнерами, включая Docker. Подробно про Kubernetes и сравнение Kubernetes c Docker
img
Всем привет! Сегодня в статье мы хотим вам рассказать про то как зарегистрировать телефоны Cisco серии 78хх на IP-АТС Asterisk. Рассматривать настройку мы будем на примере телефона Cisco 7811, самого простого из этой серии, отличающегося от других тем что, имеет только одну линию. Если вам интересно как настроить телефон для работы с оригинальными АТС от Cisco, то тут вы можете прочитать про CUCM, а тут про CME. Процесс загрузки телефона Телефоны Cisco 78хх поддерживают протокол SIP, в отличие от старых моделей, которые работали по проприетарному протоколу SCCP, и это облегчит нам настройку. Когда телефон Cisco загружается он выполняет следующие действия: Телефон получает питание c помощью блока питания или при помощи PoE; Телефон загружает ПО, которое хранится локально в его памяти; Телефон узнает голосовой VLAN ID при помощи CDP; Телефон использует DHCP чтобы узнать свой IP адрес, маску подсети, шлюз и адрес TFTP сервера; Телефон связывается с TFTP сервером и запрашивает конфигурационный файл. (У каждого телефона есть конфигурационный файл, который имеет вид SEP<мак_адрес>.cnf.xml); Телефон регистрируется на АТС CUCM, который указан в конфигурационном файле; А нам, поскольку у нас Asterisk вместо CUCM, нужно изменить конфигурационный файл, который находится на TFTP и в нем указать адрес нашей АТС, его номер и прочие параметры. Начнем по порядку. Настройка DHCP и TFTP Прежде всего нам нужно настроить DHCP сервер который будет выдавать адрес телефона и сообщать ему о TFTP сервере, а также соответственно сам TFTP сервер, на котором будут лежать все необходимые файлы. Если вы используете в качестве DHCP сервера оборудование Cisco то прочитать про то как создать на нем DHCP сервер можно здесь, а если вы используете оборудование Mikrotik то здесь. Основной момент – телефоны Cisco получают информацию о TFTP сервере при помощи параметра Option 150, и именно его нужно настроить и в нем указать адрес TFTP сервера, с которым должен связаться телефон чтобы забрать необходимые файлы. Для Cisco нужно использовать следующую команду в настройках DHCP: option 150 ip 192.168.1.20 Для Mikrotik нужно в WinBox перейти в меню IP - DHCP Server – Options и нажать “+”. Тут необходимо указать в поле Code значение 150, а в поле Value – адрес сервера. А затем в разделе Networks в поле DHCP Options указать созданную нами опцию. В нашем примере мы будем использовать бесплатную программу Tftpd64, которая может выступать в качестве DHCP и TFTP сервера, а также может показывать логи, что очень удобно для траблшутинга. В меню настроек во вкладке DHCP можно настроить все нужные параметры, в том числе и необходимую нам опцию 150. Во вкладке TFTP указываем необходимые параметры, такие как адрес директории где будут находится файлы. Если ваше оборудование не поддерживает Option 150 или вы не хотите заморачиваться с этим, то адрес TFTP сервера можно прописать на самом телефоне в разделе Настройки – Параметры администратора – Настройка сети – Настройка IPv4 и тут в пункте Дополнительный TFTP сервер установить значение “Да”, а ниже в поле TFTP-сервер вручную прописать нужный адрес. Создание экстеншена на Asterisk Создадим новый номер на нашей АТС при помощи графического интерфейса FreePBX. Для этого переходим в меню Applications – Extensions, нажимаем Add Extension и выбираем Add New PJSIP Extension. Да мы будем использовать PJSIP, поскольку телефон будет слать пакеты на стандартный порт 5060, который в Asterisk использует PJSIP. Этого будет достаточно, сохраняем и применяем конфиг. Создание необходимых файлов При загрузке телефона он будет пытаться скачать файл конфигурации и обновить свою прошивку. После того как мы подняли наш TFTP сервер нам нужно залить на него все файлы, которые будут необходимы телефону. Для начала нужно скачать файл прошивки для нашего телефона, потому что телефон будет всегда запрашивать его при загрузке. Скачать его можно с официального сайта Cisco, предварительно зарегистрировавшись там. Оттуда же нам нужно скачать файл с локалью. Далее идет самое важное – файл конфигурации телефона. Нам нужно создать XML файл, который должен называться SEP<mac_адрес_телефона>.cnf.xml. Например, SEPA1B2C3D4E5F6.cnf.xml Для создания этого файла лучше всего использовать специальный XML-редактор (например, EditiX), чтобы не было проблем с валидацией. Его содержание должно быть таким: <?xml version="1.0" encoding="UTF-8" <device> <versionStamp>{7821 Aug 28 2015 12:40:48}</versionStamp> <devicePool> <dateTimeSetting> <dateTemplate>D.M.Y</dateTemplate> <timeZone>E. Europe Standard/Daylight Time</timeZone> <ntps> <ntp> <name>time.windows.com</name> <ntpMode>Unicast</ntpMode> </ntp> </ntps> </dateTimeSetting> <callManagerGroup> <members> <member priority="0"> <callManager> <ports> <ethernetPhonePort>2000</ethernetPhonePort> </ports> <processNodeName>192.168.1.17</processNodeName> </callManager> </member> </members> </callManagerGroup> </devicePool> <commonProfile> <callLogBlfEnabled>3</callLogBlfEnabled> </commonProfile> <loadInformation>sip78xx.12-5-1-16</loadInformation> <userLocale> <name>Russian_Russia</name> <uid/> <langCode>ru_RU</langCode> <version/> <winCharSet>utf-8</winCharSet> </userLocale> <networkLocale>United_States</networkLocale> <networkLocaleInfo> <name>Russian_Russia</name> </networkLocaleInfo> <idleTimeout>0</idleTimeout> <authenticationURL/> <directoryURL/> <idleURL/> <informationURL/> <messagesURL/> <proxyServerURL/> <servicesURL/> <capfAuthMode>0</capfAuthMode> <capfList> <capf> <phonePort>5060</phonePort> <processNodeName/> </capf> </capfList> <deviceSecurityMode>1</deviceSecurityMode> <sipProfile> <sipCallFeatures> <cnfJoinEnabled>true</cnfJoinEnabled> <callForwardURI>x--serviceuri-cfwdall</callForwardURI> <callPickupURI>x-cisco-serviceuri-pickup</callPickupURI> <callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI> <callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI> <meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI> <abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI> <rfc2543Hold>true</rfc2543Hold> <callHoldRingback>2</callHoldRingback> <localCfwdEnable>true</localCfwdEnable> <semiAttendedTransfer>true</semiAttendedTransfer> <anonymousCallBlock>2</anonymousCallBlock> <callerIdBlocking>0</callerIdBlocking> <dndControl>0</dndControl> <remoteCcEnable>true</remoteCcEnable> </sipCallFeatures> <sipStack> <sipInviteRetx>6</sipInviteRetx> <sipRetx>10</sipRetx> <timerInviteExpires>180</timerInviteExpires> <timerRegisterExpires>120</timerRegisterExpires> <timerRegisterDelta>5</timerRegisterDelta> <timerKeepAliveExpires>120</timerKeepAliveExpires> <timerSubscribeExpires>120</timerSubscribeExpires> <timerSubscribeDelta>5</timerSubscribeDelta> <timerT1>500</timerT1> <timerT2>4000</timerT2> <maxRedirects>70</maxRedirects> <remotePartyID>false</remotePartyID> <userInfo>None</userInfo> </sipStack> <autoAnswerTimer>1</autoAnswerTimer> <autoAnswerAltBehavior>false</autoAnswerAltBehavior> <autoAnswerOverride>true</autoAnswerOverride> <transferOnhookEnabled>true</transferOnhookEnabled> <enableVad>false</enableVad> <preferredCodec>g729</preferredCodec> <dtmfAvtPayload>101</dtmfAvtPayload> <dtmfDbLevel>3</dtmfDbLevel> <dtmfOutofBand>avt</dtmfOutofBand> <alwaysUsePrimeLine>false</alwaysUsePrimeLine> <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail> <kpml>3</kpml> <stutterMsgWaiting>1</stutterMsgWaiting> <callStats>false</callStats> <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts> <disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig> <startMediaPort>16384</startMediaPort> <stopMediaPort>16399</stopMediaPort> <voipControlPort>5069</voipControlPort> <dscpForAudio>184</dscpForAudio> <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy> <dialTemplate>dialplan.xml</dialTemplate> <phoneLabel>Office</phoneLabel> <sipLines> <line button="1"> <featureID>9</featureID> <featureLabel>Merion Networks</featureLabel> <name>200</name> <displayName>Cisco</displayName> <contact>200</contact> <proxy>192.168.1.17</proxy> <port>5060</port> <autoAnswer> <autoAnswerEnabled>2</autoAnswerEnabled> </autoAnswer> <callWaiting>3</callWaiting> <authName>200</authName> <authPassword>qwe123</authPassword> <sharedLine>false</sharedLine> <messageWaitingLampPolicy>1</messageWaitingLampPolicy> <messagesNumber>121</messagesNumber> <ringSettingIdle>4</ringSettingIdle> <ringSettingActive>5</ringSettingActive> <forwardCallInfoDisplay> <callerName>true</callerName> <callerNumber>false</callerNumber> <redirectedNumber>false</redirectedNumber> <dialedNumber>true</dialedNumber> </forwardCallInfoDisplay> </line> </sipLines> </sipProfile> </device> Что нас здесь интересует и что нужно изменить: <timeZone> - E. Europe Standard/Daylight Time - в нашем примере мы используем временную зону, которая подходит для Москвы UTC+3. <processNodeName> – адрес нашего Asterisk <loadInformation> – имя файла прошивки (который с расширением .loads) <userLocale><name> и <networkLocaleInfo> - Russian_Russia – папка с локалью <phonePort> - 5060 – номер SIP порта <voipControlPort> - номер порта телефона И рассмотрим блок <line button="1"> с настройкой линии. Здесь нужно изменить в соответствии с нашими данными: <featureLabel>Merion Networks</featureLabel> - Имя на телефона <name>200</name> - Номер экстеншена <displayName>Cisco</displayName> - Имя экстеншена <contact>200</contact> - Снова номер экстеншена <proxy>192.168.1.17</proxy> - Адрес Asterisk <port>5060</port> - номер SIP порта <authName>200</authName> - Еще раз номер экстеншена <authPassword>qwe123</authPassword> - Пароль экстеншена Помимо этого, создаем файл диалпана dialplan.xml, без которого телефон не загрузится: <DIALTEMPLATE> <TEMPLATE MATCH="8,800......." Timeout="1"/> <TEMPLATE MATCH="8,.........." Timeout="1"/> <TEMPLATE MATCH="0.." Timeout="1"/> <TEMPLATE MATCH="1..." Timeout="1"/> <TEMPLATE MATCH="2..." Timeout="1"/> <TEMPLATE MATCH="3..." Timeout="1"/> <TEMPLATE MATCH="4..." Timeout="1"/> <TEMPLATE MATCH="[5-7]..." Timeout="1"/> <TEMPLATE MATCH="**...." Timeout="0"/> <TEMPLATE MATCH="*" Timeout="3"/> </DIALTEMPLATE> Далее создаем файл g3-tones.xml со следующим содержанием: <tones> <trkLocaleName>Russian_Federation</trkLocaleName> <trkBaseClearcaseVersion>/main/3.3.release/1</trkBaseClearcaseVersion> <trkTranslationVersion>0</trkTranslationVersion> <tone c1="30959" i1="-1879" d="1" t="ringing"> <part m="on" t="800"/> <part m="off" t="3200"/> <repeat c="65535"/> </tone> <tone c1="30959" i1="-1879" d="1" t="reorder"> <part m="on" t="200"/> <part m="off" t="200"/> <repeat c="65535"/> </tone> <tone c1="30959" i1="-1879" d="1" t="busy"> <part m="on" t="400"/> <part m="off" t="400"/> <repeat c="65535"/> </tone> <tone c1="30959" i1="-1879" d="1" t="odial"> <part m="on" t="65535"/> <repeat c="65535"/> </tone> <tone c1="30959" i1="-1879" d="1" t="idial"> <part m="on" t="65535"/> <repeat c="65535"/> </tone> <tone c1="14876" i1="-5346" d="1" t="recording"> <part m="on" t="400"/> <part m="off" t="15000"/> <repeat c="65535"/> </tone> <tone c1="30743" i1="-1384" c2="29780" i2="-1252" c3="30743" i3="-1384" c4="29780" i4="-1252" d="34" t="amwi"> <part m="on" t="100" /> <part m="off" t="100" /> <part m="on" t="65535" /> <repeat c="65535" pc1="10" pc2="65535"/> </tone> <tone c1="30831" i1="-2032" d="17" t="monitoring"> <part m="on" t="1500"/> <part m="off" t="8000"/> <part m="on" t="500"/> <part m="off" t="8000"/> <repeat c="65535"/> </tone> </tones> После этого создаем в директории TFTP папку Russian_Russia (или ту которую указали в <userLocale><name> и <networkLocaleInfo><name>) и переносим туда файл g3-tones.xml. Также туда необходимо перенести файл локали sp-sip.jar. И наконец нам нужно создать три пустых файла: CTLSEPSEP<mac_адрес_телефона>.tlv ITLSSEPSEP<mac_адрес_телефона>.tlv ITLFile.tlv Эти файлы нужны чтобы у нас не было ошибки “No Trust List Installed”. На этом все. По итогу в директории нашего TFTP сервера должны быть следующие файлы: SEP<mac_адрес_телефона>.cnf.xml dialplan.xml sip78xx.12-5-1-16.loads CTLSEP<mac_адрес_телефона>.tlv ITLSSEP<mac_адрес_телефона>.tlv ITLFile.tlv Папка Russian_Russia с файлами: g3-tones.xml и sp-sip.jar Загрузка телефона На этом наша подготовка закончена, и мы теперь можем включить телефон. Он начнет загружаться, получит IP адрес и пойдет на TFTP чтобы скачать все необходимые файлы. При помощи Tftfd64 можно смотреть за происходящем через вкладку Log Viewer, где можно увидеть какие файлы скачивает, и каких ему не хватает, в случае ошибки. Если все нормально, то телефон скачает файл конфигурации, затем установит новую версию прошивки с TFTP и выбранную локаль, после чего перезагрузится. После прошивки он начнет связываться с нашей IP-АТС Asterisk и начнется процесс регистрации в результате, которого мы получим телефон Cisco, работающий с Asterisk по протоколу SIP. Успех! Теперь можем проверять телефон и делать звонки!
img
Мы хотели бы поговорить про Quality of Service (QoS) в VoIP сетях, рассказать что это такое, как это работает, зачем это нужно и как это настраивать. В этой статье мы рассмотрим, какие проблемы мы можем иметь в сети, и как QoS может с ними помочь. Для успешного функционирования VoIP сетей голосовой трафик (voice traffic) должен иметь приоритет над трафиком с данными (data traffic). Quality of Service можно определить как способность сети предоставить лучший или особый сервис для группы пользователей и приложений за счет других пользователей и приложений. Звучит как то, что как раз необходимо для голосового трафика – “лучший” сервис необходим для VoIP не из-за больших требований по пропускной способности (VoIP трафик использует маленькую полосу пропускания, по сравнению с другими приложениями), а из-за требований по задержке. В отличие от трафика с данными, время за которое пакет проходит из одного конца сети в другой имеет значение. Если пакет с данными при прохождении через сеть испытал задержку (delay), то файловый сервер получит файл секундой позже или страничка в браузере будет загружаться чуть дольше, и с точки зрения пользователя не произойдет ничего страшного. Однако если голосовой трафик проходит по сети и испытывает задержку, то голоса начинают перекрываться (например, абонент начинает говорить одновременно с другим абонентом) и продолжать разговор становится невозможно. Чтобы побороть эти проблемы нужно убедиться, что для голосового трафика подходит не только полоса пропускания, но и что голосовой трафик получает первую доступную полосу. Это означает что если бутылочное горлышко (самое узкое место) находится в сети, где маршрутизатор ставит трафик в очередь, то перед тем как его выслать, маршрутизатор будет перемещать голосовой трафик перед трафиком данных, чтобы отправить его в первом доступном интервале. И это как раз задача Quality of Service. QoS, по сути, является не отдельным инструментом, а классом инструментов, направленных на то чтобы дать администратору полный контроль над трафиком внутри сети. Как и когда использовать каждый инструмент QoS зависит от требований к сети от трафика и ее характеристик. Понимание основных проблем Перед тем как применять QoS, нужно разораться с тем, какие проблемы мы пытаемся решить. Рассмотрим основные: Недостаток пропускной способности (Lack of bandwidth) – Множественные потоки голосового трафика и трафика с данными конкурируют за ограниченную полосу пропускания. Задержка (Delay) – Для того чтобы пакет дошел из пункта отправления в пункт назначения требуется какое-то время. Задержка имеет три формы: Фиксированная задержка (Fixed delay) – Значение задержки, которое нельзя изменить. Например, требуется определенное время, чтобы пакет добрался до определенной географической локации. Это значение считается фиксированным и QoS не может повлиять на него. Переменная задержка(Variable delay) – Значения задержки, которые можно изменить. Например, задержка в очереди интерфейса маршрутизатора является переменной, потому что она зависит от того, сколько пакетов находится на данный момент в очереди. На эту задержку можно повлиять поставив голосовые пакеты перед пакетами с данными. Джиттер (Jitter) – Разница задержек между пакетами. Например, первому пакету разговора потребовалось 100 мс чтобы добраться до точки назначения, в то время как второму потребовалось 110 мс. В этой ситуации джиттер составляет 10 мс. Потеря пакетов (Packet loss) – пакеты теряются из-за переполненного или ненадежного сетевого подключения. Очень важно понимать эти проблемы, поскольку они вызывают наложения звука, эхо, потрескивания и разорванные звонки. Механизм QoS предназначен для того, чтобы обеспечить бесперебойную передачу голоса в течение временных перегрузок в сети. Однако это не волшебная палочка, которая сможет решить все проблемы в сети. Например, если в сети есть недостаток пропускной способности, то при добавлении голосовых пакетов не стоит ожидать что QoS сможет все решить – получится что либо приложения с данными будут работать так медленно, что перестанут быть функциональными, либо голосовой трафик будет испытывать проблемы с качеством. Цель QoS – обеспечить постоянную пропускную способность для голосового трафика таким образом, чтобы была низкая постоянная задержка с одного конца сети в другой. Чтобы выполнить это требование необходимо иметь настроенные механизмы QoS в каждой точке сети, где существует перегрузка. Требования к голосовому и видео трафику Разный тип трафика, который используется в сети, имеет разные требования QoS. В отличие от трафика данных, голосовой трафик считается предсказуемым. В то время как трафик данных может значительно увеличиваться при скачивании или передачи большого объема данных, голосовой трафик остается постоянным для каждого звонка поступающего и покидающего сеть. Фактический объем полосы пропускания, требуемый для голоса сильно зависит от используемого кодека. Помимо требований к пропускной способности, голосовой трафик имеет следующие дополнительные требования: Задержка (End-to-end delay) : 150 мс или меньше Джиттер: 30 мс или меньше Потеря пакетов: 1% или меньше Видео трафик имеет такие же требования по задержке, но потребляет большую полосу пропускания. Кроме того ширина полосы пропускания может меняться в зависимости от того, сколько движения происходит в видео (большее количество движений значительно увеличивают необходимую пропускную способность). Требования к трафику данных Невозможно подогнать весь трафик данных под одно требование, потому что каждое отдельное приложение имеет свои QoS требования. Приложения данных можно разделить на несколько категорий: Критически важные приложения (Mission-critical applications) – эти приложения критически важны для организации и требуют выделенной полосы пропускания. Транзакционные приложения (Transactional applications) – эти приложения обычно взаимодействуют с пользователями и требуют быстрого времени отклика. Например, сотрудник техподдержки может использовать приложение базы данных чтобы получать информацию о абоненте на основе ID предыдущих запросов. Низкоприоритетные приложения (Best-effort applications) – эти приложения некритичны или некатегоризированы. Это может быть почта, веб и FTP. “Мусорные ” приложения (Scavenger applications) – это непродуктивные приложения, в которых нет необходимости для работы, но которые поглощают значительные объемы полосы пропускания. Например, это могут быть p2p приложения типа BitTorrent Каждой из этих категорий приложений можно назначить определенный уровень QoS.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59