Архив за месяц: Май 2018

AWS: php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution и dnsmasq

31 мая 2018
 

 Ночью в AWS регионе us-east-1 в приложении вылезла ошибка: PDOException: PDO::__construct(): php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution Приложение запущено на EC2, который расположен в VPC, а база данных — в MariaDB RDS, в той же VPC. Судя по тексту ошибки — «Temporary failure in name resolution» — возникла проблема с получением IP от… Читать далее »

CircleCI: обзор Continuous Integration сервиса

31 мая 2018
 

 CircleCI — система для сборки и деплоя, аналогичная Travis CI (Github), и работающая по тем же принципам — к CircleCI-аккаунту подключаются репозитории (в отличи от Travis — к CircleCI можно добавить любой репозиторий, в т.ч. Bitbucket), билды выполняются в контейнерах или вирутальных машинах, уведомления о результатах билда можно получить на почту или через интеграцию со Slack/HipChat etc, а… Читать далее »

Memcached: установка, примеры

30 мая 2018
 

 Memcached — ещё одна key:value система кеширования, аналогичная Redis. Основное ограничение и отличие — memcached не хранит данные постоянно, т.е. при рестарте сервера данные из памяти будут утеряны. Кратко её установка и примеры использования. Установка pacman На Arch Linux можно установить из репозитория с помощью pacman: Debian/Ubuntu — с помощью apt, заодно PHP и NGINX… Читать далее »

MariaDB: AWS RDS — Lost connection to MySQL Server During Query

29 мая 2018
 

 При выполнении запроса из Tableau сервера — он завершается ошибкой: [MySQL][ODBC 5.3(w) Driver][mysqld-5.5.5-10.2.11-MariaDB]Lost connection to MySQL server during query Unable to create extract Решение — изменить параметр net_read_timeout. Переходим к RDS > Parameter groups, находим net_read_timeout: Выбираем параметр, жмём Edit parameters, задаём новое значение, например 60 секунд: Проверяем: При использовании CloudFormation — параметр можно передать… Читать далее »

Redis: установка, запуск, примеры

28 мая 2018
 

 Redis — система хранения и обработки данных, написанная на C, которую можно использовать как базу данных, сервис кеширования и менеджер очередей. Обслуживаемые им данные хранятся в памяти (in-memory dataset), периодически синхронизируясь с данными на жестком диске, в зависимости от конфигурации Redis. Установка Redis Redis можно установить с помощью менеджера пакетов ОС, из исходников, либо запустить… Читать далее »

Ansible: модуль cloudformation

25 мая 2018
 

 Для Ansible существует интересный модуль cloudformation, который позволяет создавать и удалять AWS CloudFormation стеки. Его может быть полезно использовать, что бы удобно передавать различные параметрыдля стеков, например Dev и Production, через переменные самого Ansible. Для примера возьмём шаблон ec2_simple_stack.json. Подготовка проекта Создадим новые проект: Создаём плейбук, всего одна роль — cloudformation: — hosts: — all become:… Читать далее »

Arch: послеустановочные настройки

24 мая 2018
 

 В продолжение поста об установке Arch Linux — заметка по начальной настройке системы после установки. Updated on 03.10.2018 Пакеты Устанавливаем необходимые для жизни пакеты. Для AUR и yaourt редактируем /etc/pacman.conf, добавляем archlinuxfr: [archlinuxfr] SigLevel = Never Server = http://repo.archlinux.fr/$arch Синхронизируем базу пакетов: Устанавливаем пакеты: konsole: эмулятор терминала из KDE с поддержкой вкладок net-tools: включает в… Читать далее »

Arch Linux: установка с UEFI, GPT, LVM и LUKS шифрованием

23 мая 2018
 

 И ещё один пример установки Arch Linux на ноутбук с UEFI, GPT разметкой, используя LUKS шифрование LVM раздела. Аналогичные примеры — Arch Linux: установка с LVM и LUKS шифрованием диска и Arch: установка с LVM. Собственно в этом примере ничего особо отличного, кроме настроек GRUB. WiFi Настраиваем WiFi, подключаемся к сети: Задаём пароль root: Запускаем sshd: Подключаемся,… Читать далее »

Ansible: теги, include_vars и приоритеты переменных

22 мая 2018
 

 В процессе написания плейбука для создания стека с модулем cloudformation (про него позже) появился пример использования тегов для ограничения выполнения задач из различных ролей, и хороший пример важности учёта приоритетов при использовании переменных. Ansible теги К примеру, есть такой плейбук: — hosts: — all become: true gather_facts: false roles: — role: cloudformation tags: infra -… Читать далее »

Git: пример merge develop в master

21 мая 2018
 

 Пример того, как смерджить бранч из девелоп-ветки в мастер, с сохранением всех коммитов и истории. Переключаемся на мастер, потягиваем последние изменения: $ git checkout master $ git pull Already up to date. Переключаемся на бранч, который будем мерджить в master, в данном примере это LTHS-380_Update_build_deploy_to_compose: M после чекаута указывает на то, что файл был modified: M… Читать далее »