Архив рубрики: HOWTO’s

Вопросы, касаюшиеся установки и настройки различных приложений.

MySQL/MariaDB: команды shell из консоли MySQL-клиента

19 марта 2018
 

 MySQL CLI позволяет быстро выполнять команды из консоли с bash или другим shell, загружать sql-скрипты и так далее. Очень удобно, что бы не выходить из MySQL, если надо быстро выполнить команду. Например — выполнить команды ls из консоли MySQL: [simterm] admin@ip-172-31-64-60:~$ mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with… Читать далее »

Prometheus: мониторинг Azure VMSS с node_exporter и Docker контейнеров в Docker Swarm с cAdvisor

17 марта 2018
 

 В продолжение постов о развёртывании Prometheus для мониторинга проекта в Azure (привет, Azure, давно не виделись! см. Azure: почему никогда). Спустя три месяца — проект решил, что мониторинг им всё-таки нужен, и меня «вернули». Посты по теме: полное описание самого проекта описание установки Prometheus сервера Остановился я на добавлении к Prometheus серверу виртуальных машин из… Читать далее »

MySQL/MariaDB: настройка SSL

12 марта 2018
 

 После авторизации клиента передача данных между клиентом и сервером MySQL/MariaDB происходим в открытом виде, т.е. plaintext. Если клиент и сервер расположены не на одном хосте и/или не в одной приватной сети — то данные, соответственно, можно перехватить и прочитать. Проверка plaintext Проверим это. Создаём тестовую базу: [simterm] MariaDB [(none)]> create database ssltest; Query OK, 1 row… Читать далее »

What is: Linux namespaces, примеры PID и Network namespaces

10 марта 2018
 

 Данный пост обединяет в себе два других замечательных (на мой взгляд) поста на тему Namespaces в Linux — A Tutorial for Isolating Your System with Linux Namespaces и Introduction to Linux namespaces — Part 1: UTS, с небольшими дополнениями и изменениями. Тем не менее — крайне рекомендую к прочтению оба поста выше, и ознакомиться с другими ссылками из… Читать далее »

AWS: CloudFormation — пример создания S3 корзины, IAM пользователя, Glacier Lifecycle и SNS Notification

7 марта 2018
 

 Ещё один пример работы с CloudFormation. Задача — добавить создание AWS S3 корзины, со следующими параметрами: AccessControl: полный доступ владельцу (документация тут>>>) и IAM пользователю LifecycleConfiguration: архивировать данные в AWS Glacier по истечении заданного кол-ва дней (документация тут>>>) Tags: само собой NotificationConfiguration: отправлять сообщения через AWS SNS при удалении объектов из корзины (документация тут>>>) VersioningConfiguration: вкусно, но… Читать далее »

AWS: пример CloudFormation EC2 UserData — установка пакета, добавление задачи в cron и обновление UserData

6 марта 2018
 

 Задача: добавить в CloudFormation шаблон установку git и cron-задачу. Быстрый пример работы с UserData в CloudFormation шаблоне. Ресурс AWS::EC2::Instance сейчас выглядит так:   … «EC2Instance» : { «Type» : «AWS::EC2::Instance», «Properties» : { «Tags» : [ {«Key» : «Name», «Value» : { «Fn::Join» : [ «-«, [ {«Ref» : «AWS::StackName»}, «ec2»] ] } }, {«Key» :… Читать далее »

Python: Duplicate Encoder — решение задачки с Codewars

5 марта 2018
 

 Задача Ссылка на задачу Оригинал: The goal of this exercise is to convert a string to a new string where each character in the new string is ‘(‘ if that character appears only once in the original string, or ‘)’ if that character appears more than once in the original string. Ignore capitalization when determining… Читать далее »

AWS: RDS — Connection refused и StorageFull

2 марта 2018
 

 Имеется AWS RDS инстанс PostgreSQL, который в какой-то момент перестал принимать подключения: $ psql —host=datascience-ops.cjonwt.us-west-2.rds.amazonaws.com —username=dsops —password —dbname=dsops Password for user dsops: psql: could not connect to server: Connection refused Is the server running on host «datascience-ops.cjonwt.us-west-2.rds.amazonaws.com» and accepting TCP/IP connections on port 5432? Проверяем статус: [simterm] $ aws —profile ads-mic rds describe-db-instances —db-instance-identifier datascience-ops… Читать далее »

SSH: пример туннеля для радио

19 февраля 2018
 

 Пример использования SSH туннеля для обхода офисного фаервола, что бы послушать радио. Во время работы нравится слушать https://hirschmilch.de, но есть проблема: их радио-сервер работает на порту 7000, доступ к которому из офиса закрыт. Содержимое playlist-файла: NumberOfEntries=1 File1=http://hirschmilch.de:7000/prog-house.mp3 Title1=Hirschmilch prog-house Length1=-1 Version=2 Решение: поднимем SSH-туннель, который локально будет слушать порт 7000, и пробрасывать трафик через удалённый сервер… Читать далее »

Ansible: миграция RTFM 2.10 — Let’s Encrypt, NGINX SSL, hostname и exim

10 февраля 2018
 

 Предыдущий пост серии — Ansible: миграция RTFM 2.9 – монтирование EBS и настройка NGINX на Bastion. Сегодня надо выполнить установку и настройку: Let’s Encrypt SSL на NGINX и виртуалхоста (пока только dev.rtfm.co.ua) hostname exim Ссылки на коммиты файлов, получившиеся в результате написания этого поста: roles/letsencrypt/tasks/main.yml rtfm-blog-ansible-bastion-provision.yml roles/nginx/templates/nginx.conf hosts roles/common/tasks/main.yml roles/exim/templates/update-exim4.conf.conf.j2 roles/exim/templates/mailname.j2 roles/exim/tasks/main.yml