Как стать автором
Поиск
Написать публикацию
Обновить
83.38
Слёрм
Учебный центр для тех, кто работает в IT
Сначала показывать

Про наш финансовый отдел и собственную CRM

Время на прочтение3 мин
Количество просмотров9.1K

Это первая статья серии о том, как мы внедрили непрерывную интеграцию в процесс разработки CRM и облегчили жизнь финансовому отделу.


Прежде, чем описать технические подробности, расскажу о предпосылках к разработке системы и о том, как финансовый отдел работал раньше.


image


Раньше для автоматизации технических процессов в финансовом отделе мы использовали такую структуру.

Читать дальше →

Gitlab-CI

Время на прочтение5 мин
Количество просмотров117K



Всем привет.
У нас не так много задач, которым необходим полноценный CI. Некоторое время мы использовали в качестве CI-сервиса Jenkins. Там всё довольно очевидно, он прост и гибок в настройке, имеет кучу плагинов, но пару раз мы столкнулись с OOM-убийцами агентов на слабых машинах и решили рассмотреть в качестве CI-сервиса Gitlab CI, потому что мы любим эксперименты и тем более в комментариях к нашей прошлой статье задавали такой вопрос.
Читать дальше →

Вебинар: FreePBX. Офисная телефония: быстрый старт

Время на прочтение1 мин
Количество просмотров7.2K
Centos-admin.ru - делимся опытом!
Очередной вебинар от команды Centos-admin.ru пройдет в ближайший понедельник, в 12-00 по московскому времени. В этот раз мы рассмотрим использование FreePBX для быстрого развертывания системы офисной телефонии. Плюсы и минусы, основные настройки.

Вебинар рассчитан на системных администраторов, еще не имеющих опыта работы с FreePBX.

Прямая ссылка на видео | Cсылка для регистрации

Приглашаем всех желающих 29 августа. Приходите!

Вебинар: знакомство с Zabbix

Время на прочтение1 мин
Количество просмотров8.8K
Centos-admin.ru - делимся опытом! Очередной вебинар от команды Centos-admin.ru пройдет в ближайший четверг, в 18-00 по московскому времени. На этом вебинаре мы расскажем о системе мониторинга Zabbix, подробно опишем процесс установки, покажем способы автоматизации и интеграции с другими программными продуктами на примере Redmine. В конце вебинара будет небольшой рассказ о поиске и устранении неисправностей, а также затронем вопрос конфигурирования Zabbix под большие нагрузки. Вебинар рассчитан на системных администраторов еще не имеющих опыта работы с Zabbix.

Прямая ссылка на видео | Cсылка для регистрации

Приглашаем всех желающих 11 августа. Приходите!

Определение региона по номеру телефона в Asterisk без использования БД

Время на прочтение4 мин
Количество просмотров10K


Для многих компаний, работающих по всей стране, бывает очень важно знать, из какого региона именно поступил каждый входящий звонок, например, для оценки эффективности маркетинговой кампании по интересующим регионам. Конечно, можно заставить операторов call-центра уточнять эту информацию у звонящего каждый раз, но все же удобнее получать такую информацию в автоматическом режиме.
Кроме того, при осуществлении исходящих вызовов бывает важно звонить именно с номера того региона, где находится клиент. Можно, конечно, составить исходящие маршруты, но при количестве регионов более трех, да еще и с учетом мобильных номеров, конструкция получается монструозной.
Читать дальше →

Ansible-container: новый шаг в управление контейнерами

Время на прочтение4 мин
Количество просмотров30K


Недавно разработчики Ansible анонсировали новый проект Ansible Container. Проект нас очень сильно заинтриговал, и мы решили рассмотреть его поближе.
Ansible уже давно стал незаменимым инструментом в вопросах создания, сборки, деплоя образов docker-контейнеров и самих docker-контейнеров, благодаря соответствующему модулю.
Ранее для провиженинга docker-контейнеров с помощью Ansible необходим был запущенный в контейнере sshd, но в версии 2.1 в Ansible был добавлен Docker connection plugin, благодаря которому стало возможно запускать плейбуки не только на физических/виртуальных машинах, но и внутри docker-контейнеров и отпала необходимость использования sshd внутри docker-контейнера.

Читать дальше →

Вебинар: знакомство с Asterisk

Время на прочтение1 мин
Количество просмотров7.2K
Centos-admin.ru - делимся опытом!

Очередной вебинар от команды Centos-admin.ru пройдет в ближайшую пятницу, в 13-00 по московскому времени.

На следующем, пятом по счёту, вебинаре от нашей команды мы расскажем о Asterisk и его основных конфигурационных файлах, покажем, как работать с консолью Asterisk CLI и выявлять причины возникновения проблем со связью. Вебинар рассчитан на системных администраторов, еще не имеющих опыта работы с Asterisk.

Приглашаем всех желающих 22 июля.

