Все потоки
Поиск
Написать публикацию
Обновить
348.23

DevOps *

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

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

Как работает DNS в Linux. Часть 1: от getaddrinfo до resolv.conf

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

Привет, Хабр! Меня зовут Анатолий Кохан, я — DevOps-инженер в К2Тех.

Когда мы вводим в браузере имя сервера или доменное имя сайта, выполняем ping или запускаем любое удаленное приложение, операционная система должна преобразовать указанные имена в IP-адреса. Этот процесс называется разрешением доменного имени. На первый взгляд он может показаться весьма прозрачным, однако за ним скрывается многослойный механизм.

Данная статья — начало серии, посвященной низкоуровневой архитектуре разрешения имен. Поговорим о том, как устроен этот процесс в Linux на уровне ядра, различных библиотек C и системных вызовов.

Читать далее

DevSecOps без иллюзий: строим безопасный цикл разработки на чужих ошибках

Время на прочтение12 мин
Количество просмотров4K

Сегодня поговорим о том, что многие делают, но мало кто делает правильно — о безопасной разработке и DevSecOps. Для этого мы пригласили Романа Гаголушко, руководителя отдела консалтинга безопасной разработки в Бастионе. Передаем ему слово.

Небольшой дисклеймер.

За годы работы в сфере безопасности разработки я насмотрелся:

— на вопиющие случаи игнорирования базовых принципов безопасности (и не только при разработке);

— на неэффективные попытки внедрения Dev «Sec» Ops;

— на откровенную и безрезультатную имитацию бурной деятельности;

— на такую же безрезультатную трату бюджета при закупке неподходящих инструментов анализа кода;

— на безразличие;

— на нежелание видеть очевидные вещи;

— на непонимание ИБ и БР со стороны разработки.

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

Читать далее

Как мы учились управлять миллионами учётных записей и их секретами

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

Всем привет. Название статьи говорит за себя, добавлю лишь, что расскажу об объединении IGA, PAM и Vault. Статья будет интересна DevSecOps-инженеров, специалистов по безопасности и администраторов инфраструктуры.

Читать далее

Self-hosted URL shortener + Raycast

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров2.6K

Привет Хабр!

Я обожаю сокращать ссылки через собственный URL shortener. Это как clck.ru, только всё работает на собственной архитектуре и данные об использовании никуда не утекают. При этом домен я тоже могу поставить какой-нибудь красивый (к примеру - hdla.cloud).

Читать далее

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

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

Настройка оповещений для различных метрик не всегда представляет из себя тривиальную задачу. В некоторых случаях может быть вполне достаточно простого порогового значения, например, для отслеживания свободного места на диске устройства. Вы можете просто установить оповещение о том, что осталось 10% свободного места, и все готово. То же самое касается и мониторинга доступной памяти на сервере.

Однако что делать, если необходимо отслеживать поведение пользователей на веб‑сайте? Представьте, что вы управляете интернет‑магазином, где продаете товары. Одним из подходов может быть установка минимального порога для ежедневных продаж и проверка его раз в день. Но что, если вам нужно выявить проблему гораздо раньше, в течение нескольких часов или даже минут? Статичный порог не позволит этого сделать, так как активность пользователей может меняться в течение дня. Именно здесь на помощь приходит обнаружение аномалий.

Читать далее

Азы контейнеризации: namespaces и cgroups

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров5.8K

Чтобы понять, что такое контейнер, достаточно знать, что такое namespace и cgroups. Потому что эти два механизма обеспечивают изоляцию и распределение ресурсов для процессов в Linux.

Читать далее

FHRP: Надежный шлюз в мире нестабильных сетей

Время на прочтение10 мин
Количество просмотров2K

Привет, Хабр! Меня зовут Никита Николайчук, и я преподаю на курсе «Сетевой инженер». В этой статье мы подробно рассмотрим протоколы FHRP, которые обеспечивают отказоустойчивость сетевых шлюзов, а также разберемся, как HSRP, VRRP и GLBP помогают минимизировать потери трафика при сбоях. Вы узнаете о тонкостях их реализации и о том, как избежать распространенных ошибок при настройке этих протоколов.

