All About

  Меня зовут Владислав.

  Я живу в замечательном немецком городе Франкфурте-на-Майне и работаю системным администратором по Linux, сетям и инфраструктуре виртуализации.

  Здесь можно увидеть посты на разные темы - как общие, так и узкоспециалазированные - чаще это рабочие зарисовки на тему различных IT решений, с которыми я имею дело, а также на тему моих увлечений: радиолюбительства (отсюда и ник: RA1AIE - мой старый позывной), мюзиклов, авиации и фотографии.

  Для удобства читателей, посты маркируются тэгами:
Collapse )

Мои контакты:
Collapse )

P.S:
Collapse )

Восстановление кластера MariaDB

Проблема: в кластере из 3 нод две упали (крэш), а оставшаяся загрустила и шлет клиентов нахер с любыми запросами.

Причина: согласно логике WSREP, одна нода не может собрать кворум и переходит в режим non-primary, переставая обрабатывать запросы клиентов во избежание split-brain. Если остальные ноды отвалились из-за сетевых проблем, то кластер пересоберется автоматически, как только они снова смогут друг друга видеть. А вот если остальные ноды, как в описываемом случае, именно что упали - то их перезапуск будет "радовать" нас ошибкой вида "view# -1: non-Primary", и сообщением о невозможности найти кластер.

Решение: заходим на выжившую ноду и в консоли даем команду "SET GLOBAL wsrep_provider_options='pc.bootstrap=true';", тем самым принудительно устанавливая ей высший приоритет. После чего она переходит в primary mode и мы можем запустить остальные ноды, которые при старте стянут информацию с нее. Важно: прежде, чем это делать, трижды проверьте, что остальные ноды таки реально не работают, иначе можно получить разные данные на разных нодах и все вытекающие из этого последствия.

Если при запуске остальные ноды валятся в segfault - лечится удалением всех файлов в mysql home directory.

Про аутсорсеров

Есть у меня на работе три площадки с серверами. Две полностью наши, третья в аренде. На каждой стоит богомерзкая железяка под управлением Sophos UTM9, установленная аутсорсерами. Изначально нашу сеть администрировали целиком они, но после пары серьезных косяков я отобрал у них права на все принадлежащее нам сетевое оборудование. Так что под их управлением осталась только третья площадка, где маршрутизатор не наш.

Так вот, понадобилось нам прокинуть резеврный VPN между одной из наших площадок и не нашей. Сконфигурировали все со своей стороны, написали заявку аутсорсерам. Те давай нам заливать - "ну, это надо OSPF поднимать, это долго, дорого и вообще нужно будет закупить новый маршрутизатор". Я не стал вступать в бесполезные споры, а просто притащил из дома древний Juniper SRX100B, сбросил, повесил на него свободный белый IP из офисного пула и за час настроил с него IPSec на обе наших площадки. Без OSPF и смс.

Народ ходит, дивится. Уточняют: "И шо, прямо вот работает? Ухтыжблядь! А сколько такая пепяка стоит? Сколько?! А хули ж мы тогда тот Sophos за сотни нефти покупали..."

Внезапное прекращение поддержки Sepura HBC1

После покупки китайцами, компания Sepura приобрела восточную загадочность.

Значит была у них много лет тому такая монохромная HBC (Handset-Based Console, голова управления в виде микрофона с кнопками и дисплеем), которую еще Малюта Скуратов для передачи донесений о короле Сигизмунде использовал. Шла она на старые серии мобильных радиостанций SRG/SRM2000-3500 и была заменена сначала на более новую цветную HBC2, а потом и на HBC3 со свистелками и перделками. Но даже современные станции SRG3900 оставались обратно совместимы с HBC1. До прошлого года. Формально Sepura объявила о прекращении поддержки HBC1 в релизе прошивок версии 10-24, но по факту уже 10-22 работает только с HBC2 и выше, при использовании HBC1 станция с такой прошивкой просто не включается. Соответственно, пользователям этой ископаемой консоли не рекомендуется обновлять прошивку выше версии 10-21.

Самая мякотка тут еще в том, что 10-22 и 10-21 используют одинаковый загрузчик (Boot FW), что позволяет относительно безболезненно откатить обновление. Но вот если вы обновились до 10-24 - то откатиться уже не выйдет, поскольку с ней идет обновление Boot. Манипуляции же с загрузчиком в обход предписанных производителем процедур череповаты окирпичиванием станции и отправкой ее в официальный сервис, ибо способа самостоятельного восстановления битого Boot на данный момент не существует.

Детектив

С интересом в реальном времени наблюдаю за развитием детективного сюжета об убийстве 30-летней давности.