Тут прямая ссылка на видео.
А тут ссылка для регистрации.

Приходите!

Ansible: тестируем плейбуки (часть 2)

Время на прочтение3 мин
Количество просмотров9.3K
Итак, в нашей прошлой статье мы рассмотрели как можно быстро и просто настроить среду для тестирования плейбуков и ролей Ansible. Это всё, конечно, очень хорошо и удобно, но почему бы нам не автоматизировать весь процесс внесения изменений в инфраструктуру от написания плейбука до внесения изменений на сервера?

image

Напомню несколько условий, при которых мы будем выполнять тестирование конфигураций:

1. Вся конфигурация хранится в git-репозитории;
2. Jenkins периодически опрашивает git-репозиторий с нашими ролями/плейбуками на предмет внесённых изменений;
3. При появлении изменений Jenkins запускает job с тестированием конфигурации. Тесты состоят из двух этапов:
3.1 Kitchen-CI берёт обновленный код из репозитория, запускает полностью свежий docker-контейнер, заливает в них обновлённые плейбуки из репозитория и запускает Ansible локально, в docker-контейнере;
3.2 Если первый этап прошёл успешно, в docker-контейнере запускается serverspec и проверяет, корректно ли встала новая конфигурация;
4. Если в Kitchen-CI все тесты прошли успешно, то Jenkins инициирует заливку новой конфигурации.

В идеале, весь процесс от написания плейбука и коммита в репозиторий до внесения изменений на сервера, должен проходить без нашего участия. Сильно углубляться в установку Jenkins и подробно расписывать о пайплайнах в данной статье не планируется. Первое делается без проблем из стандартных репозиториев, а второе — сугубо индивидуальное.
Читать дальше →

Ansible: тестируем плейбуки (часть 1)

Время на прочтение8 мин
Количество просмотров35K


Думаю, любой системный администратор, использующий Ansible для управления своим зоопарком серверов задавался вопросом о проверке корректности описания конфигурации своих серверов. Как же не бояться вносить изменения в конфигурации серверов?
В серии статей, посвященных DevOps, мы расскажем об этом.

Читать дальше →

Уведомление о звонке по telegram

Время на прочтение4 мин
Количество просмотров22K
image image
Довольно часто компании, использующие Asterisk, сталкиваются с необходимостью автоматического перевода звонка на мобильный телефон сотрудника. Конечно, идеальным решением была бы установка на телефоны какого-нибудь софтфона, но далеко не везде качество мобильного интернета удовлетворяет потребности передачи голоса, так что звонок переводится именно на номер мобильного телефона. В соответствии с законодательством и внутренними правилами, операторы связи чаще всего не разрешают подстановку произвольного номера в качестве Caller ID, поэтому работники, которым переводится вызов, видят не номер звонящего клиента, а номер офиса. В некоторых случаях это даже удобно, но бывает и так, что перезвонить клиенту нужно немедленно. Конечно, работник может зайти в интерфейс статистики(если, конечно, он есть) и найти там номер звонившего, но это не всегда возможно и всегда абсолютно неудобно.
Читать дальше →

Postgres на китайском или настройка Full Text Search в Postgres для китайского языка

Время на прочтение2 мин
Количество просмотров2.8K
image

Обратился к нам клиент с просьбой обновить PostgreSQL до самой свежей версии, а заодно и научить его китайскому.
Точнее, оптимизировать процесс полнотекстового поиска на китайском, ибо тормозило все это дело нещадно.

Ниже описано как это нами было сделано.
Сразу перейдем к делу.

Читать дальше →

Redmine: миграция с MySQL на PostgreSQL 9.5

Время на прочтение3 мин
Количество просмотров16K
image
В последнее время клиенты нашей компании все чаще обращаются с просьбой осуществить переход с MySQL на PostgreSQL. Действительно, активное развитие PostgreSQL дает повод разработчикам задуматься о смене СУБД. Зачастую при этом встает вопрос о переносе больших объемов данных, которыми «обросла» существующая база под MySQL.

Мы сами являемся активными пользователями Redmine и разработчиками плагинов для него, потому и выбрали эту CRM для иллюстрации процесса миграции.

Ниже описывается один из способов миграции с БД MySQL на PostgreSQL 9.5 для Redmine на ОС CentOS 6.

Читать дальше →

DNS Google больше не поддерживает Round Robin DNS

Время на прочтение3 мин
Количество просмотров40K

Раньше, когда надо было распределить нагрузку на несколько серверов, мы прописывали несколько A-записей с одним именем в DNS-зоне, и все работало. Запросы клиентов распределялись примерно поровну. Особенно актуален такой способ балансировки был для раздачи статитического контента.

Недавно наш клиент обратился к нам с проблемой:
В ЧНН начинались проблемы с загрузкой различных флешек — файлы загружались по несколько минут.
ищем виновного...

Немного о конференциях