Читать далее

KubeVirt: глубокое погружение для администраторов VMware vSphere

Уровень сложностиСложный
Время на прочтение28 мин
Количество просмотров7.4K

KubeVirt — это расширение для Kubernetes, которое позволяет запускать виртуальные машины внутри K8s-кластера. Именно эта технология, пусть и существенно доработанная, лежит в основе Deckhouse Virtualization Platform. Недавно наша команда встретила статью Дина Льюиса, которая отлично объясняет внутреннее устройство KubeVirt, принципы его работы и то, как они соотносятся с более привычными многим концепциями vSphere. Мы решили перевести её для сообщества. 

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

Читать далее

Улучшения в RMON: расширенный Ping, группировка алертов и трассировка через MTR

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.2K

Нам часто пишут пользователи, которые хотят мониторить качество каналов связи — не просто проверять “доступен ли хост”, а действительно оценивать стабильность сети и реагировать на деградации. Один из таких пользователей недавно подключил мониторинг для нескольких регионов, и его запрос дал нам полезный импульс для доработок.

Рассказываем, какие улучшения появились в RMON.

Читать далее

Пробный поход в веб-kubernetes-1С, вопреки привычкам

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров3.7K

Поскольку компания со страшной силы использует 1С, то сложились некие неизменные традиции, одна из которых – это веб-публикации 1С. Плодятся они примерно так: 1 ИБ (информационная база) + например несколько ИБ с тем же смыслом = 1 отдельный web(iis)-сервер, а таких конструкций полно. Получается, что помимо лицензий, мы тратим кучу ресурсов просто на веб-доступ. Поступила идея, что пора экономить (а заодно отказоустойчивость). Пока на этапе экспериментов/тестов.

Читать далее

Инженерия деградации: почему сложное ПО неизбежно ломается со временем и что с этим делать

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3.2K

Долгоживущие программные системы, как и живые организмы, склонны к старению. Эта статья — глубокое техническое исследование закономерностей деградации сложного ПО: от утечек абстракций до архитектурной энтропии. Разберём реальные примеры, редкие баги, системное гниение и последствия спагетти-рефакторинга. Код, хаос и человеческий фактор — всё как мы любим.

Если вы когда-нибудь открывали 10-летний Java-монолит и пытались понять, зачем в середине пайплайна логин-прослойки вызывается System.gc() — поздравляю, вы соприкоснулись с инженерией деградации. Это неофициальный, но абсолютно реальный раздел знаний: как сложные программные системы со временем превращаются в фрактальную кашу из решений, компромиссов и технического долга.

И, что важнее — почему это нормально.

В этой статье речь пойдёт не о багфиксах, CI/CD или микросервисах. Мы копнём глубже. Здесь — история о том, как со временем ломается не просто код, а сама логика, архитектура и даже социальные связи внутри проекта. С примерами, кодом, болью и странным юмором.

Читать далее

Мониторинг «здесь и сейчас»: используем потоки событий JDK Flight Recorder

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


JDK Flight Recorder (JFR) — это диагностическая подсистема, встроенная в JVM. В основе JFR лежит очень простая идея, но вокруг нее выросла разнообразная экосистема решений, позволяющих решать широкий спектр задач.
В данной статье я хочу сфокусироваться на одном аспекте технологии JFR — потоковой обработке событий. Потоковая обработка появилась в JDK 14 в виде Flight Recorder Event Streaming API и позволяет прикладному коду обрабатывать события JFR с минимальной задержкой.

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

Настраиваем CI/CD Android-проекта, часть 1. Начало

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров4.1K

Всем привет, меня зовут Кирилл и я Android-разработчик в Scanny.

Это первая часть из серии статей про CI/CD для Android-проекта. В рамках данной серии статей я расскажу как настраивать GitLab CI/CD, который покроет базовые потребности в Unit и Android-тестировании, сборке приложения, публикации в Play Market и многом другом.

Дополнительно я разберу работу с разными инструментами для Android-тестирования в лице Marathon Labs и Firebase Test Lab. Аналогично разберу работу с Gradle Play Publisher и Fastlane для публикации приложения в Play Market.

