Logstash: Как установить самодельный плагин

logstash-fittingsОпишу коротко по шагам, как установить плагин (plugin) Logstash (v1.4) из исходников под CentOS (у меня была версия 6.6). Иногда это пригождается, когда хочется данные залить в такое место, о котором плагинописатели до сих пор не догадывались, и необходимо импровизировать. Читать далее →

Ansible & UML: Кто-нибудь пробовал описывать playbook’и на UML?

ansible-umlДля описания Ansible плэйбуков и ролей попробуем использовать UML-диаграммы. Ранее уже была предпринята попытка взглянуть на Ansible, как на некое подобие языка программирования под углом ООП, сейчас же проделаем подобное с помощью диаграмм классов UML. Читать далее →

Ubuntu: Как починить загрузчик?

GParted-Boot-RepairТак получилось, что после покупки ноутбука и установки на него Ubuntu, я решил зачистить жёсткий диск на нём от Windows и по случайке снёс загрузчик (boot loader). Я было приуныл, вспоминая, как лет ндцать назад конфигурировал в консоли LILO, но-таки решил погуглить и поискать что-либо, что спасёт меня нажатием одной кнопки. И — нашёл! Читать далее →

ООП на Ansible? Да ладно!

ansible-oop-miniatureВ одной из последних статей я знатно набросил на Puppet  в пользу Ansible. В этой же статье попробую продемонстрировать, от чего я был в особенности в восторге при знакомстве с Ansible — от функций, а именно, от возможности объединять куски последовательностей действий (tasks) в некое подобие функций и даже классов. В общем, адепт ООП везде объекты найдёт. 🙂 Перейдем к примеру… Читать далее →

Мониторинг на коленке: NGINX -> Rsyslog -> Logstash -> Graphite

nginx-to-graphite_miniatureВ недавней статье рассматривался рецепт того, как можно быстро посредством Graphite визуализировать метрики, полученные из произвольного PHP-приложения. В настоящей же статье рассмотрим, как можно собрать и визуализировать в Graphite скорость загрузки страниц взятую из логов Nginx. В отличие от предыдущего рецепта этот не требует изменять Web-приложение. Читать далее →

Мониторинг на коленке: PHP -> StatsD(Bucky) -> Graphite

php-to-graphite_miniatureРаньше уже наталкивался на упоминания Graphite и StatsD, но всё в контексте каких-то нереальных приседаний с конфигами, и потому проходил мимо. Недавно же на службе звёзды сошлись таким образом, что-таки решил сесть и запилить по-быстрому сбор и отображение неких стат.данных PHP-приложения посредством StatsD и Graphite. Читать далее →

Дорожные истории

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

На самом деле, таких «опытов», должно быть, полно у всех, я считаю, но не все отдают себе отчёт в том, насколько они полезны до сих пор. Некоторые воспринимают эти истории из своего прошлого с лёгким чувством ностальгии и умиления, как чёрно-белые фильмы с чем-то приятным, но давно ушедшим, иные могут раз за разом воспроизводить в себе комфортное чувство жалости к себе, сравнивая себя настоящего (э-ээх) с собой (о-го-го) в прошлом, таким молодым и ещё ничем не обременённым. Читать далее →

RabbitMQ: Пример реализации RPC на PHP

php-rpc-rabbitmqОказалось нетривиальной задачей найти вменяемый пример кода реализации RCP поверх RabbitMQ для PHP. Пакет videlalvaro/Thumper, в основе своей имеющий videlalvaro/php-amqplib, кроме некоторых искусственных ограничений для пользователя (субъективно), обладает ещё и недостатком videlalvaro/php-amqplib — создать соединие и отправить сообщение в RabbitMQ занимает 120 попугаев по времение против 20 попугаев в PECL :: Package :: amqp — биндинге сишной библиотеки librabbitmq. Читать далее →

Ansible vs. Puppet: лирическое отступление.

puppet-ffffuuuuAnsible считается наипростейшим способом автоматизировать IT инфраструктуру — это то, что написано на сайте производителя. Так это или не так, судить не берусь. Однако, имея небольшой опыт почти одновременного кавыряния в Puppet и Ansible, неавторитетно заявляю: Ansible действительно проще в освоении нежели Puppet. Читать далее →

Консолидация логов Storm (Storm — Rsyslog — Logstash — Elasticsearch)

storm-logsТут коротко описаны мои изыскания касательно сбора информацией из текстовых логов компонентов кластера Twitter Storm средствами Rsyslog с последующей передачей оной через Logstash в базу Elasticsearch c возможностью анализировать её через Kibana. Читать далее →