-
Миграции и контроль версий БД с помощью Flyway
Процесс преобразования одной структуры базы данных в другой без потери косистентности, при котором меняется схема (таблицы и их колонки, индексы и пр.) называется миграцией. В данной статье рассмотрим использование инструмента flyway для работы с миграциями в БД postgres - давайте разберемся!
-
Gradle запуск checkstyle только на измененных файлах
В одной из предыдущих статей мы уже рассматривали настройку плагина checkstyle для статического анализа кода на языке Java, однако теперь требования усложнились - необходимо проводить анализ только действительно измененных файлов, а не всего содержимого проекта. Давайте разберемся!
-
Развертывание Apache Airflow в Kubernetes кластере
В данной статье разберемся с особенностями установки, настройки и эксплуатации Apache Airflow (далее Airflow) в кластере Kubernetes. Давайте разберемся!
-
Приоритетность подов в Kubernetes
Поды (Pods) могут иметь приоритет. Приоритет отображает важность пода относительно других подов в кластере. Если под не может быть запущен на подходящем узле из-за нехватки ресурсов, то планировщик (scheduler) пытается “вытеснить” поды с более низким приоритетом и переместить их на другие узлы кластера, чтобы освободить ресурсы и запустить ожидающий под. Давайте разберемся!
-
Ресурсы в Kubernetes. Часть 2: Процессор (CPU)
В первой части мы рассмотрели два типа требований (requests и limits) к ресурсам с точки зрения Kubernetes и разобрались с указанием этих параметров применительно к памяти. В данной статье рассмотрим нюансы настройки параметров requests и limits в контексте работы процессора (CPU). Давайте разберемся!
-
Ресурсы в Kubernetes. Часть 1: Память (Memory)
Чтобы Kubernetes смог максимально эффективно использовать доступную инфраструктуру и корректно выделить ресурсы, необходимые для работы вашего приложения, вам следует указать требования в ресурсам каждого контейнера. В данный момент есть возможность задавать два типа требований (requests и limits) для двух типов ресурсов - памяти (memory) и процессора (CPU). В данной статье рассмотрим requests и limits применительно к памяти - давайте разберемся!
-
Знакомство с Kubernetes. Часть 19: HorizontalPodAutoscaler
В этой статье рассмотрим использование HorizontalPodAutoscaler - объектов, предназначенных для автоматического масштабирования количества подов (Pods) в Replication Controller, Replica Set или Deployment, основываясь на использовании CPU (или, при поддержке custom metrics, на других метриках приложения). Давайте разберемся!
-
Deploy to k8s with Spinnaker. Часть 1: Установка
Spinnaker - мультиоблачная платформа для непрерывной доставки (continuous delivery) с открытым исходным кодом (open-source) от разработчиков Netflix. Платформа предназначена для управления и деплоя приложений в AWS EC2, Kubernetes, GCE, GKE, GAE, Microsoft Azure и Openstack. Давайте разберемся!
-
Gradle Checkstyle plugin
Возникла необходимость настроить статический анализ кода (checkstyle) для проекта на языке Java. Давайте разберемся!
-
Сборка проектов с помощью Gradle
На просторах Интернета существует множество статей и видеоуроков (как платных, так и бесплатных) о том, как установить Gradle, написать собственную конфигурацию сборки (файл build.gradle) и, наконец, собрать Java-приложение с помощью Gradle. В данной статье мы не будем рассматривать эти простейшие вещи, а разберемся как следовать принципу DRY (Don’t Repeat Yourself) при работе с большим количеством схожих проектов!