Архив рубрики: 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.

Apache Druid: PostgreSQL в роли metadata storage и замена ZooKeeper на Kubernetes extensions

5 октября 2022
 

  Продолжим серию постов об Apache Druid. В первой части разобрались с Друидом – его архитектурой и мониторингом, во второй части – развернули кластер PostgreSQL и настроили его мониторинг. Следующие задачи: переключить Druid на использование PostgreSQL в роли metadata storage вместо Apache Derby и убрать из схемы Apache ZooKeeper , а вместо него подключить  druid-kubernetes-extensions Начнём с PostgreSQL. Настройки Apache Druid с PostgreSQL См. раздел PostgreSQL Metadata… Читать далее »

PostgreSQL: запуск в Kubernetes з PostgreSQL Operator и мониторинг с Prometheus

5 октября 2022
 

  Итак, Друид мы запустили. Apache Druid: обзор, запуск в Kubernetes и мониторинг с Prometheus . Пока что в дефолтном виде, то есть в роли сторейджа для метаданных используется локальная база Apache Derby . Дальше будем переключать Друид на PostgreSQL, еще позже – убирать оттуда ZooKeeper. Ну а для начала – запустим кластер PostgreSQL в Kubernetes, добавим PostgreSQL Exporter для Promethues и настроим сбор… Читать далее »

Apache Druid: обзор, запуск в Kubernetes и мониторинг с Prometheus

14 сентября 2022
 

 Apache Druid – колоночная база данных, ориентированная на работу с большими объемами данных, сочетающая в себе возможности и преимущества Time-Series Database, Data Warehouse и поисковой системы. Общая задача – настроить мониторинг кластера Druid в Kubernetes, для чего сначала посмотрим что это вообще такое и как оно всё работает, а затем запустим Друид и потрогаем его… Читать далее »

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… Читать далее »