Архив рубрики: BASH scripts

Bash is a Unix shell and command language written by Brian Fox for the GNU Project as a free software replacement for the Bourne shell.

BASH: скрипт бекапа /home с уведомлениями

12 октября 2018
 

 Задача — написать скрипт для домашней машинки, что бы создавать бекапы по расписанию используя rsync, с уведомлениями на почту и в трее. Бекапы хранятся на отдельном USB SSD. Описание настройки отправки почты пользователю есть в посте Arch Linux: ssmtp – отправка локальной почты. Ниже — процесс написания такого скрипта с примерами функций. Сам скрипт доступен в… Читать далее »

AWS: миграция RTFM 3.0 (final) — CloudFormation и Ansible роли

25 августа 2018
 

 Прошёл почти год, как я начал миграцию v2, закончил на посте Ansible: миграция RTFM 2.11 – хост Services – установка PHP, PHP-FPM. Основной её идеей на тот момент было максимально использовать возможности AWS и Ansible — чисто из интереса и для практики, т.к. на предыдущем месте работы её было совсем мало (там в основном был Azure… Читать далее »

AWS: создание стека в AWS — bash-скрипт и CloudFormation шаблон

10 мая 2018
 

 Задача — развернуть мониторинг Prometehus + Grafana в AWS (в противоположность Azure на предыдущем проекте…). Весь стек будет состоять из одного EC2, на котором будет NGINX + Prometheus + Grafana. Из экспортёров на хосте мониторинга будут node_exporter и blackbox_exporter, скорее всего ещё mysql_exporter — собирать метрики с MariaDB бекенда нашего приложения, и какие-то ещё. Но это… Читать далее »

BASH: скрипт создания AWS CloudFormation стека

1 февраля 2018
 

 На одном из проектов создавался CloudFormation шаблон для RDS (см. пример тут>>>). Что бы упростить создание и обновление стека разработчиками — набросал небольшой скрипт. Скрипт выполняет: валидацию файла шаблона проверит требуется ли создать, или обновить стек запросит подтверждение перед созданием выполнит create-stack или update-stack Чать параметров используется из файла шаблона или переменных скрипта, дефолтные, часть… Читать далее »

bash: проверка статуса Spamassassin

28 января 2018
 

 На почтовом сервере начал падать Spamassassin. Сервер старый, причину на ночь глядя искать откровенно лень (думаю, падает во время выполнения /usr/bin/sa-learn в cron-задаче — по времени прихода уведомлений будет яснее), да и почта будет скоро переезжать на сервер в AWS, поближе к RTFM (сейчас работает на VPS в ДЦ Воля-Кабель), потому добавлю скрипт для быстрого «фикса». Суть… Читать далее »

Jenkins: миграция RTFM 2.4 — Jenkins Pipeline для CloudFormation RTFM стека

14 октября 2017
 

 Продолжение сетапа инфрастуктуры для блога. Решил добавить в заголовки «версию» каждого поста, в данном случае — миграция RTFM 2.4. Тут мажорная версия «2» — потому что год тому уже что-то подобное начинал делать (AWS: миграция RTFM, часть #1: ручное создание инфраструктуры – VPC, подсети, IGW, NAT GW, маршруты и EC2), а минорная «4» — четвёртый пост… Читать далее »

AWS: IAM и bash скрипт бекапа MySQL/MariaDB баз в AWS S3

13 октября 2017
 

 Задача — набросать скрипт для создания бекапов всех баз сервера БД и сохранять их в корзину. В общем — всё просто: бекапы делаем с помощью mysqldump, в S3 корзину пушим с помощью AWS CLI. Далее: создаём корзину для бекапов создаём пользователя с read-write политикой для доступа к этой корзине и сам скрипт Для простоты —… Читать далее »

Ansible: миграция RTFM 2.2 — RTFM Jenkins provision

8 октября 2017
 

 Продолжение сетапа Jenkins для RTFM. Начало — AWS: CloudFormation для EC2 c Jenkins. Для того, что бы развернуть Jenkins на EC2 в созданном стеке — потребуются: Docker для запуска самого Jenkins docker-compose файл для запуска Jenkins и подключения разделов Т.к. CI для развёртывания CI не будет 🙂 — то добавлю скрипт, который будет запускать создание стека а… Читать далее »

Arch Linux: уведомления в Openbox с libnotify

23 августа 2017
 

 Надо добавить всплывающее окошко, которое бы по крону выводило какой-то текст на экран. Используем libnofity, выполняем на Arch Linux (хотя принципиальной разницы нет — хоть на Убунте). Документация самого libnotify — тут>>>.

Travis: деплой конфигов NGINX в Azure File share

7 августа 2017
 

 Имеется ресурс группа, которая включает в себя один Azure Load Balancer, за котором находится Azure VMSS с двумя виртуальными машинами. На машинах работает NGINX, который использует файлы настроек виртуалхостов, которые хранятся в файл-шаре, которая монтируется к обеим машинам. Полное описание проекта — Azure: VMSS за Load Balancer, renew SSL от Let’s Encrypt, SMB file share и NGINX-proxy.… Читать далее »