Архив за год: 2017

Arch Linux: error: failed to commit transaction (conflicting files)

5 октября 2017
 

 Проблема Во время установки пакета из AUR — возникает ошибка: … :: Proceed with installation? [Y/n] (2/2) checking keys in keyring [########] 100% (2/2) checking package integrity [########] 100% (2/2) loading package files [########] 100% (2/2) checking for file conflicts [########] 100% error: failed to commit transaction (conflicting files) python-dateutil: /usr/lib/python3.6/site-packages/dateutil/__init__.py exists in filesystem python-dateutil:… Читать далее »

What is: модель OSI

3 октября 2017
 

 Захотелось немного потрогать raw sockets на С, заодно решил описать модель OSI — набросок поста давно лежал в черновиках. Модель OSI Open System Interconnection (OSI) — набор протоколов, описывающих процесс взаимодействия по сети двух распределённых систем, независимо от их архитектуры. Модель OSI не является протоколом сама по себе, а описывает структуру для построения гибкой, отказоустойчивой и функционально… Читать далее »

Ansible: роли для Docker Compose, Prometheus и node_exporter

2 октября 2017
 

 Перебирал несколько ролей в Ansible Galaxy для установки и настройки Prometheus — но в конце-концов решил делать всё по-своему. Будем использовать Docker Compose, который будет запускать сам Prometheus и node_exporter. Роль Docker Compose Начнём с добавления роли docker-compose. В корне репозитория создаём каталог roles/docker-compose/tasks: [simterm] $ mkdir -p roles/docker-compose/tasks [/simterm] Создаём файл roles/docker-compose/tasks/main.yml: — name:… Читать далее »

Linux: mps-youtube — консольный Youtube плеер

1 октября 2017
 

 Страница проекта на Github. Умеет играть прямо с Youtube, искать на нём музыку, загружать, конвертировать. Устанавливаем: [simterm] $ sudo pacman -S mps-youtube [/simterm] Дополнительно: [simterm] $ sudo pacman -S youtube-dl [/simterm]

AWS: миграция RTFM 2.1 — CloudFormation для EC2 c Jenkins

30 сентября 2017
 

 Задача — развернуть CloudFromation стек с одним EC2 интансом и примонтировать Elastic Block Store (EBS) с данными Jenkins. Потом с помощью Ansible — установить там Docker и запустить Jenkins. Подготовка Сначала — вручную создадим EBS, который будет хранить данные Jenkins и далее будет подключаться к создаваемому EC2 интансу. Создаём именованный профиль AWS CLI для RTFM:… Читать далее »

Let’s Encrypt: firewall и верификация домена

26 сентября 2017
 

 Во время установки и получения сертификата с помощью Ansible — возник вопрос с доступом к серверу для верификации, т.к. доступ к портам 80 и 443 ограничен на уровне Azure Network Security Group. Для certbot можно было бы использовать manual верификацию через DNS — но тут требовалось или ручная обработка, или боль с Azure DNS API… Читать далее »

Ansible: ansible-galaxy — репозиторий ролей и Jenkins VM provision

25 сентября 2017
 

 Продолжаем сетап системы мониторинга. Предыдущие части: Prometheus: мониторинг – введение, установка, запуск, примеры Azure: provisioning с Resource Manager, Jenkins и Groovy Ansible: пример установки NGINX Jenkins: Pipeline, Groovy, Ansible и VM provisioning Для NGINX роль я писал руками, далее — используем Ansible Galaxy.

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), в которых описаны хосты… Читать далее »

Ansible: пример установки NGINX

20 сентября 2017
 

 Задача — установить NGINX на удалённый хост с помощью Ansbile. Подготовка На рабочей машине — устанавливаем Ansible: [simterm] $ sudo pacman -S ansible [/simterm] В Jenkins — будем использовать Docker образ (или плагин). Проверяем: [simterm] $ ansible —version ansible 2.3.2.0 config file = /etc/ansible/ansible.cfg configured module search path = Default w/o overrides python version = 2.7.13… Читать далее »

Azure: provisioning с Resource Manager, Jenkins и Groovy

19 сентября 2017
 

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