Tag Archives: bash

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

02/01/2018
 

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

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

01/28/2018
 

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

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

10/13/2017
 

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

Azure: CDN, NodeJS, Docker Swarm и Blue-Green деплой

04/24/2017
 

 Имеется проект на Azure, которым я занимался большую часть последнего года (с 20-го марта 2016). Пост Azure: почему никогда писался под впечатлением работы как раз на нём (да и большая часть рубрики Azure – тоже).

Bash – скрипт удаления образов с Docker Swarm нод

04/21/2017
 

 Имеется Docker Swarm: $ docker node ls ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS h8p0sed4q6n6yyheq3wbxum2r fgvwm46c3b5uk000001 Ready Active oaphqh0i6f8kc013fy5goi37u fgvwm46c3b5uk000002 Ready Active qgj0un2g0jsqhhr0izd9fyn0d fgvwm46c3b5uk000000 Ready Active so01pmq9sdl9s34uq1m419m7z * fgvwm46c3b5uk000000 Ready Drain Leader

Linux: [[: not found

02/17/2017
 

 Во время Jenkins-билда – скрипт деплоя возвращает ошибку: … [jm-cms-transform-layer-build] Running shell script + [[ -d config ]] /var/jenkins_home/workspace/jm-cms-transform-layer-build@tmp/durable-6569c8ce/script.sh: 2: /var/jenkins_home/workspace/jm-cms-transform-layer-build@tmp/durable-6569c8ce/script.sh: [[: not found …

bash: скрипт генерации файлов конфигурации для NGINX

12/02/2016
 

 Имеется WebApp в Azure. В нему подключены 85 доменов. Задача – для каждого из подключенных доменов сгенерировать файлы настроек для NGINX, который будет проксировать запросы к этмоу WebApp. Список подключенных доменов получется с помощью Azure CLI – azure webapp show. Задача усложняется тем, что некоторые домены подключены к WebApp с www, а некоторые – без.… Read More »

BASH: массивы, пример – скрипт получения логов из Docker-контейнеров

11/18/2016
 

 Есть приложение, которое включает в себя 5 Docker-контейнеров. Для наблюдения за логами используется Loggly, но мне он жутко неудобен – в консоли логи удобнее смотреть и грепать. Запущенное приложение выглядит так: ubuntu@ip-10-5-3-54:~$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 63937e07a5cf tag-docker.jfrog.io/api-gateway:staging-test-eureka-cloud-versioning-124 “java -Djava.security” 30 minutes ago Up 30 minutes 0.0.0.0:8080->8080/tcp peaceful_blackwell cbf2394197bc… Read More »

Azure: GoCD и MSDeploy – деплой UmbracoCMS в Azure WebServices

10/14/2016
 

 Описание инфрастуктуры и процесса деплоя приложения одного немецкого производителя приятноалкогольной продукции. Работает на UmbracoCMS, .NET, язык – C#, использует две Azure (MS) SQL базы – одну для хранения настроек, вторую – для пользовательских данных. Для приложения имеются две различные ресурс-группы – Development и Production, при этом у Production имеется Staging swap-slot (у Dev – тоже, но он пока не… Read More »

Azure: управление зонами в Azure DNS – Git, GoCD, bash и Azure CLI

05/12/2016
 

 Новый проект переносит свои домены на DNS Azure, для чего требовалось создать возможность управления ими. Схема получается следующая: файлы зон хранятся в Stash; GoCD проверяет обновления в Stash, и триггерит билд; во время билда – файлы зон заливаются на Azure DNS. Обновление данных выполняется bash-скриптом с помощью Azure CLI. Больше про Azure CLI  и работу с… Read More »