Летом 88-го в лесу недалеко от Франкфурта нашли труп. Лежал он там явно не один месяц, и криминалисты смогли только сказать, что это была женщина, определить рост, цвет волос и очень приблизительно - возраст (30 плюс-минус 5 лет). Ну и понятно было, что труп криминальный, хотя точного способа убийства установить не смогли, предположили только, что преступник приехал и уехал по проходившему неподалеку автобану. Никаких документов или вещей на месте не обнаружили. Поскольку свидетелей не нашлось и среди пропавших без вести подходящей по возрасту и росту женщины не числилось, дело через какое-то время списали в архив как безнадежное.

В наши дни полиция при ревизии архива наткнулась на это дело и решила в нем порыться - в буквальном смысле. Тело, похороненное в безымянной могиле, эксгумировали и провели исследование современными средствами. После чего полицейские стали чесать репу еще сильнее, чем их коллеги 30 лет назад. И таки было отчего.
Collapse )

Так не доставайся же ты никому

Жил у нас тут в соседнем городке один мужик, немолодой уже, под 60. Из-за различных причин он сильно увяз в долгах и кредитах - настолько, что кредиторы (среди которых была и его мать) подали на него в суд, который постановил продать дом нерадивого заемщика с молотка и пустить вырученные деньги на погашение долгов.

Мужика перспектива расстаться с родными стенами привела в сильное душевное расстройство. Настолько сильное, что он, вспомнив армейскую молодость, смастерил из подручных средств бомбу и взорвал свой дом аккурат накануне аукциона по его продаже. А поскольку мастерство не пропьешь, то посторонние люди в процессе не пострадали, соседние дома тоже (ну, почти).

Суд, однако, переживаний мужика не оценил, так что на ближайшие 8 лет государство предоставит ему надежно охраняемое жилье. А вот что будут делать оставшиеся с носом кредиторы - вопрос и правда интересный.

EASA Medical

Еще одна причина, почему я переехал в Германию - небо. С юности я увлекался авиацией и мечтал стать пилотом - не в качестве профессии, а чтобы летать для собственного удовольствия. Увы, в России путь в небо для меня был закрыт: пройти там медкомиссию (ВЛЭК) со сколиозом невозможно. В Европе же требования к здоровью для частных пилотов куда мягче.

В итоге минувшим летом, после поездок на авиашоу малой авиации, я побывал на 3-дневном курсе по основам полетов на планере в местном аэроклубе. После чего прошел немецкую летную медкомиссию и сегодня получил наконец EASA Medical по классу 2 (полеты на легкомоторных самолетах и планерах) на 5 лет.

Теперь можно официально записываться в аэроклуб на обучение пилотированию :)

Оборотни в погонах

Прокуратура земли Hessen ведет расследование в отношении деревенских полицейских, которые обвиняются в систематическом поедании конфискованных сладостей и распитии конфискованного алкоголя. Возглавлял банду алкашей-сладкоежек лично начальник полицейского участка. Женской части проштрафившегося коллектива правоохранителей предъявлено дополнительное обвинение в присвоении проходившей в качестве вещдоков косметики.

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

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

Собираем haproxy2 под CentOS 8

Проблема: нужно разлить актуальную версию haproxy на несколько серверов, а под последнюю CentOS пока нет rpm для версии 2.0, только для 1.8.

Решение: собираем RPM самостоятельно из сырцов. Благо доброе opensource-community запилило для этого очень простой набор скриптов.

Порядок действий:
1. ~$ sudo yum install -y rpm-build rpmdevtools pcre-devel openssl-devel zlib-devel redhat-rpm-config gcc gcc-c++ make libstdc++-devel wget rpmlint
2. ~$ cd /opt && git clone https://github.com/DBezemer/rpm-haproxy.git && git checkout 2.0
3. Правим файл SPECS/haproxy.spec, выставляем там версию 2.0 вместо 1.8
4. ~$ cd /opt/rpm-haproxy && make

Профит. Берем RPM файл из папки /opt/rpm-haproxy/rpmbuild/RPMS/x86_64, добавляем в локальный репозиторий и разливаем на наши сервера.

Про миграционных помогаек

Нынче пользуются большой популярностью услуги по "эмиграции под ключ", особенно по направлениям учебы и работы за рубежом. Фирмы-"помогайки", коих развелось великое множество, красочно рекламируют жизнь за границей и обещают найти вам там работу, или стажировку, или "поступить" вас в зарубежный университет - и решить при этом за вас все визовые и организационные вопросы. Не знаю как в других странах, а в Германии клиенты таких контор довольно часто потом плачутся в социальных сетях и в офисах миграционных адвокатов.

В чем же подвох? Collapse )