Типичный программист
81.4K subscribers
2.64K photos
889 videos
8 files
7.44K links
Всё самое интересное по программированию

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

VK: vk.com/tproger

Регистрация в перечне РКН: https://tprg.ru/mJwo
Download Telegram
Как наладить непрерывную интеграцию в монорепозитории?

Монорепозиторий — это такая стратегия разработки, при которой код разных подпроектов хранится в одном и том же репозитории. У нее есть свои плюсы и минусы, но монорепозитории давно используют в Google, Microsoft, Twitter и успешно внедряют и другие компании.

Что это за стратегия, как её внедрять и подойдёт ли она вашему проекту? Подробнее рассказываем на примере реального кейса «Лаборатории Касперского»: https://tprg.ru/2o5g

#devops
Как автоматически обновлять тестовую среду и сэкономить несколько дней на каждом переключении тестовой среды на новую версию?

Основное влияние на тестовую среду IT-продукта оказывает релизный цикл. В процессе важно, чтобы все системы обновились до правильных версий. При этом сами системы могут быть разными. Из-за этого разнообразия и CI/CD-пайплайны могут сильно отличаться. А обновлять системы, запуская вручную обновления отдельных систем, — долго и накладно.

Чтобы сделать этот процесс эффективным, нужно научиться обновлять среды полностью автоматически. И вот целый гайд про то, как наладить грамотную автоматизацию своими руками, на примере реального банка:

https://tprg.ru/d8jH

#devops #qa #тестирование
Grafana Mimir — бесконечное хранилище для Prometheus

Prometheus стал стандартом для сбора и хранения метрик. А Cortex — долгосрочное хранилище для удалённой записи данных Prometheus.

В марте 2022 года разработчики Grafana объявили о выходе Grafana Mimir, построенном на базе Cortex. Но по нему практически нет подробных разборов и гайдов от пользователей.

В статье вместе со старшим инженером КРОК Никитой Ражевым расскажем, как устроен Grafana Mimir и в чём его плюсы и минусы. А также попробуем сравнить его с известными инструментами Thanos и VictoriaMetrics: https://tprg.ru/B1OE

#devops #инструменты
Собираем и деплоим в Kubernetes приложение на Node.js с помощью werf: простой гайд с примерами

Подробный гайд, в которой разобрали, как собирать и деплоить в k8S-кластер простое приложение на Node.js с помощью утилиты werf. Организовав при этом правильную раздачу ассетов, спрятав бэкенд за reverse proxy-сервером NGINX и сняв тем самым нагрузку с самого приложения.

#devops #nodejs #kubernetes
Создатель Ansible запустил проект jet, чтобы переосмыслить и улучшить свой легендарный инструмент

Михаэль Дехан в своем блоге рассказал о запуске нового продукта — Jet Enterprise Performance Orchestrator, сокращенно jet. Это — новая enterprise-платформа автоматизации и оркестрации, написанная на Rust.

Разработчики обещают, что она выйдет под GPLv3/2. Автор Ansible сказал, что ценит вклад Red Hat, поглотившая проект в 2015 году, но «есть вещи, которые бы он сделал по-другому». И он взял и сделал.

Особенности новой системы jet:
— Написана на Rust. Благодаря этому в jet есть дополнительные, полностью асинхронные режимы работы.
— Меньше ошибок. Это еще одно преимущество Rust — компилятор довольно агрессивно проверяет код благодаря лучшей в своем классе системе типов.
— Одновременная поддержка до 50-100 тыс. систем благодаря новой архитектуре шины сообщений.
— Возможность работы с существующими модулями Ansible благодаря специальной языковой оболочке и совместимость на 90-95% со всеми существующими плейбуками.
— В jet используется диалект YAML, который, «так же похож на Ansible® playbook language, как американский английский на британский английский».

На официальном сайте проекта можно почитать первые наброски документации, присоединиться к списку рассылки или Discord-чату с разработчиками: https://www.jetporch.com/

#devops #инструменты
Как управлять распределённой инфраструктурой из единой точки?

Использовать несколько сред виртуализации, Kubernetes, частное облако и так далее уже стало нормой в крупных проектах. И чем больше становится инфраструктура, тем сложнее её поддерживать и развивать.

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

В этой статье Александр Кузьмин, старший инженер КРОК, делится подробностями, какие возможности открывает ManageIQ и как это всё работает:

Ссылка: https://tprg.ru/TPzt

#devops #инструменты
Разбираемся с Kubernetes: подборка статей для старта работы с контейнерами

— Kubernetes как профстандарт работы с контейнерами: https://tproger.ru/blogs/kubernetes-as-default-tool-for-containers

— Разработка приложений в среде Kubernetes: преимущества и нюансы: https://tproger.ru/articles/razrabotka-prilozhenij-v-srede-kubernetes-preimushhestva-i-njuansy

— Зачем и как использовать контейнеры: разбираемся с Docker, Kubernetes и другими инструментами: https://tproger.ru/articles/containers-explained

— Как Kubernetes повышает ценность ИТ-навыков: https://tproger.ru/articles/kak-kubernetes-povyshaet-cennost-it-navykov

#devops #инструменты #kubernetes
Глубокое понимание контейнеров: как эффективно работать с ними и предотвратить ошибки

Чтобы, наконец, преисполниться в своём DevOps-сознании, важно не только знать, что такое контейнеры, но и понимать их внутреннее устройство.

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

#devops
​​Если вам предстоит пройти собеседование по Kubernetes, мы как раз вовремя

Исполнительный директор по разработке в Газпромбанке собрал обширный гайд с ответами на вопросы про Kubernetes для технических собеседований.

Топики варьируются от базовых, рассчитанных на механическую проверку теоретических знаний:«объясните, что такое service», до более комплексных, требующих глубинного понимания внутренних принципов k8s: «каким образом публиковать развёрнутое приложение».

#devops #kubernetes
Подходит ли вам профессия Девопса

На самом деле DevOps — это не столько профессия, сколько философия и подход к разработке. DevOps-инженер решает большое количество прикладных задач, требующих серьёзного практического опыта и экспертизы.

Если вы хотите попробовать себя в этом, обратите внимание на статью Дмитрия Сорокина, технического директора компании-разработчика инфраструктурного ПО “Базис”. В ней расписали, откуда взялся термин DevOps, в чём заключается суть методологии, чем занимается DevOps-инженер и кому эта профессия точно не подойдёт.

#devops
Практика, практика и ничего кроме практики

KodeKloud Free Labs — площадка c интерактивными заданиями и реальными сценариями, которые помогут погрузиться в практическое применение принципов DevOps и облачных технологий, не выходя из браузера.

В бесплатных лабах сейчас есть: Linux, Кубер, Docker, GiT, Python и прочие прелести. 

#devops #docker #git #python