Обновить
256K+

DevOps *

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

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

Пишем роли ansible не ломая прод — особенности check_mode или как правильно его готовить

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

вы в команде адептов инфраструктуры как код и не только раскатываете свою инфраструктуру, но и обновляете ее и хотите быстро восстанавливать, а это значит что вы должны обеспечивать одну из ключевых концепций ansible - идемпотентность повторных запусков. Для этого вы вынуждены не только писать роли, применяя их в лабораторных условиях, но и применения их на реальной инфраструктуре, о том как дебажить при этом ямлы написано например здесь. Применять код который сделает множество изменений в продакшн - такое себе удовольствие не для слабонервных, поэтому и мы будем пускать его предварительно с флагом --check - в холостую, желая посмотреть те изменения которые будут внесены в целевую инфраструктуру.

чекаем туториал

Отладка плэйбуков ansible

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

Рябятаньки в этом руководстве я постараюсь рассказать как дебажить playbookи, устраняя потенциальные проблемы, не дожидаясь обезвреживания продакшена. Если вы читаете это, то я уверен что вы, также как и я, прочитали десяток статей о том как установить ansible и запускать (применять - режет слух) плэйбуки для конфигурирования всего до чего дотягивается руки.

узнать как дебажить

Реквием по красной панде

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

Apache Kafka - давно уже стала стандартом для распределенного лога, буфера для потоков данных. Можно сказать, что технология прочно вошла в разряд "скучных". Множество статей на хабре, медиуме, видео на ютубе, обширное сообщество в телеграме. Подводные камни известны, специалистов много, уровень зрелости дошел до такой стадии, что начали принимать достаточно сложные KIP типа отказа от Apache Zookeeper и т. п.

Но мы же айтишники, зуд улучшательства и непрерывного повышения качества (чтобы ни скрывалось под этой фразой) у нас в крови. И вот она - Redpanda, которая обещает нам полную совместимость с протоколом kafka, и еще кучу бонусов сверху.

Привет, меня зовут Стас, последние 5 лет я работаю на позиции data platform engineer. Из них Apache Kafka была одной из составляющих моих платформ данных около 3 лет. Эта статья будет итогом более чем полугода эксплуатации в продуктиве кластера redpanda. Спойлер: вчера я поднял из гита удаленные плейбуки для кафки и вернул ее в продакшн обратно, прощай мечта...

Читать далее

Начало работы с Webpod: упрощенное решение для деплоя вашего веб-сайта

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

Приветствую, товарищи разработчики!

Мы рады представить вам Webpod — фантастический новый инструмент, разработанный для упрощения процесса деплоя вашего веб-сайта. Webpod позволяет эффективно и быстро развернуть веб-сайт на сервере, позволяя больше сосредоточиться на проекте и меньше на настройке.

Читать далее

SonarQube: делаем код лучше

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

Привет! Меня зовут Сергей, я один из разработчиков продукта «Сервис персонализации» в компании Sportmaster Lab, и в этом посте я расскажу про SonarQube – платформу для непрерывного анализа и измерения качества программного кода, разработанную компанией SonarSource.

Сейчас SonarQube является чем-то вроде отраслевого стандарта. В частности, это стандарт центра компетенций Sportmaster Lab. В своей работе SonarQube использует статический анализ кода: реальное его выполнение не требуется, так как анализируются именно «исходники». Предмет анализа этого инструмента — потенциальные ошибки и уязвимости, стандарты оформления кода, наличие тестов и уровень покрытия ими, а также дублирование кода и его поддерживаемость. SonarQube поддерживает большое количество языков программирования, его можно встраивать в конвейер CI/CD и в вашу среду разработки. А еще — файлы отчетов сторонних инструментов (Eslint, Stylelint, OWASP Dependency Check и многие другие).

В этой статье вы узнаете:

как работать с SonarQube;

как он может помочь вам в работе и сделать ваш код лучше.

Эта статья — мой сугубо личный опыт работы с SonarQube в качестве пользователя, поэтому я не буду останавливаться на таких «административных» моментах, как развертывание SonarQube, создание в нем нового проекта и настройка его интеграции с GitLab.

Читать далее

DevOps-трансформация: как раздать инженеров по командам и не погибнуть

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

Как построить DevOps в крупной компании, которая едет и не останавливается? Тимофей Нецветаев, руководитель отдела платформенных сервисов CDEK, расскажет, что они с командой инженеров делали в период с 2019 по 2023 год. Как всё трансформировали и как при этом изменилась компания.

CDEK 23 года занимается логистикой. Уже больше 1500000 клиентов. Все процессы очень быстрые! Поэтому возникла необходимость DevOps-трансформации. Требовалось ускорить time to market, уменьшить количество сбоев, сэкономить вычислительные ресурсы и улучшить поддержку разработки. Разработчики хотели быстрее разрабатывать и меньше страдать. Конечно, это можно сделать и без DevOps-методологии и культуры, но в CDEK решили, что так не интересно, не эффективно и медленно.

Читать далее

Почему fsync(): Потеря несинхронизированных данных на одном узле приводит к глобальной потере данных

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

Независимо от механизма репликации, необходимо использовать fsync() для предотвращения глобальной потери данных в non-Byzantine протоколах.

Читать далее

Нативный способ шифрования данных в Helm

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

Привет, Хабр! Меня зовут Миняйлов Лев, я старший разработчик и DevOps-инженер Группы "Иннотех".

Хочу поделиться решением задачи шифрования чувствительных данных в Helm, использующим встроенные функции encryptAES/decryptAES.

Читать далее

Наблюдаемость сетевой инфраструктуры Kubernetes. Часть первая

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

