Как стать автором
Обновить
127.05

DevOps *

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

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

Устраняем ошибки, связанные с SIGSEGV: ошибка сегментирования в контейнерах Linux (код возврата 139)

Уровень сложности Сложный
Время на прочтение 7 мин
Количество просмотров 194
Обзор
Перевод
image

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

Сигналы SIGSEGV возникают на уровне операционной системы, но столкнуться с ними также вполне можно и в контексте контейнерных технологий, например, Docker и Kubernetes. Когда контейнер завершает работу, выдав код возврата 139, дело именно в том, что он получил сигнал SIGSEGV. Операционная система завершает процесс контейнера, чтобы предохраниться от нарушения целостности памяти.

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

В этой статье будет объяснено, что представляют собой сигналы SIGSEGV, как они влияют на работу ваших контейнеров с Linux в Kubernetes. Также я подскажу, как отлаживать ошибки сегментации в вашем приложении, а если они возникают – как с ними справляться.
Читать дальше →
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Новости

Несовместимость Insert-only и поэтапного развертывания

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

В данной статье делюсь замеченной на практике проблемой. Смысл проблемы заключается в использовании противоречащих подходов на уровне Persistance и DevOps.

Читать далее
Всего голосов 3: ↑1 и ↓2 -1
Комментарии 3

Legacy PHP-FPM в Kubernetes

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

Каждая стратегия масштабирования имеет свои плюсы и минусы. Почему бы не начать комбинировать их и оставить только плюсы? Поговорим об этом — как сделать хорошо, когда нельзя просто закопать — в контексте PHP. 

Узнать больше
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 5

Построение гибкой и распределенной архитектуры с использованием Kafka и Kafka Connect: Часть 2 — Получатель и Helm Chart

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

Данная статья является продолжением статьи - Ивентная модель данных с использованием Kafka и Kafka Connect: Построение гибкой и распределенной архитектуры.

Добро пожаловать во вторую часть статьи о построении гибкой и распределенной архитектуры с использованием Apache Kafka и Kafka Connect! В первой части мы ознакомились с ивентной моделью данных, разработали сервис отправителя и настроили интеграцию с Kafka, чтобы асинхронно отправлять сообщения. Теперь настало время рассмотреть вторую часть этого увлекательного проекта.

Читать далее
Рейтинг 0
Комментарии 1

Истории

Как привнести дух стартапов в крупный энтерпрайз и промышленность

Время на прочтение 7 мин
Количество просмотров 592
Интервью

Привет, Хабр! Меня зовут Дмитрий Малыхин, последние семь лет я работаю в крупных промышленных компаниях и занимаюсь проектами по цифровизации. Специализируюсь в направлении DevOps — это связь между администраторами, разработчиками и бизнесами. Строю процессы и пытаюсь привнести дух стартапов в крупный энтерпрайз и промышленность.

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 1

SRE: Распределённая и централизованная модели управления инцидентами

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 831
Мнение
Перевод

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

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

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 1

Особенности SRE и Observability в мобильных приложениях

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

Привет! Я Даниэль Халиулин, технический менеджер продукта в Тинькофф. Отвечаю за надежность и производительность нашего основного приложения — мобильного банка. Руковожу двумя одноименными командами, которые занимаются производительностью и надежностью. Расскажу про направления SRE и Observability в мобильных приложениях.

Читать далее
Всего голосов 14: ↑14 и ↓0 +14
Комментарии 15

Нагрузочный поединок между Tarantool 2.10 и Hazelcast 4.5.4

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

В прошлый раз мы сравнили Tarantool с Redis, а в этой статье решили провести тесты с Hazelcast.

Так же, как в прошлой статье, мы рассматриваем вариант Tarantool как замены: берём типичные кейсы работы с Hazelcast и реализуем такие же механики на Tarantool, начиная от простых K-V операций и заканчивая вторичными ключами.

Читать далее
Всего голосов 29: ↑29 и ↓0 +29
Комментарии 6

Взгляд на сервисы глазами пользователей: как устроен синтетический мониторинг приложений

Время на прочтение 5 мин
Количество просмотров 596
Туториал

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

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

Рассказываем, как работать с синтетическим мониторингом в платформе зонтичного мониторинга Monq (кстати, функционал доступен в бесплатной версии платформы).

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 1

Что вспоминают о курсе DevOps Upgrade наши выпускники

Уровень сложности Простой
Время на прочтение 11 мин
Количество просмотров 1.1K
Интервью

