Что подвесило систему: баг или вспышка на Солнце?



Исходные данные: три системы БД Oracle, которые активно обмениваются между собой данными через механизм распределенных транзакций Oracle. В один прекрасный момент на всех серверах админы стали наблюдать возникновение очередей при попытке приложения выполнить вставки/обновления данных. Тут же послали сигналы для немедленного завершения процессов, которые блокировали работу пользователей. После получаса разбирательств было принято решение перезагрузить все три системы. Далее запустили процедуры по очистке зависших распределенных транзакций, которые находились в статусах COLLECTING и PREPEARED. Подробности о том, что делать в этом случае, можно зачитать в документе: How To Resolve Stranded DBA_2PC_PENDING Entries [ID 401302.1]. После того, как системы привели в работоспособное состояние, начался разбор полетов.
Читать дальше →

Простой планировщик задач на PHP

image

В процессе эволюции более-менее крупного проекта может настать ситуация, когда количество запланированных задач (cron jobs) становится настолько большим, что поддержка их становится ночным кошмаром devops'ов. Для решения этой проблемы мне пришла в голову идея создать реализацию планировщика на PHP, тем самым сделав его частью проекта, а сами задачи — частью его конфигурации. В этом случае необходимое и достаточное количество cron jobs будет равно единице.

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

[recovery mode] Техподдержка 3CX отвечает: как заменить или обновить SSL сертификат на сервере

В этой статье мы ответим на довольно частый вопрос наших пользователей: как заменить или обновить (продлить) SSL сертификат для веб-сервера NGINX, используемого в системе 3CX. Прежде всего, рассмотрим, для чего может потребоваться получение, замена или обновление сертификата:
  • Вы используете собственное имя домена для 3CX (вида pbx.mybusiness.com). 3CX версии 15 и выше требуют обязательного наличия доверенного (подписанного) SSL сертификата.
  • Вы решили перейти с FQDN, выданного 3CX (вида mybusiness.3cx.eu), на собственное доменное имя.
  • Вы обновляете систему с предыдущих версий 3CX и должны использовать доверенный сертификат (в 3CX 15 и выше допустимы только доверенные сертификаты).
  • Вы решили отказаться от подписки на обновления 3CX (Maintenance). Мы не рекомендуем отказываться от обновлений, т.к. это может повлиять на качество функционирования вашего бизнеса (и экономия может привести к гораздо большим потерям). Однако, в этом случае вам необходимо перевести 3CX на собственное доменное имя, т.к. без подписки на обновления прекращается поддержка FQDN и SSL сертификата от 3CX.
В статье мы не будем рассматривать ситуацию замены FQDN — она описана ранее здесь и предусматривает переустановку 3CX. Мы рассмотрим саму процедуру получения сертификата и установки его на уже работающий сервер. Т.е., предполагается, что FQDN сервера не изменяется, и все, что нужно сделать — обновить сертификат. ...Далее...

Обзор NAKIVO Backup & Replication


О продукте для резервного копирования NAKIVO Backup & Replication я узнал буквально пару месяцев назад, когда о нём появилось несколько статей в рунете. Данный продукт отсутствует в свежем квадранте Gartner по направлению Backup & Replication, но тем не менее, он заинтересовал меня некоторыми своими возможностями, о которых я сегодня вам и расскажу.
Читать дальше →

GitLab PostgreSQL postmortem

