Архив рубрики: Databases

A NoSQL database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases.
A relational database management system is a database management system based on the relational model of data.

Elastic Stack: обзор и установка ELK на Ubuntu

28 января 2022
 

 Последний раз ELK трогал (oh, my!) 7 лет тому, см. ELK: установка Elasticsearch+Logstash+Kibana на CentOS. Сейчас активно используем Logz.io, но расходы всё растут, и понемногу начинаем смотреть в сторону self-hosted ELK для запуска в Kubernetes, а потому надо поднять такой себе Proof of concept, дабы вспомнить с чем его едят и как настраивают. Собственно, в… Читать далее »

AWS: RDS Proxy – обзор, запуск, тестирование

11 декабря 2021
 

 AWS RDS Proxy – сервис от AWS, позволяющий разгрузить сервера баз данных AWS RDS, в первую очередь за счёт переиспользования существующих подключений вместо открытия новых для выполнения запросов от клиентов. Кроме того, RDS Proxy улучшает failover при переключении упавшего инстанса на резервный, например – когда AWS RDS Aurora выполняет переключение read-replica на роль master, если… Читать далее »

Tableau: установка Tableau Bridge для доступа к базам данных в приватных сетях

9 августа 2021
 

 Для доступа к серверам баз данных, к которым нет доступа из мира (а так и должно быть – доступ только внутри VPC) Tableau предлагает использовать Tableau Bridge. Идея заключается в том, что мы устанавливаем Bridge внутри сети, из которой есть доступ к базам данных, а затем в datasource настраиваем доступ к базе как Private access.… Читать далее »

Linux: настройка LEMP – NGINX, PHP, MySQL, SSL, мониторинг, логи, и миграция RTFM

5 ноября 2020
 

 Собрался наконец-то перенести RTFM на Debian 10, решил делать без автоматизации – будем поднимать стандартный LEMP для хостинга WordPress руками. Что-то похожее последний раз писалось в 2016 – Debian: установка LEMP — NGINX + PHP-FPM + MariaDB, в этот раз получился более полный обзор процесса. Также, когда-то делал автоматизацию для настройки сервера под RTFM, но последний… Читать далее »

Jenkins: деплой Redis и Helm subchart values

29 октября 2020
 

 Задача – содать Jenkins джобу, которая будет деплоить Redis на Dev/Stage/Prod кластера. В посте Redis: Master-Slave репликация и запуск в Kubernetes сделали это вручную, посмотрели что и как вообще запускается и работает – теперь надо автоматизировать. Главный вопрос – как вообще деплоить и передавать параметры? Хочется использовать уже готовый чарт, но в тоже время –… Читать далее »

Kubernetes: запуск SQL-миграций – Kubernetes Job и Helm hook

26 октября 2020
 

 Имеется проект, которому во время деплоя надо выполнить SQL-миграции. Для запуска миграций надо склонировать репозиторий из Github, и затем выполнить собственно миграции, которые в нём хранятся. Сейчас у нас для этого используются Kubernetes initContainers, причём два – сначала один, с git, клонирует репозиторий с миграциями в Kubernetes Volume, второй с sql-migrate – запускает из этого… Читать далее »

Kubernetes: дебаг Init containers при запуске SQL-миграций

15 октября 2020
 

 Имеется приложение в Kubernetes. Деплоится из Helm-чарта. При очередном деплое – новые поды не стартуют, а сам деплой падает со стандартной ошибкой “Upgrade “CHARTNAME” failed: timed out waiting for the condition“: wait.go:225: [debug] Deployment is not ready: eks-dev-1-community-api-ns/community-api. 0 out of 3 expected pods are ready upgrade.go:367: [debug] warning: Upgrade “community-api” failed: timed out waiting… Читать далее »

Redis: Master-Slave репликация и запуск в Kubernetes

23 сентября 2020
 

 Задача – запустить Redis в Kubernetes. Используем Master-Slave репликацию и Sentinel для мониторинга и failover. См. Redis: репликация, часть 2 — Master-Slave репликация, и Redis Sentinel. Redis cluster vs Redis replication См. Redis: репликация, часть 1 — обзор. Replication vs Sharding. Sentinel vs Cluster. Топология Redis и Choose between Redis Helm Chart and Redis Cluster… Читать далее »

MySQL: mysqldbcompare – сравнение двух баз

9 сентября 2020
 

 В качестве проложения поста AWS: Database Migration Service, часть 1 — обзор и пример миграции self-hosted MariaDB в AWS Aurora RDS – описание утилиты mysqldbcompare, которая предназначена для сравнения двух баз данных. См. документацию тут>>>. Установка На Arch Linux можно установить из AUR: Либо скачать и установить вручную. Загружаем архив: Пробуем установить: Добавляем Python-модуль configparser: И… Читать далее »

AWS: Database Migration Service, часть 2 – нет AUTO_INCREMENT и индексов. Фиксы для “foreign key constraint fails” и логов CloudWatch

31 августа 2020
 

 Продолжение поста AWS: Database Migration Service — обзор и пример миграции self-hosted MariaDB в AWS Aurora RDS. И всё было хорошо, пока мы не запустили первые тесты, которые начали отваливаться с ошибками: [2020-08-28 17:13:02] local.ERROR: SQLSTATE[HY000]: General error: 1364 Field ‘id’ doesn’t have a default value Начинаем проверять таблицы, и видим, что поле ID потеряло… Читать далее »