У курса Слерма DevOps Upgrade прошло уже 5 потоков. Выпустился 161 студент. В честь завершения нашего 5-го потока решили поговорить с нашими выпускниками и узнать, с чем они сталкивались во время учёбы. Собрали истории выпускников в одну статью.

Читать далее
Всего голосов 11: ↑6 и ↓5 +1
Комментарии 0

Hello-World туториал на React/Django/RabbitMQ/Websockets

Уровень сложности Средний
Время на прочтение 37 мин
Количество просмотров 5.7K
Туториал

Однажды в поисках примера на React/Django я нашел на Хабре одну интересную статью. Она показалась мне полезной, и я решил дополнить пример из статьи новыми возможностями. В этом сиквеле мы добавим в веб-проект со списком студентов поддержку авторизации и real-time уведомлений на сокетах, улучшим систему Docker-сборки, оптимизируем модель очередей на RabbitMQ и немного пригладим косметику. В результате получим удобный базовый шаблон, с которого вы сможете начинать свои проекты.

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 5

Зачем нам Kyverno?

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

Kyverno  — это  механизм политики с открытым исходным кодом  для  Kubernetes  , который позволяет вам определять, проверять и применять политики для вашего кластера.

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

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

Читать далее
Всего голосов 14: ↑7 и ↓7 0
Комментарии 6

Как мы провели митап IT Squad МКБ

Время на прочтение 2 мин
Количество просмотров 727
Recovery Mode

Совсем недавно у нас прошел IT Squad Meetup. На неформальной конференции выступили специалисты различных банков и технологических компаний. В онлайн-формате было до 400 слушателей, офлайн – 50, суммарное время докладов – почти 5 часов, съедено X круассанов.

Коллеги обсудили современные технологии разработки веб-приложений. В частности, в программе выступлений были технологии нагрузочного тестирования приложений, аутентификации в том числе и с помощью биометрии по новому протоколу WebAuthn, прогрессивные веб-приложения (Progressive Web Applications – PWA), управление Kubernetes, другие аспекты DevOps и не только.

Под катом вас ждут удобные видеонарезки каждого из докладов.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 0

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

Yandex Scale
Дата 25 – 26 сентября
Время 17:00 – 18:00
Место Москва Онлайн
Битва пет-проектов
Дата 25 сентября – 30 ноября
Место Онлайн
Business&IT Day: Retail CPG
Дата 28 сентября
Время 09:50 – 14:00
Место Онлайн
XIX конференция разработчиков свободных программ «Базальт СПО»
Дата 29 сентября – 1 октября
Время 10:00 – 19:00
Место Переславль-Залесский Онлайн
Kokoc Hackathon
Дата 29 сентября – 1 октября
Время 19:00 – 21:00
Место Онлайн
Ruby Russia 2023 Online
Дата 30 сентября
Время 11:00 – 21:00
Место Онлайн
PG Boot Camp Russia 2023
Дата 5 октября
Время 10:00 – 17:00
Место Москва Онлайн
Joker
Дата 9 – 14 октября
Время 16:00 – 19:30
Место Санкт-Петербург Онлайн
Russia Risk Conference 2023 — 19-я конференция по риск-менеджменту
Дата 25 – 26 октября
Время 10:00 – 19:00
Место Москва Онлайн

Kubernetes Scheduler в Деталях: Важные Аспекты. Часть 1

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

Хотите узнать, как Kubernetes оптимально распределяет ваши контейнеры по нодам и каким образом можно этот процесс настроить или даже модифицировать?

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

Планирую идти от простого к сложному, так что прошу отнестись с пониманием. Если вы уже знакомы с базовыми концепциями k8s scheduler, не стесняйтесь пропустить первую часть и перейти сразу ко 2-й (ссылка будет опубликована позже).

Читать далее
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 0

Prometheus Alert Hints

Уровень сложности Сложный
Время на прочтение 17 мин
Количество просмотров 2.7K
Туториал

Привет! Меня зовут Александр Голиков, я работаю в компании Bercut. Наша компания разрабатывает и развивает IT-решения для операторов цифровых услуг и мобильных сервисов. Коротко говоря, мы помогаем цифровизации бизнеса. В компании я занимаюсь виртуализацией, СХД, мониторингом, разработкой и интеграцией продуктов Bercut c операционными системами. Для агрегации данных и анализа мы используем Prometheus.

В этой статье рассмотрю одну из конфигураций Prometheus в отказоустойчивом режиме, познакомлю вас с Karma alert dashboard и продемонстрирую написание алертов. Напишу несколько простых включений Go Template и рассмотрю ситуацию, где такие включения противопоказаны. Продемонстрирую, как на основе меток можно сделать исключения из общих правил и обучу Prometheus самостоятельно чинить поломки.

