Обновить
256K+

DevOps *

Методология разработки программного обеспечения

455,99
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Добавление базы данных Postgres в проект и запуск миграций через Flyway для NestJS-mod приложения

Время на прочтение18 мин
Охват и читатели2.9K

База данных будет подниматься через Docker Compose.

Миграции пишутся вручную и запускаются через Flyway мигратор.

Приложение имеет свой логин и пароль, который отличается от рутового.

Конфигурации для Docker Compose и Flyway генерируются через запуск NestJS-mod в режиме инфраструктуры.

Читать далее

Запросы и лимиты в Kubernetes: разбираемся в деталях

Уровень сложностиСложный
Время на прочтение10 мин
Охват и читатели27K

Управление ресурсами в Kubernetes немного напоминает зефирный тест, который иногда выходит из-под контроля. Если тщательно не лимитировать, сколько ресурсов может потреблять контейнер, он пойдёт вразнос, примерно как малыш, способный слопать большую пачку Skittles за один присест.

С другой стороны, если вы постоянно лишаете контейнер минимального объёма ресурсов, который нужен ему для корректной работы, то словно постоянно не подпускаете ваших детей к сладостям. Контейнер будет влачить жалкое существование и работать вполсилы.

Вот почему настолько важно правильно настроить в Kubernetes лимиты и работу с запросами. Понимая, какова роль запросов и лимитов при управлении ресурсами и производительностью в Kubernetes, а также умея настраивать и/или задавать запросы и лимиты, вы гарантируете, что на обработку каждой рабочей нагрузки будет выделено ровно столько ресурсов, сколько нужно — ни больше, ни меньше.

Далее в этой статье подробно рассказано, как в Kubernetes организована работа с запросами и лимитами, как они используются для управления ресурсами. В любой организации чрезвычайно важно управление ресурсами в Kubernetes и роль такого управления. Разберём управление ресурсами в Kubernetes и начнём с самых азов.

Читать далее

Как вкусно приготовить «Сельдерей» (Celery)

Уровень сложностиСложный
Время на прочтение8 мин
Охват и читатели9.8K

Celery можно любить или не любить, но избежать работы с ним практически невозможно. Однако, не все инженеры задумываются о том, что происходит в момент вызова Celery задач. И в этой статье я хочу рассказать, как именно происходит вызов и отправка сообщения, к чему может привести игнорирование того, что Celery под собой имеет транспорт, и что может произойти, если этот транспорт начнет сбоить.

Читать далее

Сетевые плагины (CNI) в Kubernetes

Уровень сложностиСложный
Время на прочтение14 мин
Охват и читатели26K

Сеть Kubernetes — это сложная и увлекательная тема, наполненная множеством подвижных частей. Одним из ключевых компонентов, обеспечивающих сетевую связность и взаимодействие различных элементов кластера, является CNI (Container Networking Interface).

CNI  - это спецификация, разработанная CNCF (Cloud Native Computing Foundation) для стандартизации процесса подключения сетевых интерфейсов к контейнерам. CNI обеспечивает гибкость и адаптивность сетевой инфраструктуры, позволяя интегрировать различные сетевые решения в Kubernetes.

Давайте подробнее разберем, что такое Container Network Interface?

Читать далее

Продираемся сквозь сети в Kubernetes: Load-Balance, BGP, IPVS и все такое прочее

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели25K

Привет, Хабр! Мы в команде Nova Container Platform сделали перевод статьи для тех, кто хочет разобраться, как строить сети в Kubernetes. Делюсь им, надеюсь, вам будет полезно.

В мире Kubernetes мы каждый день слышим, как ipvs сравнивают с iptables, или, скажем, pureLB с metalLB, или же виртуальную топологию (overlay) с физической (underlay), или Nodeport с Loadbalance, и т.д. Сейчас я вам все растолкую.

Читать далее

Погружение в облака: K8S по следам Ænix с gohost. Часть 1. Установка Kubernetes-кластера под управлением Cozystack

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели7.8K

Привет! Меня зовут Владислав Карабасов, я работаю в компании gohost в Казахстане. Ранее я более 20 лет проработал в университете, возглавляя Центр информационных технологий и телекоммуникаций.

В gohost.kz я занялся развитием Kubernetes as a Service. В процессе работы я познакомился с платформой Cozystack на базе Talos Linux и решил развернуть Kubernetes-кластер с её помощью. Cozystack привлекла меня следующими особенностями:

— Поддержка развёртывания на железе (Bare Metal).

— Высокий уровень безопасности Talos Linux.

— Активное участие разработчиков в русскоязычном сообществе Kubernetes.

Делюсь опытом установки и настройки кластера на платформе Cozystack. Надеюсь, это будет полезно!