31 января 2017 года у GitLab случилась авария, связанная с эксплуатацией СУБД PostgreSQL, в результате которой часть данных была удалена, а проект был остановлен на время восстановления. Прошло уже несколько месяцев, и было очень много написано на эту тему, а сам GitLab представил исчерпывающий некролог, в котором рассказал, что произошло, какие предпринимались меры для восстановления и какие меры будут предприняты для предотвращения подобных аварий. Очень занимательное чтиво, рекомендуем его прочесть даже тем, кто далек от Постгреса. В комментариях к нашему интервью с Алексеем Лесовским, некоторые представители сообщества, шутя, высказали претензию, что мы упомянули про аварию GitLab, но в итоге так и не провели подробный разбор полетов. Мы решили исправиться и попросили Алексея написать небольшой «разбор полетов». Основной целью этой публикации является детальный анализ некролога, выделение ключевых моментов, попытка проанализировать их и предложить рекомендации, как следовало бы действовать в подобной ситуации. И, конечно же рассмотрим меры, которые команда GitLab планирует предпринять для предотвращения таких инцидентов в будущем. Читать дальше →...Далее...

Meine Überwachung, или сказ о красивом мониторинге — начало

Сейчас о мониторинге не пишет только мёртвый тот, у кого его нет. У нас в Тензоре мониторинг есть – это наша собственная система сбора метрик (хотя это далеко не единственное её назначение), тесно интегрированная с Zabbix.

Если вам интересно, как устроен мониторинг 5K серверов в нашей компании, с какими проблемами нам приходилось сталкиваться на пути к 1.5M метрик, 65K значений в секунду и текущему решению и как мы вообще докатились до жизни такой, добро пожаловать под кат.


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

DevOps в Enterprise и финансах. Есть ли жизнь на Марсе

Артём Каличкин (ЦФТ)

Артем Каличкин (ЦФТ)


Меня зовут Артем Каличкин, я работаю в компании «Центр Финансовых Технологий», которая занимает лидирующие позиции по производству и разработке программного обеспечения для банковского и финансового сектора. Я занимаю должность директора по сопровождению эксплуатации.

Возможно ли использование практик и подходов DevOps, CD в корпоративной среде? Какие особенности? SPARC + Unix (Solaris)? Вертикальное масштабирование и как следствие — разная конфигурация в бою и на стейдже. Об этом и поговорим.
Читать дальше →

Как работать с событиями в Flussonic

Работа с событиями в Flussonic для мониторинга



Ползователи часто обращаются с вопросом: как сделать так, что бы Flussonic прислал письмо при падении потока.

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

Самый простой вариант будет наивным, но рабочим. В конфиг стримера добавляем:

notify no_video {
  sink /etc/flussonic/no_video.lua;
}


в файле /etc/flussonic/no_video.lua пишем:

for k,event in pairs(events) do -- события приходят в обработчик пачками, обработаем целиком группу
   if event.event == "source_lost" or event.event == "stream_stopped" then -- отфильтруем только те события, которые нужны
     mail.send({from = "flussonic@streamer1.mycdn", to = "marketing@team.mycdn", subject = "Source lost", body = "source lost on "..event.media}) -- и пошлем письмо на каждое событие
   end
end


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

[Перевод] Ускоряем восстановление бэкапов в PostgreSQL


Мои ощущения от процесса работы


Недавно я решил заняться ускорением восстановления нашей базы данных в dev-окружении. Как и во многих других проектах, база вначале была небольшой, но со временем значительно выросла. Когда мы начинали, ее размер было всего несколько мегабайт. Теперь упакованная база занимает почти 2 ГБ (несжатая — 30 ГБ ). Мы восстанавливаем dev-окружение в среднем раз в неделю. Старый способ проведения операции перестал нас устраивать, а вовремя подвернувшаяся в Slack-канале картинка “DB restore foos?” побудила меня к действию.


Ниже описано, как я ускорял операцию восстановления базы данных.

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

Обзор Splunk Machine Learning Toolkit


Помимо того, что Splunk может собирать логи практически из любых источников и строить аналитические отчеты, дашборды, алерты на основе встроенного языка поисковых запросов SPL, о котором мы писали в предыдущих статьях, Splunk еще имеет очень большую базу бесплатных аддонов и приложений.

Сегодня мы рассмотрим одно из самых популярных, с точки зрения пользователей, приложений — Splunk Machine Learning Toolkit.
Читать дальше →
  • Новее
  • 1


Последние посты