Архив автора: setevoy

RTFM: обновления — английская версия, новый поиск

19 февраля 2019
 

 За последние пару дней появилось два достаточно интересных обновления в блоге. Английская версия Очень давно планировалась, но всё «не доходили руки» (на самом деле было лень выкатить Dev-версию блога, что бы потестировать разные плагины). Наконец-то таки добавил плагин Polylang, перевёл категории и теги, начал переводить посты. Английская версия доступна по адресу https://rtfm.co.ua/en или с помощью переключателя в… Читать далее »

Chromium: 400 ошибка на Youtube

18 февраля 2019
 

 В Chromium (не только, скорее всего) иногда возникает ошибка 400 при обращении к Youtube. Вариант первый — просто очистить все данные в браузере через Settings => Clear browsing data. Нагуглилось обсуждение тут>>>, пишут, что ошибка возникает из-за плагина The Great Suspender (шикарный и полезный плагин, кстати). Сама ошибка выглядит так: Жмём F12, открываем Developer tools, перезагружаем… Читать далее »

Docker: RabbitMQ: exec(): Unable to fork, Prometheus node_exporter и Docker limits

15 февраля 2019
 

 RabbitMQ перестал принимать новые сообщения, и при выполнении запроса — возвращает ошибки вида: exec(): Unable to fork write(): send of 12 bytes failed with errno=104 Connection reset by peer fwrite(): send of 19 bytes failed with errno=32 Broken pipe Собственно, по сообщениям видно, что проблема с памятью — exec() не может выполнить fork() и выделить… Читать далее »

Golang: Go in Practice — заметки на полях, часть 2 — CLI приложение на Go

14 февраля 2019
 

 Предыдущая часть — Golang: Go in Practice – заметки на полях, часть 1 – введение. Стандартная библиотека Go включает в себя пакеты для создания приложения с поддержкой опций командной строки. В отличии от стандартных, принятых в Linux/BSD, стилей — в пакете из стандартной библиотеке Go используются одинарные или двойные дефисы как взаимозаменяемые. Т.е. тут не… Читать далее »

Grafana Labs: Loki – подключение S3 для данных и DynamoDB для индексов

13 февраля 2019
 

 И продолжаем баловаться с Loki. Первая часть — тут>>>, вторая — тут>>>. Очень пригодилась помощь разработчиков в Slack-комьюнити Grafana — там есть отдельный канал #loki. Задача сейчас — настроить Loki для использования AWS S3 корзины как persistent storage для данных самих логов, и AWS DynamoDB — для хранения индексов. При запуске Loki с конфигурацией по… Читать далее »

Golang: unrecognized import path «math/bits» (import path does not begin with hostname)

12 февраля 2019
 

 При импорте пакета — возникает ошибка вида «unrecognized import path «math/bits» (import path does not begin with hostname)«. Гуглим, находим обсуждение тут>>>, радуемся, что в репозиториях Debian 9 последняя доступная версия 1.7. Проверяем версию Go: Выполняем установку вручную. Удаляем установленный пакет: Со страницы загрузок — загружаем архив с новой версией, распаковываем его: Перемещаем каталог go… Читать далее »

Grafana Labs: Loki – распределённая система, теги и фильтры

7 февраля 2019
 

 Предыдущий пост серии — Grafana Labs: Loki – сбор и просмотр логов. Задача на сейчас — попробовать собрать распределённую систему: Grafana будет работать на одном хосте Loki — на втором Promtail — на третьем Суть идеи такова: имеется рабочее окружение, скажем Dev, включает в себя 2 хоста имеется окружение мониторинга — хост с Grafana/Prometheus/etc На хостах Dev-окружения… Читать далее »

Linux: rsyslog и «ротация» логов.

7 февраля 2019
 

 Имеется система с Debian 9, запущенная на AWS EC2 с дефолтным 8-гиговым рутовым разделом. Проблема в том, что временами /var/log/syslog и /var/log/daemon.log отжираются за сутки на пару гигов, и logrotate, который запускается раз в сутки, не успевает их сжать и выполнить ротацию. syslog и daemon.log используются (уже некоторыми подзабытым) демоном rsyslog: Задача — добавить ротацию… Читать далее »

Grafana Labs: Loki — сбор и просмотр логов

6 февраля 2019
 

 В Grafana версии 6.0 была предоставлена новая плюшка — просмотрщик логов Loki, аналог известного всем стека ELK/EFK. Является встроенной возможностью самой Grafana, и заточен под работу с Prometehus и Kubernetes, с возможностью использования их метрик. Проект совсем новый, и главный его недостаток, который выявился за время попытки поднять хотя бы Proof of Concept, который и… Читать далее »

Ansible: шифрование и копирование PEM-ключа

5 февраля 2019
 

 Задача — во время выполнения роли скопировать на удалённый хост PEM-ключ. Для этого используем ansible-vault. Идея состоит в том, что мы зашифруем содержимое ключа в переменную, а затем используем модуль copy — и создадим на удалённой системе новый файл. Создание сертификата Сначала создадим сам сертификат и приватный ключ с помощью openssl: Проверяем содержимое: Шифрование данных… Читать далее »