Читать далее

Как использовать blue-green-деплой: руководство по выкату одного и нескольких приложений

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели20K

В статье я задеплою приложение в blue-green, а также покажу, как работает смена между blue и green на практике. Cначала рассмотрим реализацию деплоя приложения в blue-green-стратегии, а затем попробуем werf bundle для деплоя нескольких приложений из одного репозитория. Будем деплоить с помощью werf, все ресурсы описывать как Helm-шаблоны, а для развёртывания использовать GitLab.

Читать далее

Введение в Weight & Biases

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели8.9K

В практике любого инженера машинного обучения обязательно присутствует инструмент для управления жизненным циклом машинного обучения: отслеживание экспериментов, управление и деплой моделей и проектов. В этой статье я кратко расскажу о таком инструменте компании Weight & Biases, незаслуженно обойденным вниманием на просторах рускоязычного пространства.

Работа в современных реалиях требуют быстрой разработки и оценки моделей. Существует множество компонентов: изучение обучающих данных, обучение различных моделей, объединение обученных моделей в различные комбинации (ансамблирование) и т. д.

Много компонентов = много мест, где можно ошибиться = много времени, потраченного на отладку. Вы можете упустить важные детали, и вам придется заново обучать модель, или вы можете обучиться на неправильных данных (утечка информации). Или вы можете использовать неправильную модель для генерации представления.

Именно здесь на помощь приходит W&B.

Читать далее

DevOps Governance в продукте. Как можно улучшать процессы разработки минимальными силами

Уровень сложностиСложный
Время на прочтение12 мин
Охват и читатели3.3K

Всем доброе утро!
На связи вновь Крылов Александр и сегодня я решил поделиться мыслями по тому, как можно применить опыт DevOps Governance в Enterprice, который я ранее описывал в в этой статье. Прошло время и опыт был переиспользован для разработки продукта на примере компании Bimeister. А началось это аж в августе 2023 года.

Что тут важно сказать - нет, это не будет детальной расшифровкой с уточнениями доклада с DevOops 2023, с которым так же можно будет ознакомиться по ссылке выше. В данной статье я расскажу ряд аспектов отличия Governance в Enterprice и то, как он может выглядеть в компании разработчике своего продукта. Помимо этого, я так же расскажу, какие работы удалось провести за год в компании, а какие нет.

Читать далее

Установка Sentry в Kubernetes, отловы exception на бекенде, в браузере, на Android

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели8.3K

В этой статье поговорим о Sentry — инструменте для сбора exception, который помогает разработчикам быстро обнаруживать и устранять проблемы, сокращая время выхода новых релизов и повышая удовлетворенность пользователей.

Читать далее

Книга: «Безопасные и надежные системы: Лучшие практики проектирования, внедрения и обслуживания как в Google»

Время на прочтение29 мин
Охват и читатели5K
image Привет, Хаброжители!

Может ли быть надежной небезопасная система? Можно ли считать безопасной ненадежную систему? Безопасность имеет решающее значение для разработки и эксплуатации масштабируемых систем в реальных условиях, поскольку вносит важный вклад в качество, производительность и доступность продукта. В этой книге эксперты Google делятся передовым опытом, позволяющим разрабатывать масштабируемые и надежные системы, которые действительно будут безопасны.

Вам уже знакомы два бестселлера, написанные разработчиками из Google — «Site Reliability Engineering. Надежность и безотказность как в Google» и «Site Reliability Workbook: практическое применение», значит, вы понимаете, что только неуклонное следование жизненному циклу обслуживания позволяет успешно создавать, развертывать и поддерживать программные системы. Сейчас же мы предлагаем взглянуть на проектирование, реализацию и обслуживание систем с точки зрения практиков, специализирующихся на безопасности и надежности.
Читать дальше →

Поднимаем динамические окружения (фича-стенды) для stateless- и stateful-сервисов

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели12K

На связи Игорь Латкин, управляющий партнер и системный архитектор в KTS

Мы на своём опыте разобрались в развертывании stateless- и stateful-сервисов, и теперь хотим поделиться с вами. Мы в KTS не раз создавали подобные инфраструктуры, перепробовали разные решения и выясняли, как построить эффективные процессы.

Сегодня мы поговорим о динамических окружениях (фича-стендах) для stateless- и stateful-сервисов, обсудим особенности и проблемы, которые могут возникнуть и возникали у нас.

Читать далее

Как объединить кластеры Kubernetes без даунтайма: пошаговая инструкция

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели11K