В этой статье будут рассмотрены инструменты наблюдения за сетевой инфраструктурой Kubernetes и основные составляющие Observability/Наблюдаемости – мониторинг, журналы событий, метрики, распределенная трассировка и оповещения. Обсудим, как эти инструменты могут помочь обеспечить надежную и эффективную работу кластеров Kubernetes и запущенных на них микросервисах, а также какие преимущества и недостатки существуют при использовании этих решений.

Эта статья для DevOps, Kubernetes administrators и SRE инженеров, которым важно и интересно разобраться в том, как устроена сетевая инфраструктура Kubernetes, какое взаимодействие происходит на уровне ядра Linux и различных приложений (Go, Java, Python и т.п.); изучить две обширные технологии eBPF и OpenTelemetry, активно продвигаемые CNCF сообществом. А главное при помощи каких инструментов можно упростить принятие решений инженерам при использовании Kubernetes в своих проектах и продуктах.

Читать далее

Различия между test-driven- и observability-driven-разработкой

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


Мы находимся на пороге новой эры ODD — разработки на основе наблюдаемости. В ней на первый план выходит применение инструментария бэкенд-кода в качестве утверждений для проведения тестов и культура тестирования на основе трассировки. Используя Tracetest, бэкенд-разработчики не просто генерируют E2E-тесты из трассировок OpenTelemetry, они меняют подход к обеспечению качества и повышению скорости даже в самых сложных приложениях.
Читать дальше →

Как создавать Kubernetes секреты из Vault, используя external-secrets-operator

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

Бывают случаи, когда инженеры хранят секретные данные, ключи, токены в открытом виде или в переменных Gitlab. В Kubernetes для хранения данных, которые нежелательно показывать широкому кругу лиц, предусмотрены секреты.

В этой статье предлагаю рассмотреть безопасный способ передавать, синхронизировать, интегрировать секреты напрямую из Vault в Kubernetes – с помощью метода аутентификации AppRole, используя external-secrets-operator.

Читать далее

Полезные алиасы в Bash

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

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

Читать далее

Автоматизация установки и удаления LAMP-стека с помощью Ansible

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

В этом руководстве мы рассмотрим, как автоматизировать установку и удаление LAMP-стека (Linux, Apache, MySQL, PHP) с помощью Ansible. Ansible — это инструмент автоматизации с открытым исходным кодом, который позволяет вам определять инфраструктуру и управлять ею как кодом.

Читать далее

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

Zero Trust Network: какой CNI лучше и почему именно Calico

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

Привет! Я Максим Рязанцев, DevOps-инженер в AGIMA. Мы разрабатываем большие проекты для больших компаний — поэтому много внимания уделяем безопасности. Новости о новых утечках данных или взломах прилетают чуть ли не каждую неделю. Работать зачастую приходится с облачными технологиями. И всё это увеличивает паранойю: не хочется профакапиться. Бороться с паранойей помогает модель Zero Trust. Как мы с ней работает, подробно опишу в этой статье.

Читать далее

Разбираемся в плагинах Jenkins

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

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

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

Читать далее

KubeVirt: внутреннее устройство и сеть. Как достигнуть совершенства? (обзор и видео доклада)

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

Всем, привет! Я Андрей Квапил, работаю во «Фланте» над Kubernetes-платформой Deckhouse. Это статья по мотивам моего доклада о разработке нашей системы виртуализации на основе KubeVirt. Я расскажу, какие альтернативы KubeVirt мы рассматривали, чем они нас не устроили, как устроен KubeVirt, как он работает с файловыми хранилищами, сетью и о том, как происходит запуск виртуальных машин внутри Kubernetes. А еще — какие изменения мы внесли в KubeVirt, чтобы он полностью соответствовал нашим задачам. Будет сложно, но интересно. 

Кстати, в начале 2023 года мы уже рассказывали на Хабре о Deckhouse Virtualization — нашей системе виртуализации нового поколения. 

Читать далее

DevOps: методология, принципы, подходы и технологии

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

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

Читать далее

Как я стал девопсом в городе, в котором есть только завод

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

Если бы я не пошел в айти, то строил бы суда на Дальнем Востоке: в моём родном городе основной карьерный путь — это местное градообразующее предприятие, на другие профессии особо не учат.

Мне же хотелось удалёнки, карьерного роста и творчества. Путь к творчеству лежал через самый низ айти-карьеры — я стал оператором техподдержки. Сейчас я junior-devops инженер с собственной тестовой лабораторией и множеством завершенных проектов — и вот как у меня это получилось.

Читать далее

Будущее NGINX: возвращаемся к нашим корням в открытых исходниках

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

Когда весело - время летит. Да так, что сложно поверить: NGINX’у уже 18. Если оглянуться - сообщество и компания достигли вместе многого. Недавно мы прошли важную веху - на момент написания этой статьи 55.6% всех вебсайтов работают на NGINX (либо на нашем ПО, либо на продуктах, построенных поверх NGINX). Мы также веб-сервер №1 по доле рынка, и очень горды этим, и благодарны вам, сообществу NGINX, за этот потрясающий вотум доверия.

Мы также всё больше и больше понимаем, что ПО с открытыми исходниками продолжает менять мир. Всё больший и больший процент приложений создаётся с использованием открытого ПО. От терминалов и новостей Bloomberg до Washington Post, Slack, Airbnb, Instagram и Spotify - тысячи наиболее известных мировых брендов и компаний в работе своих веб-сайтов полагаются на NGINX Open Source. В моей собственной жизни - между Zoom для рабочих созвонов и Netflix вечерами - я, вероятно, провожу 80% своего дня, используя приложения, созданные поверх NGINX.

Что дальше?

Погружаемся в тему защиты контейнеризации, или как обучить тому, чему нигде не учат

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

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

Читать далее