По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Желание использовать данные с внешних сервисов это вполне обычная практика. Так как многие из этих сервисов доступны по HTTP(S) (REST API, например), то в этой статье мы хотим показать простой способ обращения к этим сервисам по cURL и обработку данных в случае, если сервер вернет JSON. Все взаимодействия будут выполняться из диалплана. Простой cURL запрос В диалплане Asterisk существует функция CURL, которая позволяет получить содержимое WEB или FTP страницы. Синтаксис запроса следующий: CURL(url,post-data) url - URL, к которому мы будем выполнять обращение; post-data - по умолчанию будет выполнен GET – запрос. Если в данном параметре будут указаны различные значения, то будет выполнен POST запрос с указанными в переменной данными; Например: exten => _X.,1,Set(C_RESULT=${CURL(//merionet.ru/rest?num=84991234567)}) Здесь мы выполним GET запрос по указанному URL, а результат сохраним в переменной C_RESULT. Использование HTTPS в запросах Иногда, HTTPS запросы могут не срабатывать, так как удаленная сторона будет проверять наш SSL – сертификат. Если поставить параметр ssl_verifypeer=0, то такой проверки не будет: same => n,Set(CURLOPT(ssl_verifypeer)=0) Как воспользоваться этим в диалплане? Легко. С помощью функции GotoIf мы можем определить действие, которое отработает на базе результата cURL: exten => _X.,1,Set(C_RESULT=${CURL(//merionet.ru/rest?num=84991234567)}) same => n,GotoIf($["${C_RESULT}" = "1"]?res1:res2) same => n(res1),Verbose(CURL Result = 1) same => n,Hangup same => n(res2),Verbose(CURL Result != 1) same => n,Hangup Указанный код отправит GET - запрос на rest, в котором в параметре num передаст номер звонящего (можно указать соответствующую переменную диалплана Asterisk). В случае, если результатом выполнения запроса будет 1, то мы перейдем к выполнению шага res1, а противоположном случае, res2. res_json для обработки JSON ответов На самом деле, для API, является обычной практикой возврат ответа в виде JSON. Поэтому, нам следует преобразовать эти данные перед обработкой их. Для этого мы воспользуемся модулем res_json из JSON библиотеки, который создан для расширения базовых возможностей диалплана с точки зрения обработки JSON. Почитайте материал об установке данного модуля по этой ссылке. exten => _X.,1,Set(C_RESULT=${CURL(//merionet.ru/rest.json)}) same => n,Set(result=${JSONELEMENT(C_RESULT, result/somefield)}) same => n,GotoIf($["${result}" = "1"]?res1:res2) same => n(res1),Verbose(CURL Result = 1) same => n,Hangup same => n(res2),Verbose(CURL Result != 1) same => n,Hangup Для теста, создайте у себя на web – сервере файл rest.json со следующим содержанием: { "result": { "somefield": 1 } }
img
Графический интерфейс Cisco Unified Communications Manager (CUCM) имеет раздел Disaster Recovery System (DRS), который предназначен для проведения резервного копирования (backup) и восстановления системы (restore). Но бывают ситуации, когда GUI недоступен, например, из-за проблем с сетью. В этом случае, провести процедуры бэкапирования и восстановления можно через консоль CLI и сейчас мы расскажем как это сделать. Процедура бэкапа Перед началом процедуры, у вас должен быть настрое SFTP сервер, куда вы будете заливать бэкап с CUCM. Для начала нужно добавить сервер, куда мы будем загружать бэкап. Для этого вводим команду: utils disaster_recovery device add network [number of backups] Где: backup device name - Имя устройства, куда будем заливать бэкап; path - Путь, куда будем заливать бэкап на данном устройстве; ip-address of remote server - IP адрес удалённого устройства; username - Имя пользователя; number of backups - Количество резервных копий После ввода данной команды, вас попросят ввести пароль пользователя, из под которым вы хотите осуществить бэкап (в нашем случае - ccmadmin) admin: utils disaster_recovery device add network merionbckp ./ 10.20.30.123 ccmadmin Please enter password to connect to network server 10.20.30.123:**** drfCliMsg: Backup Device has been saved successfully. Проверим, что устройство для бэкапа успешно добавилось, для этого введём команду: utils disaster_recovery device list В выводе мы должны увидеть устройство, добавленное ранее: admin:utils disaster_recovery device list Device Name Device Type Device Path -------------------------------------------------------------- merionbckp NETWORK ./ Волшебно! Теперь мы можем осуществить бэкап. Для этого пишем в консоли: utils disaster_recovery backup network Где: backup device name - Имя устройства, куда будем заливать бэкап; featurelist - Список функционала, который нужно забэкапить; Для того, чтобы посмотреть какой функционал доступен для бэкапирования наберите команду: utils disaster_recovery show_registration , где servername - имя сервера, на котором осуществляется бэкап. admin:utils disaster_recovery backup network UCM,CDR_CAR,PLM merionbckp drfCliMsg: Backup initiated successfully. Please run 'utils disaster_recovery status backup' command to see the status Всё, бэкап запущен! Чтобы проверить статус, нам предлагают ввести: utils disaster_recovery status backup admin:utils disaster_recovery status backup Status: SUCCESS :Backup Completed... Tar Filename: 2019-02-16-04-21-37.tar Storage Location: NETWORK Operation: backup Percentage Complete: 100 PLM CCM01 ELM-AGENT SUCCESS Sat Feb 16 04:17:25 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_plm_elm-agent.log PLM CCM01 ELM-SERVER SUCCESS Sat Feb 16 04:17:26 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_plm_elm-server.log CDR_CAR CCM01 CAR SUCCESS Sat Feb 16 04:17:27 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_cdr_car_car.log UCM CCM01 BAT SUCCESS Sat Feb 16 04:19:23 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_bat.log UCM CCM01 CCMPREFS SUCCESS Sat Feb 16 04:19:25 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_ccmprefs.log UCM CCM01 PLATFORM SUCCESS Sat Feb 16 04:19:30 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_platform.log UCM CCM01 TCT SUCCESS Sat Feb 16 04:19:34 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_tct.log UCM CCM01 SYSLOGAGT SUCCESS Sat Feb 16 04:19:35 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_syslogagt.log UCM CCM01 CDPAGT SUCCESS Sat Feb 16 04:19:36 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_CCM01_ucm_cdpagt.log UCM CCM01 CLM SUCCESS Sat Feb 16 04:19:37 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_clm.log UCM CCM01 CCMDB SUCCESS Sat Feb 16 04:19:37 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_ccmdb.log UCM CCM01 TFTP SUCCESS Sat Feb 16 04:21:37 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_tftp.log UCM CCM01 ANN SUCCESS Sat Feb 16 04:21:33 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ ccm01_ucm_ann.log UCM CCM01 MOH SUCCESS Sat Feb 16 04:21:34 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_b_ccm01_ucm_moh.log Всё, бэкап готов! Процедура восстановления Чтобы восстановить конфигурацию CUCM из бэкапа, нужно сначала посмотреть – что доступно для восстановления на удалённом сервере? Проверить это можно командой: admin:utils disaster_recovery show_backupfiles merionbckp 2019-02-16-04-21-37 2018-12-25-21-52-19 Выбираем нужный нам бэкап и вводим следующую команду: admin:utils disaster_recovery restore network 10.20.30.123 2019-02-16-04-21-37 merionbckp drfCliMsg: WARNING! There are nodes in current production cluster but NOT present in the backup. These nodes will be removed if you restore the Publisher. If you want to keep these nodes, you will need to manually re-add them after the restore. Do you want DRS to perform a SHA-1 File Integrity Check of your backup archives y/n ?(n) : y Please enter the comma seperated features you wish to restore. Valid features for server CCM01 are PLM,CDR_CAR,UCM:PLM,CDR_CAR,UCM Do you want to restore database from the subscriber y/n ?(n) : n drfCliMsg: Restore initiated successfully. Please run 'utils disaster_recovery status restore' command to see the status ALERT: Please restart the server(s) before performing the next restore for changes to take effect. In case of a cluster, restart the entire cluster. Теперь проверяем статус восстановления: admin:utils disaster_recovery status restore Status: SUCCESS :Restore Completed... Tar Filename: 2019-02-16-04-21-37.tar Storage Location: NETWORK Operation: restore Percentage Complete: 100 CDR_CAR CCM01 CAR SUCCESS Sun Feb 17 11:20:15 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_cdr_car_car.log PLM CCM01 ELM-AGENT SUCCESS Sun Feb 17 11:24:34 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_plm_elm-agent.log PLM CCM01 ELM-SERVER SUCCESS Sun Feb 17 11:24:34 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_plm_elm-server.log UCM CCM01 BAT SUCCESS Sun Feb 17 11:25:06 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_ucm_bat.log UCM CCM01 CCMPREFS SUCCESS Sun Feb 17 11:37:06 CEST 2019 activelog/platform/drf/log/2019-08-18-15-20-01_r_ccm01_ucm_ccmprefs.log UCM CCM01 PLATFORM SUCCESS Sun Feb 17 11:37:13 CEST 2019 activelog/platform/drf/log/2019-08-18-15-20-01_r_ccm01_ucm_platform.log UCM CCM01 TCT SUCCESS Sun Feb 17 12:11:10 CEST 2019 activelog/platform/drf/log/2019-08-18-15-20-01_r_ccm01_ucm_tct.log UCM CCM01 SYSLOGAGT SUCCESS Sun Feb 17 12:14:19 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_ucm_syslogagt.log UCM CCM01 CDPAGT SUCCESS Sun Feb 17 12:14:39 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_ucm_cdpagt.log UCM CCM01 CLM SUCCESS Sun Feb 17 12:17:03 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_ucm_clm.log UCM CCM01 CCMDB SUCCESS Sun Feb 17 12:17:05 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_ucm_ccmdb.log UCM CCM01 TFTP SUCCESS Sun Feb 17 12:25:12 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_ucm_tftp.log UCM CCM01 ANN SUCCESS Sun Feb 17 12:26:38 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_ucm_ann.log UCM CCM01 MOH SUCCESS Sun Feb 17 12:26:39 CEST 2019 activelog/platform/drf/log/2019-02-16-04-21-37_r_ccm01_ucm_moh.log
img
В этой серии статей мы обсуждаем темы администрирования RHEV 3.5. RHEV - это решение для виртуализации Red Hat Enterprise Virtualization, основанное на проекте oVirt (open-source Virtualization project). Red Hat Enterprise Virtualization - это комплексное решение управления виртуализацией для виртуализированных серверов и настольных компьютеров. В этой статье мы обсуждаем среду RHEV и базовое использование. RHEV состоит из двух основных компонентов, таких как гипервизор и система управления. RHEV-H - это гипервизор платформы RHEV, который используется для размещения виртуальных машин. В основе его лежит KVM и RHEL. RHEVM - это система управления средой, которая управляет гипервизорами среды. Он также используется для создания, перемещения, изменения и управления виртуальными машинами, размещенными на гипервизорах. Особенности RHEV 3.5 Это решение с открытым исходным кодом основывается на ядре Red Hat Enterprise Linux с технологией гипервизора виртуальной машины на основе ядра (KVM). Поддерживаемый предел до 160 логических процессоров и 4 ТБ для каждого узла и до 160 виртуальных процессоров и до 4 ТБ памяти на виртуальную машину. Интеграция с OpenStack. Поддерживаются ежедневные задачи, такие как автономное перемещение, высокая доступность, кластеризация и т. д. Необходимые условия для использования Мы будем работать на двух узлах: "гипервизоры" и "хосты" с одним менеджером и одним узлом хранения iscsi. Потом мы добавим один IPA-и DNS-сервер в нашу среду. Мы планируем два сценария использования: Физическое использование - реальная среда, поэтому вам понадобится как минимум три или более физических машины. Виртуальное использование - тестовые лаборатории/среда, поэтому вам понадобится одна физическая машина с большими ресурсами, например, процессор i3 или i5 с оперативной памятью 8G или 12G, в дополнение к другому программному обеспечению виртуализации, например Vmware workstation. В этой серии статей мы работаем над вторым сценарием: Physical Host OS : Fedora 21 x86_64 with kernel 3.18.9-200 RHEV-M machine OS : RHEL6.6 x86_64 RHEV-H machines hypervisor : RHEV-H 6.6 Virtualization software : Vmware workstation 11 Virtual Network interface : vmnet3 Network : 11.0.0.0/24 Physical Host IP : 11.0.0.1 RHEV-M machine : 11.0.0.3 В будущих статьях мы добавим дополнительные компоненты, такие как ноды хранения и IPA-сервер, чтобы сделать среду максимально масштабируемой.Для RHEV-M позаботьтесь заранее об: RHEL / CentOS6. 6 x86_64 new минимальная установка (чистая установка). Убедитесь, что система обновлена. Выделен статический IP-адрес. Машине назначено имя и она доступна по FQDN, например Обновите файл файл /etc/hosts с именем хоста и IP-адресом (убедитесь, что имя хоста резолвится). Минимальные требования - 4G для памяти и 25 GB для жесткого диска. Mozilla Firefox 37 - это рекомендуемый браузер для доступа к WUI. Установка Red Hat Enterprise Virtualization Manager 3.5 1. Чтобы получить доступ к пакетам и обновлениям RHEV, вы должны получить бесплатную 60-дневную пробную подписку с официального сайта red hat, используя корпоративную почту отсюда: Red Hat Enterprise Virtualization 60-дневный пробный период Примечние: после 60-дневного периода ваша виртуалка будет работать в нормальном режиме, однако без доступа к обновлениям системы, если таковые появятся. 2. Затем зарегистрируйте свою машину в RHN (Red Hat Network). 3. Далее установим пакет rhevm и его зависимости с помощью yum. [root@rhevm ~]# yum install rhevm 4. Теперь пришло время настроить rhevm, запустив команду "engine-setup", которая проверит состояние rhevm и любые доступные обновления, делая это в интерактивном режиме и задавая вам вопросы следующего характера: Вопросы, связанные с устанавливаемым продуктом Пакеты Конфигурация сети Конфигурация базы данных Конфигурация движка oVirt Конфигурация PKI Конфигурация Apache Конфигурация системы Предварительный просмотр конфигурации Подсказка: предлагаемые значения конфигурации по умолчанию указаны в квадратных скобках; если предлагаемое значение является приемлемым для вас (а чаще всего так и бывает), нажмите Enter, чтобы принять это значение.Выполните команду и понеслась! [root@rhevm ~]# engine-setup 1. Параметры продукта Первое, о чем инсталлятор спросит вас, это установить и настроить движок на том же хосте. В рамках пробной инсталляции оставьте значение по умолчанию (да). Если вы хотите, чтобы прокси-сервер WebSocket был настроен этом же хосте, оставьте значение по умолчанию (да). 2. Пакеты Скрипт проверит наличие любых обновлений. На этом этапе не требуется никакого пользовательского ввода. 3. Конфигурация сети Далее скрипт автоматически настроит iptables. Мы пока не используем DNS, поэтому убедитесь, что имя хоста (как мы и говорили ранее) резолвится, дополнительно проверим /etc/hosts, как мы делали это ранее. 4. Конфигурация базы данных Базой данных по умолчанию для RHEV3.5 является PostgreSQL. У вас есть возможность настроить его на том же хосте или на внешнем. В статье мы будем использовать локальный вариант и пусть скрипт настроит его автоматически. 5. Конфигурация движка oVirt В этом разделе укажите пароль администратора и application mode для вашей инсталляции. Мы укажем Both: 6. Конфигурация PKI RHEVM использует сертификаты для секьюрного подключения к хосту. Здесь указываем organization name для сертификата: 7. Конфигурация Apache Для веб-интерфейса пользователя RHEVM, необходимо установить и настроить веб-сервер Apache. Инсталлятор дает возможность выполнить автоматическую настройку апач - сервера, ее мы и выберем: 8. Конфигурация системы Среда RHEV содержит библиотеку ISO - файлов, в которой вы можете хранить множество ISO ОС - то есть это просто набор исо - файлов (образов) нужных операционных систем. Эта ISO библиотека называется также доменом ISO и этот домен является общей сетевой шарой. Эта шара будет находиться на том же хосте RHEVM и вы смонтировать его вручную или позволить скрипту настроить его автоматически. 9. Предварительный просмотр конфигурации В этом разделе вы увидите все предыдущие настройки и убедитесь, что все в порядке. Заключение Это последний этап, который показывает дополнительную информацию о том, как получить доступ к панели администратора и запускает службы для работы продукта: Подсказка: На этом этапе вы можете получить Warning (предупреждение), если ПО будет не хватать оперативной памяти. Будем честными: для тестовой среды это не очень важно, просто продолжайте работать. Однако на продуктивном контуре надо быть внимательным и прислушиваться к таким предупреждениям. Чтобы открыть веб-интерфейс пользователя RHEVM откройте URL в броузере: http://$your-ip/ovirt-engine Затем выберите Administrator Portal и укажите свои учетные данные пользователя: admin и пароль, который вы ввели во время установки. Нажмите кнопку Login. Обратите внимание, что вкладка hosts пуста, так как мы еще не добавили ни одного хоста/гипервизора в нашу среду.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59