Однажды один мудрый DevOps сказал мне: «DevOps’ы — это люди, способные сделать всё, лишь бы не делать ничего». Привет, Хабр, я Алексей Подольский, лидер направления инструментов безопасной разработки в Cloud.ru. Сегодня я расскажу, как сделать жизнь чуть легче, если кластеров кубера в проектах развелось столько, что за всеми не уследить. Будем объединять кластеры в один, да так, чтобы падали затраты, а не прод. Будет полезно админам, DevOps’ам, прикладным архитекторам, и всем, кто работает с Kubernetes. Поехали!

Читать дальше

Ближайшие события

Сборка Min.io dev кластера в контейнерах

Уровень сложностиПростой
Время на прочтение18 мин
Охват и читатели23K

Сборка Min.io dev кластера в контейнерах с tls, site replication, nginx и мониторингом.

Статья представляет собой пошаговое руководство для разворачивания кластерного minio в контейнерах от bitnami. Доступ в кластер будет организован через nginx. Также рядом развернем однонодный minio. Объединим эти 2 minio с помощью site-replication. Создадим тестового пользователя, тестовую политику, тестовый бакет и попробуем с ним работать. Закончим настройкой мониторинга: дефолтные prometheus для сборки метрик и grafana для отрисовки дашбордов.

Читать далее

Облачная инфраструктура в помощь продуктовым командам — как мы это делаем в МКБ

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели2.2K

Привет, я Александр Подмосковный, руководитель Центра компетенций (BPM, CRM и SAS-системы) в Московском кредитном банке.

В своей статье я расскажу, как с помощью облачной инфраструктуры и dev-платформы разработчики ПО могут получить инструменты для автоматизации развертывания и тестирования, что ускорит выпуск новых версий продукта, а также о том, как компании могут повысить надежность и безопасность ИТ-систем за счет централизованного управления, мониторинга и автоматизации процессов.

Читать далее

Продвинутые сетевые функции Kubernetes

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели13K

Kubernetes, ставший де-факто стандартом для оркестрации контейнеров, значительно упрощает развертывание, масштабирование и управление контейнеризированными приложениями. Однако, по мере роста и усложнения инфраструктуры, требования к сетевым возможностям также увеличиваются. В современных распределенных системах, где различные микросервисы взаимодействуют друг с другом, критически важно обеспечить безопасность, производительность и надежность сетевых коммуникаций. Здесь на помощь приходят продвинутые сетевые функции Kubernetes, такие как:

Читать далее

Интеграция clang-format в Процесс Сборки

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели6.9K

Есть такая тема, как автоматическое выравнивание отступов в исходных текстах программ на Си или С++. Притом для этого есть специальные утилиты. Например clang-format или GNU indent.

В этом тексте я написал, как встроить процесс выравнивания исходных кодов прямо в систему сборки проекта.

Цель данного текста- показать, как интегрировать clang-format в процесс сборки прошивки. Просто в одно касание и выровнять код, и собрать бинари.

Читать далее

Высокая доступность в Kubernetes

Время на прочтение9 мин
Охват и читатели12K

Обсудили высокую доступность в k8s: эксперт Слёрма Кирилл Борисов — SRE, инцидент-менеджер и спикер конференций Highload++, Devops, DevOops, ProITFest — рассказал про использование Affinity и Anti-Affinity, Tolerations, PodDiscruption Budget и Horizontal Pod Autoscaler.

Читать далее

Безопасность CI/CD

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели9.3K

Обычно, когда начинается разговор о DevSecOps, все сразу вспоминают о необходимости встраивать в конвейер SAST, DAST, SCA инструменты, проводить различные тесты на безопасность приложения и регулярно сканировать работающее в продуктивной среде решение.

Но при этом не стоит забывать и о необходимости обеспечивать безопасность самого конвейера CI/CD. В сегодняшней статье мы рассмотрим обеспечение безопасности конвейера, построенного на основе Jenkins. Но сначала рассмотрим краткое описание этого решения, что Jenkins из себя представляет и для чего используется. 

Читать далее

Интервью с Вадимом Саркисяном —  руководителем отдела IT-инфраструктуры МоегоСклада

Время на прочтение6 мин
Охват и читатели3.1K

IT-инфраструктура  —  это то, что помогает бизнесу стабильно работать и не терять прибыль. В МоемСкладе за отделом IT-инфраструктуры числятся сервисы: разработки, автоматизации, мониторинга, логирования, эксплуатация, железных и виртуальных серверов и релизы.

Вадим Саркисян выполняет в компании несколько ролей — архитектора DevOps, руководителя отдела IT-инфраструктуры, руководителя гильдии системных инженеров. В этом интервью он рассказал о том, как сейчас устроен отдел IT‑инфраструктуры в МоемСкладе, принципах подбора сотрудников, их адаптации и некоторых из текущих проектов команды.

Читать далее