May 30, 2024 | 00:22

Автоматическая миграция репозиториев из gitlab на свой сервер git

Все совпадения случайны Действия могут быть деструктивны и выполняются на свой страх и риск Представим следующее: дружелюбный gitlab.com уведомил нас, что в ближайшее время наши с ним пути разойдутся и нам пора собирать вещички. Проблема осложняется тем, что репозиториев в нашем аккаунте гитлаба вагон и маленькая тележка. На наше счастье у нас уже есть свой сервер git с блекджеком и всем остальным на базе selfhosted gitea (но на самом деле реализация сервера не сильно принципиальна). Все, что нам нужно – перенести репозитории со всей историей, ветками и тегами. Read more

December 26, 2022 | 20:23

Изменения в Ansible в RHEL9

Возникла недавно задача по развертыванию сервиса в RHEL9 и я столкнулся с тем что в RHEL9 выпилен ansible-engine в виде отдельного репозитория и теперь используется пакет ansible-core, входящий в базовый репозиторий. В чем различие: ansible-core поддерживает только 127 базовых модулей типа dnf, copy template и т.д.. Все остальное вынесено в коллекции. А тут мне понадобился модуль sysctl, для того, чтобы включить IP forwarding. До текущего момента я старался избегать использования коллекций. Скажем так, по религиозным причинам.. В общем-то ничего страшного, если речь идет о не очень большом количестве кода. Можно обойтись модулем shell и даже сделать это идемпотентно, но это означает, что вместо одного task будет 3 или 4. И это даже можно вынести в отдельную роль и т.п…. Но если мы имеем на руках репозиторий размером в несколько сот Мб? С кучей ролей, собиравшийся годами и используемый для RHEL7/8/9. Лично на меня от потенциального объема исправлений накатывала дикая печаль. Read more

May 18, 2021 | 18:37

Подсказки по работе с Jq

Небольшой набор приемов по работе с утилитой jq. Циклическое обращение ко всем элементам получаемого массива (к примеру, получаем имя каждого элемента) $ command | jq '.[].name' select – выборка элементов по диапазону значений (например все элементы в заданном диапазоне дат) $ command | jq '.[].created_at | select(. >= "2021-05") | select(. <= "2021-06")' Read more

March 12, 2021 | 12:13

Создание файлового swap в Linux

В последнее время слишком часто мне это приходится делать, надоело гуглить, поэтму без лишних слов: Создаем файл swap в корне и выставить ему правильные права # touch /swap # chmod 600 /swap Read more

December 22, 2020 | 14:05

Изменение размера раздела с LVM после развертывания ВМ из шаблона

После развертывания виртуальной машины linux из шаблона в виртуальной среде, автоматическое корректное изменение размера логических томов в LVM происходит не всегда. Ниже короткая памятка как это исправить. Рассмотрим, для примера, такой кейс: # df -h Файловая система Размер Использовано Дост Использовано% Cмонтировано в devtmpfs 16G 0 16G 0% /dev tmpfs 16G 0 16G 0% /dev/shm tmpfs 16G 8,6M 16G 1% /run tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/mapper/rhel-root 9,0G 1,7G 7,4G 19% / /dev/sda1 1014M 240M 775M 24% /boot tmpfs 3,2G 0 3,2G 0% /run/user/0 # lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 100G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 9G 0 part └─rhel-root 253:0 0 9G 0 lvm / sr0 11:0 1 1024M 0 rom /dev/sda имеет после развертывания размер 100 Gb, необходимо увеличить /dev/rhel/root до соответствующего размера под сотню Gb. Read more

July 31, 2019 | 00:58

Быстрое развертывание сайта на GitHub Pages с помощью генератора статического html Hugo

В предыдущем посте я писал чем может быть интересен статический сайт и как его можно создать на базе репозитория в GitHub. Продолжу тему и расскажу, как создать сайт с помощью генератора статического html Hugo и разместить на GitHub Pages. Для эксперимента с созданием сайта, я ранее зарегистрировал отдельный домен andrdi.ru и дальнейшее описание будет с использованием этого домена. Подразумевается, что у нас уже установлен Git и мы понимаем как он работает, а также знаем, что такое markdown и с чем его едят. Все команды я проверял на себе, но здравый смысл и чтение документации никто не отменял. Для начала определимся с задачей: Создать сайт про котиков, имеющий следующую структуру: . ├── HOME └── cats ├── black └── white С воображением у меня туго, поэтому пусть это будут котики. Read more

June 23, 2018 | 20:54

Как вернуть обычные имена сетевых интерфейсов в RHEL 7

В RHEL есть фишка, называемая consistent network device naming. Суть ее заключается в возможности произвольно именовать интерфейсы в зависимости от нужд администратора системы. Ранее сетевые интерфейсы именовались eth[0,1,..,n], сейчас же их можно переименовывать произвольно в зависимости от их назначения. Ниже мы рассмотрим как привести именование интерфейсов к привычному виду. Read more

© andrdi.com 2020