Время на прочтение3 мин
Количество просмотров12K
image
Не так давно, мы отказались от использования Skype, как средства корпоративной связи, в пользу Telegram. Однако, Skype имел на борту одну очень полезную штуку — аудио/видео конференции. Как уже упоминалось в предыдущих статьях, за связь у нас отвечает Asterisk, но пока он работал в минимальной конфигурации (не считая создания задач в redmine о пропущенных вызовах) и мы решили прикрутить возможность конференц связи.
Читать дальше →

Ближайшие события

Плагин для Redmine: redmine_chat_telegram

Время на прочтение2 мин
Количество просмотров17K
imageimage

А мы продолжаем активно разрабатывать инструменты, которые упрощают жизнь команде поддержки Linux/Unix серверов. Хотя, этот плагин может быть полезен всем активным пользователям Redmine.
Плагин redmine_chat_telegram позволяет из тикета создать чат в Telegram, а все содержимое чата записывает в тикет.
Как это работает, зачем нужно и кому будет полезно описано под катом.
Читать дальше →

Вебинар 4: система управления контейнерами Docker

Время на прочтение1 мин
Количество просмотров6.7K
image

Очередной, весенний, вебинар от команды Centos-admin.ru пройдет в ближайший вторник, в 21-00 по московскому времени.

На следующем, четвёртом по счёту, вебинаре от нашей команды мы немного поговорим о контейнеризации Docker, вспомним историю и рассмотрим его базовые возможности и структуру.

Приглашаем всех желающих 22 марта.

Тут прямая ссылка на видео.
А тут ссылка для регистрации.

Приходите!

Наш опыт знакомства с Docker

Время на прочтение34 мин
Количество просмотров47K

Вместо предисловия





Сегодня приснился сон, как-будто меня ужали до размера нескольких
килобайт, засунули в какой-то сокет и запустили в контейнере.
Выделили транспорт в оверлейной сети и пустили
тестировать сервисы в других контейнерах…
Пока не сделали docker rm


Не так давно мне посчастливилось стать членом очень крутой команды
Centos-admin.ru, в которой я познакомился с такими же, как я: единомышленниками со страстью к новым технологиям, энтузиастами и просто отличными парнями. И вот, уже на второй рабочий день меня с коллегой посадили работать над одним проектом, в котором требовалось «докерировать всё, что можно докеризировать» и было критически важно обеспечить высокую доступность сервисов.

Скажу сразу, что до этого я был обычным комнатным Linux-админом: мерился аптаймами, апт-гет-инсталлил пакеты, правил конфиги, перезапускал сервисы, тайлил логи. В общем, не имел особо выдающихся практических навыков, совершенно ничего не знал о концепции The Pets vs. Cattle, практически не был знаком с Docker и вообще очень слабо представлял, какие широкие возможности он скрывает. А из инструментов автоматизации использовал лишь ansible для настройки серверов и различные bash-скрипты.

Читать дальше →

Как мы боролись с парсерами

Время на прочтение16 мин
Количество просмотров36K
image
Ключевые моменты:
* Реализация скрипта для проверки PTR посетителей;
* Конфигурирование nginx в IfIsEvil-style с ветвлениями map;
* Имена location в переменных map;
* Управление ветвлением через try_files /nonexist $map_var.

Многие высоконагруженные и популярные сайты страдают от того, что кроме живых посетителей их посещают разнообразные парсеры, боты и прочие автоматические сканеры, которые не несут никакого полезного эффекта, а только создают паразитный трафик и нагрузку на, и без того, нагруженную систему. В данном случае я не имею виду поисковых ботов, которые хоть и зачастую нагружают проект не нормировано, но просто необходимы любому проекту.
Один из наших клиентов регулярно испытывал проблему лавинообразного роста нагрузки в определенное время суток. Периодически, раз в сутки и чаще происходили наплывы посещений со значительным ростом LA на серверах. Было принято решение построить защиту от паразитного трафика.

Читать дальше →

Тест производительности проектов

Время на прочтение4 мин
Количество просмотров15K
image
Часто у нас стоит задача протестировать какую нагрузку выдерживает сайт наших клиентов. Для себя, в качестве инструмента тестирования, мы выбрали yandex-tank. Это будет краткая заметка о том как быстро начать работать с этим инструментом.

Читать дальше →

Подготовительные курсы. Обучение

Время на прочтение1 мин
Количество просмотров6.5K
image
Всем привет!
Для наших подписчиков, а так же прочих интересующихся есть новость.
С апреля 2016 года наши партнеры Scream School запускают подготовительные курсы для студентов по тематике game dev. В том числе, материал будет включать в себя курс по основам администрирования unix / linux систем, которым займется наша компания.
Читать дальше →

Информация

Сайт
to.slurm.io
Дата регистрации
Дата основания
Численность
51–100 человек
Местоположение
Россия
Представитель
Антон Скобин