Архив рубрики: Scripting/coding

HowTo и примеры использования bash, C, Python, Ruby и т.д.

Powershell: найти самые большие файлы

26 января 2018

Решение нагуглено тут>>>. Используем Get-ChildItem, первым аргументом передаём путь к каталогу, в котором будем искать файлы, добавляем параметр -recurse для поиска во вложенных каталогах, выполняем сортировку по размеру с помощью Sort-Object, результат передаём в Select-Object, и выбираем первые 10 объектов: [simterm] PS E:\Temp> Get-ChildItem d:\Tableau -recurse | Sort-Object length -descending | select-object -first 10 Directory: D:\Tableau\Tableau Server\data\tabsvc\temp\TableauTemp\4140626790\Data\VBS… Читать далее »

Python: скрипт бекапа файлов и баз MySQL в AWS S3

3 января 2018

Задача — набросать скрипт, который умел бы создавать бекап нескольких сайтов и загружать их в AWS S3 корзину. Ниже описан процесс написания такого скрипта (или, скорее, уже даже «утилиты», т.к. имеются модули и файл настроек), без особых деталей по работе и реализации самих функций — больше информации о процессе создания утилиты, её структуре и логике… Читать далее »

Python: boto3 — примеры аутентификации и авторизации

2 января 2018

Полная документация — тут>>>. Основные способы авторизации, по очереди их выполнения: передача данных доступа методу boto.client() передача данных доступа параметрами при создании объекта Session() переменные окружения файл данных CLI ~/.aws/credentials файлы /etc/boto.cfg и ~/.boto Пишу скрипт бекапа (очередной 🙂 ), и очень хочется избежать передачи данных через файл настроек скрипта, поэтому основным вариантом для домашней… Читать далее »

Python: boto3 и скрипт обновления AWS Security Group

31 декабря 2017

Имеется VPN сервис, работающий в AWS на EC2, доступ к которому ограничен с помощью security group. Задача: набросать скрипт, который работал бы под Linux/Windows (VPN-ом пользуюсь не я один), который позволял бы быстро добавить запись с новым IP для доступа. Используем Python 3 и boto3.

Jenkins: миграция RTFM 2.6 – Jenkins Pipeline для Ansible

18 октября 2017

В одном из предыдущих постов — Jenkins: миграция RTFM 2.4 – Jenkins Pipeline для CloudFormation RTFM стека — была добавлена задача в Jenkins для создания и апдейта AWS CloudFormation стека. Следующая задача — запускать Ansbile из Jenkins для настройки серверов в стеке. Далее создадим одну Ansbile роль с установкой NGINX, потом добавим задачу в Jenkins. PEM-ключи для… Читать далее »

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 не будет 🙂 — то добавлю скрипт, который будет запускать создание стека а… Читать далее »

Jenkins: Pipeline, Groovy, Ansible и VM provisioning

22 сентября 2017

Продолжение постов Ansible: пример установки NGINX и Azure: provisioning с Resource Manager, Jenkins и Groovy. Задача  — запускать провижен VM из Jenkins. Пока выполняется только установка NGINX, позже будет добавлен Prometheus. Используем Jenkins Pipeline и groovy-скрипты. Описание Используется два репозитория: один для скриптов Jenkins (переменная $BUILD_REPO_URL в скриптах ниже), второй для файлов Ansbile ($INFRA_URL), в которых описаны хосты… Читать далее »

Azure: provisioning с Resource Manager, Jenkins и Groovy

19 сентября 2017

Описание сетапа развёртывания группы ресурсов Azure с одной виртуальной машиной для будущего мониторинга проекта. В этой части — создание Azure Resource Manager шаблона, настройка Jenkins и примеры Groovy скриптов. Далее — провижен NGINX и Prometheus с Ansbile. Ещё позже — Grafana. Все файлы и скрипты хранятся в Github. Подготовка Используем готовый шаблон от Azure отсюда>>>.… Читать далее »