Читать далее

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

Поговорим о DevSecOps и культурной трансформации в мире разработки

Уровень сложностиПростой
Время на прочтение21 мин
Количество просмотров2.7K

Киберугрозы растут, уязвимости в коде дороже, чем когда-либо, а традиционные подходы к безопасности терпят крах. Почему компании теряют миллионы, игнорируя безопасность до финального этапа разработки? Как DevSecOps меняет правила игры, превращая защиту данных в часть повседневной работы разработчиков? В этой статье вы узнаете:

Почему «последняя миля» в тестировании безопасности — это провал: статистика OWASP и NIST о том, как 97% приложений содержат уязвимости, а исправление ошибок после релиза обходится в 6 раз дороже.

Как DevSecOps убирает барьеры между командами: интеграция безопасности в CI/CD, автоматизация проверок и сдвиг «влево» (Shift Left) — от теории к реальным кейсам Microsoft, Netflix и Capital One.

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

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

Статья подойдёт для разработчиков, руководителей IT-команд, специалистов по кибербезопасности и всем, кто хочет превратить уязвимости в прошлое.

Читать далее

Security Gate (DevSecOps cicd)

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

Всем приветы! Меня зовут Антон, я Tech Lead DevSecOps в местной биг-тех компании. Хочу начать с кратенького предисловия, почему я решил написать что-нибудь про DevSecOps. Я довольно-таки часто сталкиваюсь с непониманием, что же автоматизируют и для чего нужны DevSecOps инженеры, где их место в компании и в современном ИБ. Да и что далеко ходить, многие коллеги DevOps, сами считают, что с добавлением trivy или sonarqube в пайплайны, ты уже носишь гордое звание DevSecOps.

Поэтому в этой статье поговорим о том, как должны выглядеть DevSecOps пайплайны, чтобы они трансформировались во что-то зрелое. В Security Gate!

Читать далее

Быстрый деплой бота (и не только) на Docker-хостинге с Portainer

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров5.1K

18 июня будет два года как я создал сообщество "Код на салфетке". Сразу оговорюсь, что это некоммерческая история и возникло оно как решение важной для меня проблемы: "недостаток информации для начинающего разработчика". В процессе моего обучения и развития я сталкивался с различными нюансами, которые решались достаточно просто, но найти "комплексный ответ" зачастую было очень трудной задачей.

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

За эти два года мне в личку и в чат Telegram-канала довольно часто пишут новички и их вопросы можно разделить на две категории:

Читать далее

Infrastructure as Data: от конфликтов к эволюции

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров1.1K

Довольно давно занимаюсь вопросами связанными с инфраструктурой и построением платформ для разработчиков.
Не один раз слышал от коллег и читал про такое понятие как Infrastructure as Data(IaD). Но я не смог найти внятного и короткого объяснения, что же это такое и чем полезно, потому решил попробовать рассказать свою версию.

Читать далее

Как вырасти до 2000 тенантов: почему Sealos перешла с Nginx на Envoy

Время на прочтение7 мин
Количество просмотров3.7K

Sealos Cloud столкнулась с критическими проблемами при работе с Nginx Ingress в кластерах с большим числом пользователей. В статье — подробный  рассказ о поиске нового, более подходящего API-шлюза.

Читать далее

Как настроить мониторинг, чтобы не проспать проблему

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

Все мы с этим сталкивались: вроде бы сервис работает, графики зелёные, ресурсы свободны — а пользователи всё равно жалуются. Открываешь мониторинг — CPU в порядке, память не забита, места на диске полно. А люди продолжают писать: «У вас тормозит». Знакомо?
Давайте разберёмся, как настроить мониторинг так, чтобы проблемы ловились сразу — ещё до того, как начнут ломиться сообщения в поддержку.

Читать далее

Кастомизация GitLab: опыт Совкомбанк Технологий в написании компонентов для типовых банковских проектов

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров2.9K

Хабр, привет! На связи Владимир, DevOps-инженер компании Совкомбанк Технологии. В этой статье расскажу о компонентах GitLab, способах их применения и том, как они помогли нам с настройкой CI/CD на проектах.

Читать далее

Вклад авторов