Найти в Дзене
Поддержите автораПеревод на любую сумму
Linux. Pacemaker + Corosync. Создаем ресурс из скрипта.
Итак, после создания кластера, возникла необходимость в исполнении самописного скрипта на новой мастер ноде при переключении. Несколько часов гуглежки и страданий нашли это: Где-то советуют создать отдельный скрипт в /usr/lib/ocf/resource.d/heartbeat/<script_name> и добавить новый ресурс как pcs resource create ocf:heartbeat:<script_name> Где-то предлагают создать кастомный ресурс как crm configure primitive script ocf:heartbeat:<script_name> Отдельный вид искусства - это совет создать скрипт где угодно и прописывать это в ресурсе...
2 недели назад
Linux. Pacemaker + Corosync. Создаем простой кластер
И снова мы говорим про отказоустойчивость и автоматизацию. В этот раз на повестке дня кластеры. Задача простая: нужно сделать кластер веб серверов nginx, чтобы при падении одной из виртуалок, весь трафик подхватывался второй, и пользователи не замечали аварии. Итак, вводные: У нас есть две виртуальные машины с IP адресами debian-node-1 192.168.122.158 debian-node-2 192.168.122.128 И отдельный IP адрес 192.168.122.140, который мы будем перебрасывать на активную ноду. Чтобы две наши виртуалки могли обращаться друг к другу по сети, пропишем в хостах (/etc/hosts) каждой ноды строки: 192...
2 недели назад
Linux. getty. Отключаем консольный вход.
Работая в небольших компаниях сисадмином, всегда сталкиваешься с тем, что на IT инфраструктуре пытаются экономить как можно больше. И это ни хорошо, ни плохо. Это нормально, так у всех. Однако, когда это твоя зона ответственности, приходится идти на разные ухищрения, чтобы дыра в безопасности не была единственным, что у тебя в этой самой безопасности есть. Хоть многие и не поймут этой боли, но коллеги по цеху, прошедшие через малый бизнес с грустью могут вспомнить, в каких неожиданных местах могли находиться критически важные сервера...
3 недели назад
Linux. Systemd. Анализ и редактирование демонов.
Дорогой дневник, мне не подобрать слов, чтобы описать ту боль и унижение, которые я испытал, пытаясь отладить собственный systemd unit. Всю историю своих побед и провалов я, пожалуй, опишу в одной и следующих статей, тут это будет лишним. А сейчас хочу поделиться несколькими трюками в отладке systemd. Итак, начнем: Каждый, кто хоть раз на своем веку печатал в консоли systemctl, знает про команды start/stop/restart/reload для изменения состояния юнита, и enable/disable/mask для изменения его поведения при загрузке системы...
3 недели назад
Linux. Apt. Устанавливаем пакеты без лишней грязи
Случилось ужасное: сменив место работы, я поневоле становлюсь адептом Astra linux. Если вдруг меня читает кто-то из астры - большой вам привет. Для многих это будет удивительно, но никакого негатива к Astra я не испытываю. Тут ситуация как с госуслугами: дайте ребятам еще несколько лет, и они наконец сделают вполне хороший продукт. Тем, кто говорит про «переклеили шильдики» - посмотрите на количество форков дебиана и на то, как они сделаны. А теперь вернемся к Debian и его пакетному менеджеру apt...
4 недели назад
Linux. Apt. Ищем пакеты в репозиториях.
Иногда возникает внутреннее желание называть джунов котятами. Ведь они такие же маленькие, слепые и беспомощные. Но каждый котенок рано или поздно станет красивым, грациозным котом, которому нет дела до мелких проблем, а вся эта суета уже стала чужда. Пока я погружаюсь в увлекательный мир отечественных ОС (привет, Астра linux), хочу немного поговорить о пакетном менеджере apt. Как обычно, за шаблон возьмем мой любимый Debian, но все, что я буду здесь показывать, актуально абсолютно для всех deb дистрибутивов...
1 месяц назад
Python. Запускаем скрипт с аргументами и вызываем Exception.
Как-то пришел ко мне один знакомый со словами «А я тут купил онлайн курс по программированию на Python с нуля». Обычно, с такого начинаются самые интересные истории из разряда «Как войти в Айти». Не буду поливать сейчас грязью все эти курсы и онлайн школы. Просто дам один маленький совет: до обучения решите, к чему у Вас больше лежит душа. Программист на Python - это не системный администратор, которому нужен Python. Вроде бы язык один и тот же, а вот функционал используется, зачастую, разный. Разберем...
2 месяца назад
Linux. SSH. Несколько полезных трюков.
Есть такая тенденция, что при упоминании слова "проксирование", последнее время на ум приходит сразу веб сервер типа nginx и apache. Но ведь "проксирование" - это по своей сути перенаправление запроса куда-то дальше. И работает это не только с вебом и http запросами. Не знаю, почему, но в последнее время не слышал интересных вопросов по каким-то базовым вещам, которые заставили бы задуматься. Под все задачи придумывают оболочки, которые упрощают нам жизнь. Но "под капотом" эти оболочки все так же используют старые и проверенные сервисы, функционал которых мы потихоньку начали забывать...
3 месяца назад
Linux. fstab. Как правильно монтировать разделы.
У самурая нет цели, есть только пу-пу-путь. И чем он длиннее, тем проще и обыденнее кажутся проблемы. Так «боже, все упало, что же делать» со временем сменяется на «ну опять началось, сейчас поправим». Итак, рубрика «вопросы с собеседований». Вопрос звучит примерно так: «вы клонировали виртуальную машину с примонтированным диском, после чего она не включается. На экране вы видите сообщение об emergency mode. Что случилось и как исправить?» Давайте разбираться по порядку: Не важно, какой именно у...
3 месяца назад
Linux. raid-check. Автоматическая проверка RAID массивов
«Хорошо вам айтишникам, деньги лопатой гребете и ничего не делаете» - стандартный посыл от многих людей других профессий. Так то да, у меня есть детская лопатка для песочницы, каждый месяц ей пользуюсь. Но абсолютно у каждой профессии есть и свои минусы. Вот, например: Пока нормальные люди радуются майским праздникам, жарят шашлыки и отдыхают на природе, ты сидишь в ночи за ноутбуком и разбираешься с прилегшим продакшеном. В принципе, нечего ныть, каждый выбрал сам свой путь. Да и погода за окном немного успокаивает, намекая на то, что выбор твой не так уж и плох...
4 месяца назад
Python. CGI. Пишем простейшее API.
Звенит январская вьюга, как жаль, что в Москве и в начале мая. Раз уж планы с шашлыком отменились, греемся не возле мангала, а под одеялом и котейкой. И, конечно же, продолжаем изучать что-то новое. Бывает иногда такая ситуация, что тебе нужно как-то отправить данные из одного приложения в другое. Конечно, есть огромный спектр способов и вариаций это сделать, но, когда у тебя в команде одни веб разработчики, тебе придется немного отступить и согласиться на запросы по http и поднимать свое api. Итак,...
4 месяца назад
Python. requests. Отправляем HTTP запросы.
Наконец пришло тепло и солнце, рабочее настроение куда-то улетучилось. Но пока мы все не ушли на майские праздники, нужно затронуть одну из самых часто встречаемых тем: http запросы. Рано, или поздно, каждый сталкивается с тем, что ему нужно обратиться к какому-либо API за данными. Не будем же мы постоянно скачивать все вручную, если это можно автоматизировать. Если вкратце и простыми словами про самые популярные запросы, с которыми мы обращаемся к серверу: GET - «Вот тебе вводные данные, отдай мне ответ»...
4 месяца назад