Погнали!
Всего голосов 17: ↑17 и ↓0 +17
Комментарии 4

Влияем на развитие продукта с помощью техподдержки: что вы узнаете на новом бесплатном курсе VK Education

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 684
Репортаж

Привет, Хабр! Меня зовут Руслан Рахимкулов, я руководитель направления технической поддержки клиентов в VK Tech и ведущий преподаватель онлайн-курса «Техническая поддержка». После того, как мы  рассказали о запуске осенних образовательных программ VK Education, к нам стали обращаться с разными вопросами о том, как будет организован курс, чему студенты смогут научиться и как полученные знания и навыки помогут им в будущей карьере. В этом посте я решил рассказать обо всём подробнее.

Курс бесплатный, но количество мест ограничено и, чтобы на него попасть, нужно пройти предварительный отбор. Заявку на поступление можно подать на сайте до 29 сентября включительно, а занятия начнутся 10 октября и продлятся 1 семестр. 

Курс подойдет новичкам в IT, дополнительным плюсом на вступительных испытаниях станет владение одним из языков программирования. Будет неплохо, если вы уже разбираетесь в технологиях – например, понимаете, чем отличается роутер от маршрутизатора, что такое серверы, базы данных и т.п. На сайте есть список рекомендованных материалов, которые помогут подготовиться к тестированию и уверенному началу обучения на курсе. 

Для начала расскажу немного с своём опыте, а потом перейду к деталям о программе курса.

Читать далее
Всего голосов 16: ↑16 и ↓0 +16
Комментарии 0

Настройка собственного Git сервера с помощью Gitea

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

Gitea - это удобная система  управления репозиториями Git, которая предлагает простой пользовательский интерфейс и все необходимые функции для эффективной разработки и сотрудничества над проектами. Если вы знакомы с другими системами Git, такими как GitHub, Bitbucket или GitLab, то Gitea будет знакомым и удобным решением для вас.

Почему именно Gitea? Она абсолютна бесплатна по сравнению с другими системами. Ее легко настроить под свои задачи. В этой статье, я расскажу об этом.

Читать далее
Всего голосов 13: ↑11 и ↓2 +9
Комментарии 24

Docker Desktop для Ubuntu: установка, минусы и альтернатива

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

Всех приветствую. Переустанавливая Убунту, подумал, почему бы не попробовать Docker Desktop в этот раз, ведь он уже должен быть в приемлимом для использования состоянии. Для чего он может пригодиться, спросите вы? Как-то я насоздавал кучу volumes и разных images примерно одного и того же, и чистить это было не в удовольствие, хоть и есть специальные команды для этого, но зачем до такого доводить, не лучше было бы иметь какой-то UI, чтобы следить за всем и по необходимости сразу удалять? Казалось бы, раз на Linux с docker нет никаких проблем, то и с Docker Desktop не должно быть, но не тут то было...

Читать далее
Всего голосов 17: ↑10 и ↓7 +3
Комментарии 30

Ванильный k8s от 1.26.0 до 1.28.1 с containerd на РедОС

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

Добрый день всем. Меня зовут Минисламов Руслан. В данной статье будет описан процесс настройки ванильного однонодового кластера k8s v1.26.8 c containerd, но сделать многонодовый не составит проблем. Весь код будет в статье. Статью написал так как на данный момент других мануалов нет и надеюсь помогу многим специалистам быстрее выполнить настройку k8s, буду так же признателен за ОС над тем как улучшить процесс установки. На офф. вики нам предлагают только версии 1.21 и 1.24, в которых достаточно много дыр и как минимум в версии 1.24 почти год как вышли последние изменения.

Читать далее
Всего голосов 15: ↑9 и ↓6 +3
Комментарии 24

Магия степеней двойки, или Запуск кучи docker контейнеров

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 6.4K
Туториал

Праздник «день программиста» отмечается в 256-й день года, а это 2⁸, т.е. два в степени восемь. Это не просто так — на степенях двойки многое завязано в компьютерах и программировании, они повсюду. Настолько повсюду, что иногда даже слишком.

Благодаря празднику я вспомнил, что давно хотел написать эту статью, и поделиться несколькими техническими байками, где числа, являющиеся степенями двойки, вставляли «палки в колёса» мне или моим коллегам.

Читать байки
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 6

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

Работа

DevOps инженер
46 вакансий