Операция “Квадрокоптер”. День второй. Сборка
Date January 8th, 2014 Author Vitaly Agapov
Сборка квадрокоптера состоит из двух условных процессов. Первый процесс подразумевает соединение компонентов нужными интерфейсами и в нужной последовательности. Второй процесс (менее технологичный, но более творческий) заставляет решать, как разместить всё на маленькой площади, закрепить и как проложить провода. Эти процессы идут параллельно, то входя в конфронтацию вплоть до полной блокировки, то помогая друг другу.
Так как второй процесс весьма индивидуален и сильно зависит от конкретной рамы и конкретной реализации, начнём именно с него.
Tags: Beyond IT, R/C
Категория:
R/C |
1 Комментарий »
Операция “Квадрокоптер”. День первый. Выбор компонентов
Date December 31st, 2013 Author Vitaly Agapov
Постройка какого-нибудь мультикоптера в наше время превратилась из чисто гиковского (и весьма сложного) занятия почти в мейнстрим с почти нулевым к тому же порогом вхождения. Поэтому не будет здесь никаких открытий и прочей уникальной информации. Просто рассказ о том, как далёкие от темы люди делают свой собственный летательный аппарат. В нашем случае это будет классический X-образный квадрокоптер эконом-класса. Так сказать, разведка боем.
Само собой, путь в тысячу ри начинается с одного шага. А в нашем случае этим шагом является выбор компонентов для коптера, сопряжённый с чтением мегабайтов текстов (форумов, документаций и прочего) и рассматриванием витрин зарубежных (в основном – китайских) интернет-магазинов.
Tags: Beyond IT, R/C
Категория:
R/C |
4 Комментариев »
Миграция пользователей Atlassian Jira на LDAP
Date December 26th, 2013 Author Vitaly Agapov
Миграция пользователей, хранящихся в локальной директории в Jira на LDAP-сервер (AD либо OpenLDAP) не вызовет никаких трудностей, если логины этих пользователей совпадают в Jira и на LDAP-сервере. В этом случае надо просто настроить новую User Directory в Jira и поменять ей приоритет на самый высокий, чтобы аутентификация сперва проходила через неё. Если же есть пользователи, у которых в Jira один логин, а в том же Active Directory – другой, то тут вылезет ряд проблем. В основном эти проблемы будут связаны с тем, что LDAP-аккаунт Джирой будет восприниматься как совершенно отдельный пользователь, а все задачи, комментарии и история останутся привязанными к старому пользователю. Посмотрим, как решить эту проблему.
Tags: Atlassian, LDAP, Perl
Категория:
Perl |
2 Комментариев »
Автоматический запуск профайлера в New Relic
Date November 19th, 2013 Author Vitaly Agapov
Несколько лет назад я уже писал статью про свой игрушечный Perl'овый скриптик, авторизующийся на странице. Новой практической задачи пришлось ждать довольно долго. Но она появилась. После недавнего обновления клиентов New Relic у них появилась возможность профилировать все потоки приложения (Java, Ruby, да хоть PHP), чтобы была возможность определить, в каких тредах и на каких методах происходит потеря времени. Запуск профайлера производится из веб-интерфейса, куда надо сначала залогиниться. А очень хотелось записывать дампы по расписанию или, допустим, по наступлению некоего события вроде слишком высокого времени ответа или высокой загрузки CPU.
А пол-дела уже и сделано. Осталось припомнить основы работы с модулем LWP::UserAgent и посмотреть firebug'ом, как проходит авторизация, подстановка CSRF-токенов и отправка форм в интерфейсе New Relic.
Tags: Perl
Категория:
Perl |
Нет комментариев »
Перезагрузка HAProxy и потеря запросов
Date November 7th, 2013 Author Vitaly Agapov
Разбирая странные ошибки фронтенда, возникновение которых удивительным образом коррелирует с моментами, когда я произвожу перезагрузку HAProxy (service haproxy reload), я выяснил, эта самая перезагрузка работает совсем не так, как я думал. Вопреки ожиданием при перезагрузке процесс вовсе не перечитывает конфигурационные файлы и продолжает работать дальше. На самом деле порождается новый процесс haproxy с новым pid'ом. Он через unix-сокет забирает у старого процесса все сессионные данные и просит того освободить порт и умереть. Дождавшись освобождения порта, он биндится на него и как ни в чём не бывало продолжает принимать новые соединения и обслуживать старые. Но…
Tags: HAProxy, iptables, Linux
Категория:
HAProxy, Linux |
Нет комментариев »
“Летать доска”, или Флайборд
Date November 2nd, 2013 Author Vitaly Agapov
Поупражнялся в августе 2013-го года.
Tags: Beyond IT
Категория:
Beyond IT |
Нет комментариев »
Подсветка синтаксиса в командной строке
Date October 30th, 2013 Author Vitaly Agapov
Подсветка синтаксиса в том же Vim'е – дело привычное и полезное. Но ещё было бы полезно получить такую же раскраску и в обычном стандартном выводе в консоли. Её можно было смотреть прямо так или подать на вход less'у, не важно. И таких способов существует несколько.
Tags: Linux
Категория:
Linux |
Нет комментариев »
ModSecurity для Nginx: проблема с двойным Charset’ом
Date October 21st, 2013 Author Vitaly Agapov
Не так давно я разбирался с применением ModSecurity для Nginx и даже набросал по этому поводу статью. Но в процессе эксплуатации этого решения я натолкнулся на странное поведение связки. Почему-то при работе Nginx в качестве прокси он в заголовок Content-Type ответа добавляет параметр charset независимо от того, присутствует он там уже или нет. Но беда не в этом, а в том, что к значению параметра кодировки он прибавляет случайным образом один байт, который на многих браузерах приводит к нечитаемости приходящего кириллического текста. Быстрое гугление показало, что проблему эту обнаружил не только я (раз, два), но решение для неё отсутствует в обозримых пространствах интернета.
Tags: ModSecurity, Nginx
Категория:
Nginx, Security |
6 Комментариев »
Nginx, HAProxy, Varnish: мониторинг в New Relic
Date October 15th, 2013 Author Vitaly Agapov
Не так давно я писал статью по увязыванию в единое целое Nginx, Varnish и HAProxy и хотел рассмотреть также вопрос с мониторингом всего этого добра. Но пришла мне в голову идея расписать не общие возможности по мониторингу, а способы мониторить и собирать статистику по этим приложениям в довольно известном SaaS-сервисе под названием New Relic. New Relic умеет работать с помощью своих агентов практически в любых приложениях (Java, Ruby, PHP и ещё многих разных словах). Но главная вкусность таится в большом количестве отдельных плагинов для мониторинга практически чего угодно – от нашей тройки героев до Hadoop и RabbitMQ.
Tags: HAProxy, Nginx, Varnish
Категория:
HAProxy, Nginx, Varnish |
Нет комментариев »
Порог Большой Толли на Шуе
Date September 19th, 2013 Author Vitaly Agapov
Съездили в Карелию в августе 2013-го года
Tags: Beyond IT
Категория:
Beyond IT |
Нет комментариев »