По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В данной статье расскажем как установить последнюю версию Asterisk 14.3.0 на операционную систему CentOS 7. Следуя нашей инструкции, Вы без труда сможете собрать Asterisk из источников. Итак, поехали! Пошаговое видео Скачать команды Подготовка Перед началом установки, убедимся, что у нас выключена опция SElinux, по умолчанию он включен. Поэтому открываем любой текстовый редактор, например vim или nano и отключаем. Для этого: nano /etc/sysconfig/selinux Ищем строчку SELINUX = и вписываем disabled: SELINUX=disabled Сохраняем изменения и производим перезагрузку командой reboot. Далее, добавляем в CentOS репозиторий EPEL: $now = new DateTime(); $date = "2017-02-22"; $interval = $now->diff($date); $age = floor((strtotime("now")-strtotime("2017-02-22"))/86400); Все ссылки актуальны на момент написания статьи (22.02.2017). Сегодня echo date("d.m.Y") (статья написана function format_by_count($count, $form1, $form2, $form3) { $count = abs($count) % 100; $lcount = $count % 10; if ($count >= 11 && $count = 2 && $lcount
img
Друг, начнем с цитаты: Redis – это высокопроизводительная БД с открытым исходным кодом (лицензия BSD), которая хранит данные в памяти, доступ к которым осуществляется по ключу доступа. Так же Редис это кэш и брокер сообщений. Надо признаться, определение не дает точного понимания, что же такое Redis. Если это так круто, то зачем вообще нужны другие БД? На самом деле, Redis правильнее всего использовать в определенных кейсах, само собой, зная про подводные камни – именно об этом и поговорим. Про установку Redis в CentOS 8 мы рассказываем в этой статье. Redis как база данных Говорим про случай, когда Redis выступает в роли базы данных: Пару слов про ограничения такой модели: Размер БД ограничен доступной памятью Шардинг (техника масштабирования) ведет к увеличению задержки Это NoSQL - никакого языка SQL LUA скриптинг в качестве альтернативы Это нереляционная СУБД! Нет сегментации на пользователей или группы пользователей. Отсутствует контроль доступа Доступ по общему паролю. Что скажут ваши безопасники? Теперь про преимущества модели: Скорость Хранение данных в памяти делает быстрее работу с ними Скрипты на LUA Выполнение прямо в памяти, опять же, ускоряет работу Удобные форматы запросов/данных Geospatial – геоданные (высота, ширина, долгота и так далее) Hyperloglog – статистическе алгоритмы Hash – если коротко, то хэш в Redis делают между строковыми полями и их значениями Алгоритмы устаревания данных Примеры использования Представь, у нас есть приложение, где пользователям необходимо авторизоваться, чтобы выполнять какие – либо действия внутри приложения. Каждый раз, когда мы обновляем авторизационные данные клиента, мы хотим их получать для последующего контроля. Мы могли бы отправлять лист авторизационных параметров (с некими номерами авторизаций, сроком действия с соответствующими подписями), чтобы каждое действие внутри приложения, сопровождалось авторизацонной транзакцией из листа, который мы прислали клиенту. С точки зрения безопасности, в этом подходе нет ничего плохого, если мы храним на своей стороне данные в безопасности и используем Javascript Object Signing and Encryption (JOSE), например. Но проблема появится в том случае, когда наш пользователь имеет более одной авторизации внутри приложения – такие схемы плохо поддаются масштабированию. А что если вместо отправки листа авторизационных параметров, мы сохраним его у себя, а пользователю отправим некий токен, который они должны отправлять для авторизации? Далее, по этому токену, мы легко сможем найти авторизации юзера. Это делает систему гораздо масштабируемой. Redis, такой Redis. Итого, для указанной выше схемы, мы хотим: Скорость Мы не хотим, чтобы пользователь долго ожидал авторизации Масштабирумость системы Сопоставление ключа (токена) с авторизациями юзера А вот, что на эти вызовы может ответить Redis: Redis хранит данные в памяти – он быстрый. Redis можно кластеризовать через компонент Sentinel. Масштабируемость? Пожалуйста. В Redis куча вариантов хранения списков. Самый простой будет являться набором данных. В качестве бонуса от Redis, вы получите механизм экспайринга токенов (устаревания). Все будет работать. Redis как кэш! Redis почти заменил memcached в современных приложениях. Его фичи делают супер – удобным кэширование данных. Ограничения: Значения не могут превышать 512 МБ Отсутствует искусственный интеллект, который будет очищать ваше хранилище данных Профит: Совместное использование кэша разными сервисами по сети Удобные фичи, такие как LUA скриптинг, который упрощает работы с кэшом Временные ограничения для данных Еще один кейс Предположим, перед нами такая задача: приложение, отображает пользователям данные с определенными значениями, которые можно сортировать по множеству признаков. Все наши данные хранятся в БД (например, MySQL) и показывать отсортированные данные нужно часто. Дергать БД каждый раз весьма тяжело и ресурсозатратно, а значит, нам нужно кэшировать данные в отсортированном порядке. Окей, кейс понятен. Рэдис, что скажешь на такие требования? Кэш должен хранить сортированные наборы данных Нам нужно вытаскивать наборы данных внутри наборов данных (для пагинации, например, то есть для переключения между страницами) Это должно быть быстрее, чем пересчет данных с нуля Что скажет Redis: Хранить наборы данных - легко Может вытаскивать сабсеты из наборов - легко Конечно быстрее. Ведь данные хранятся в памяти Redis как брокер сообщений Редис может выступать в качестве брокера сообщений. Схема обычная и весьма базовая - publish–subscribe (pub/sub), или как можно перевести на русский язык «Издатель - подписчик». Как и раньше, давайте обсудим плюсы и минусы, хотя их тут и не так много. Минусы: Только тривиальная модель pub/sub Отсутствие очередей сообщений Ну а плюсы, как обычно для Редиса – скорость и стабильность. Кейс напоследок Простой пример – коллаборация сотрудников одной компании. Предположим, у них есть приложение, где они работают над общими задачами. Каждый пользователь делает свой набор действий, о котором другие пользователи должны знать. А так же, юзеры могут иметь разные экземпляры приложений – десктоп, мобильный или что то еще. Требования по этой задаче: Низкая задержка Мы не хотим иметь трудности в процессе совместной работы сотрудников Стабильная работа и непрерывность Масштабирование Кампания растет и развивается Редис, твой выход! Низкая задержка – да, говорили об этом ранее Стабильность – минимальное количество точек отказа в Redis Стабильная работа и непрерывность Масштабирование – сделаем кластер, нет проблем. Выводы Redis - крутая штука, которая позволяет объединять сервисы и следовать 12 принципам приложений. Для приложений, в которых нагрузка ориентирована на быстрое изменение наборов данных и высокая безопасность данных не имеет завышенных требований – Redis прекрасный выбор. Если данные нуждаются в усиленной защите, Редис подойдет в меньшей степени, лучше посмотрите в сторону MongoDB или Elasticsearch.
img
Своевременное резервное копирование данных – это критически важная процедура для любой компьютерной системы, ведь именно от этого зависит, как скоро вы сможете восстановить её работоспособность, в случае внештатной ситуации или восстановить важные данные. Хорошо, когда этот процесс автоматизирован и администратору или инженеру не нужно проводить его вручную. Вместо этого система сама осуществляет резервное копирование по расписанию. Как можно догадаться, речь в сегодняшней статье пойдёт о модуле, позволяющем проводить резервное копирование настроек и конфигурационных файлов IP-АТС Asterisk - Backup & Restore. Бэкапирование – это ключевой шаг процесса установки IP-АТС, есть несколько путей его автоматизации, а также имеется возможность проводить резервное копирование вручную, если это необходимо. Рассмотрим возможности данного модуля и базовые параметры. Все примеры в данной статье будем приводить на FreePBX 13. Итак, для того чтобы попасть в модуль Backup & Restore, с главной страницы, необходимо перейти по следующему пути Admin - > Backup & Restore. Перед вами откроется страница с текущими созданными бэкапами, а также бэкапами системы по умолчанию В нашем случае, никаких бэкапов создано не было, поэтому меню отображает только бэкап по умолчанию. Если нажать на кнопку справа на скриншоте выше (выделена красным) , то перед вами откроются секции данного меню - Backups, Restore, Servers и Templates. Секция Backups открывается сразу и показана на рисунке выше. В данной секции вы можете полностью определить работы по резервному копированию данных, их количество, частоту и объем информации, который должен быть скопирован. Restore Секция Restore позволяет указать место хранения файлов резервных копий и проводить восстановление системы. Можно указать как путь к файлу резервной копии на локальном компьютере, нажав кнопку Browse напротив опции Upload File или же, если файл хранится в другом месте, указать путь к FTP, SSH или локальному серверу, переместившись на вкладку Browse Servers В данной секции определяются серверы IP-АТС или таблицы баз данных, конфигурации которых должны быть подвергнуты процедуре резервного копирования. С помощью кнопки Add Server, можно добавить новый сервер на котором будет храниться бэкап Templates Данная секция предназначена для создания групп файлов, директорий или баз данных, которые необходимо включить в будущий бэкап. По умолчанию, уже доступны некоторые шаблоны, такие как бэкап только CDR записей, только конфигурационных файлов, полный бэкап системы и другие. Вы можете создавать свои шаблоны при помощи кнопки New Template, необходимо будет только определить тип нового шаблона и заполнить соответствующие параметры. Для того чтобы сохранить новый шаблон, необходимо нажать Save. При создании нового бэкапа можно будет включать в него данные шаблоны, это сильно упростит процедуру резервного копирования, поскольку не нужно будет определять параметры каждого бэкапа, все они уже будут в шаблонах. Настройка бэкапа Итак, переходим к настройке. Как показано на первом скриншоте, нажмите на кнопку Add Backup: Пробежимся по настройкам: Backup Name - дайте понятное имя процессу бэкапирования, что его можно было идентифицировать среди прочих процессов. Description - описание бэкапа. Например, ежедневный, или еженедельный. Или бэкап CDR, или бэкап конфигурации. Status Email - адрес электронной почты, на который необходимо отправлять информацию о выполнении данного процесса резервного копирования. On Failure Only - отправлять письма только в случае, если процесс бэкапа завершился неудачно. Далее, модуль предлагает нам выбрать сегменты нашей АТС, которые мы хотим копировать. В данном поле действует принцип drag and drop. Это означает, что вам достаточно просто мышкой перенести необходимые объекты справа, в поле Items. Если у вас небольшая компания, до 20 или 30 человек, рекомендуем делать Full Backup, который регламентирует полное резервное копирование IP – АТС Asterisk. Hooks Данный раздел позволяет подключать собственные скрипты в процесс выполнения бэкапа. Например, это может скрипт, который будет делать отметку о бэкапе в базе данных, или будет формировать особое письмо, или будет вносить данные в систему учета. Данный раздел позволяет определить, в какой момент резервного копирования или восстановления из копии подключать данные скрипты: Pre-Backup Hook - в этом поле можно указать путь к скрипту, который необходимо запускать перед проведением резервного копирования. Post-Backup Hook - путь к скрипту, который необходимо выполнить после процесса бэкапа Pre-Restore Hook скрипт запускаемый перед началом процесса восстановления сервера из бэкапа. Post-Restore Hook - запуск скрипта после проведения восстановления. Backup Server - сервер, на котором необходимо произвести процесс бэкапирования Это может быть как сервер с вашей АТС (This server), либо это может быть любой другой сервер, который доступен по протоколу SSH. Данные сервера можно настроить в разделе Servers Важно, чтобы исполняемые скрипты имели достаточно прав доступа. Так же, не забудьте сделать пользователем этих файлов юзера asterisk Storage Location В данном меню производится настройках хранилища для файлов резервного копирования. Вы можете настроить различные FTP, SSH, Email, MySQL и даже Amazon сервера для хранения там различных экземпляров копий (бэкапов). Чтобы выбрать сервер, перенесите его из правой части (Available Servers) в поле слева, которое называется Storage Servers Расписание В данной секции необходимо определить, с какой периодичностью мы желаем проводить бэкапы. Доступны следующие опции: Never - не запускать данный скрипт. Hourly - запускать ежечасно. Скрипт запускается с самого начала нового часа. Как пример, в 13:00:01. Daily скрипт запускается ежедневно в полночь. Weekly - запуск скрипта происходит еженедельно в воскресение в полночь. Monthly - ежемесячно каждое первое число в полночь. Annually - ежегодно каждое первое января в полночь. Reboot - проводить бэкап при команду перезагрузки. Custom - собственное расписание бэкапов, позволяет определить конкретное время проведения бэкапа. Настройка касается минут, часов, дней недели, месяцев или дней месяца Удаление старых файлов В данном разделе вы можете указать количество копий, которое необходимо хранить, а также, когда удалять старые файлы резервного копирования: Delete After - укажите возраст файла, который необходимо будет удалить. Например, можно удалять файлы после 1 месяца хранения. Delete After Runs -данное поле определяет количество копий, которое будет хранить сервер. Например, если вы укажите цифру 5, то после того, как сервер сделает 5 бэкапов, на 6 копирование будет удален самый старый файл. Тем самым, сервер будет поддерживать постоянное количество копий в размере 5, удаляя самый старый из них файл. Настройка восстановления (Restore) Перейдя во вкладку Restore, вам будут показаны все доступные резервные копии. В навигации между директориями, выберите необходимые файлы. Они буду иметь расширение .tgz: Выбрав необходимый файл, нажмите Go. Сразу после этого, вам будет предложено галочкой отметить какие сегменты бэкапа вы хотите восстановить (CDR, голосовую почту, конфигурацию и так далее). После выбора нажмите кнопку Restore и процесс будет запущен. Отметим, что процесс восстановления из локально файла абсолютно аналогичен. Просто необходимо нажать на копку Browse и выбрать необходимый файл. Добавление сервера В данной секции вы можете добавить новые сервер, на которые вам необходимо будет складывать резервные копии: Email - отправлять резервную копию на электронную почту в качестве вложения. FTP - отправлять бэкап – файлы на FTP сервер. Local - сохранять файлы бэкапов локально на сервере. MySQL Server - указать внешний MySQL сервер, на который Asterisk будет складывать копии базы данных. SSH Server -это может быть любая другая АТС, с которой вы можете также делать резервные копии (бэкапы). Шаблоны Шаблоны (templates) показывает готовые к работе заранее созданные в системы процессы проведения бэкапов с тем, или иным сегментом IP – АТС. Чтобы создать новый шаблон, нажмите New Template: Template Name - имя для шаблона. Description - описание шаблона, которое поможет вам проще ориентироваться среди прочих настроек. Чтобы добавить в бэкап файлы, папки или базы данных, нажмите на крестик (выделен красным на скриншоте выше). Откроется следующее меню: Добавьте необходимые вам файлы. По окончанию настроек, нажмите кнопку Save
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59