Рубрика «devops» - 45

Отлаживаем сетевые задержки в Kubernetes - 1

Пару лет назад Kubernetes уже обсуждался в официальном блоге GitHub. С тех пор он стал стандартной технологией для развёртывания сервисов. Теперь Kubernetes управляет значительной частью внутренних и публичных служб. Поскольку наши кластеры выросли, а требования к производительности стали более жёсткими, мы стали замечать, что в некоторых службах на Kubernetes спорадически появляются задержки, которые нельзя объяснить нагрузкой самого приложения.

По сути, в приложениях происходит будто случайная сетевая задержка до 100 мс и более, что приводит к тайм-аутам или повторным попыткам. Ожидалось, что службы смогут отвечать на запросы гораздо быстрее 100 мс. Но это невозможно, если само соединение отнимает столько времени. Отдельно мы наблюдали очень быстрые запросы MySQL, которые должны были занимать миллисекунды, и MySQL действительно справлялась за миллисекунды, но с точки зрения запрашивающего приложения ответ занимал 100 мс или больше.
Читать полностью »

Причины внедрить в процесс разработки статический анализатор кода PVS-Studio

PVS-Studio – это инструмент для поиска ошибок и потенциальных уязвимостей в исходном коде программ, написанных на языках C, C++, C# или Java. PVS-Studio относится к классу инструментов статического тестирования защищённости приложений (Static Application Security Testing, SAST). Анализатор ориентирован на практику непрерывной интеграции (CI) и позволяет выявлять ошибки на самых ранних этапах, когда их исправление почти ничего не стоит.
Читать полностью »

Kibana is a powerful visualization platform designed specifically for log management with Elasticsearch. It already provides a lot built-in, but its open-source nature obviously lends it to some pretty cool simple and complicated additions from its community of devs. Some favorites include adding certain kinds of visualizations, API attachments, better integration between Kibana and other platforms, as well simple add-ons for flair in reports. Here are 14 open-source Kibana plugins that you can find through GitHub that are compatible with at least Kibana 7.x. If you have any other suggestions, feel free to please add descriptions and links in the comments below.
Читать полностью »

С 18 по 21 ноября в Сан-Диего (Калифорния, США) проходила масштабная конференция, организованная CNCF (входит в состав The Linux Foundation) и посвящённая Kubernetes и другим связанным технологиям, — KubeCon + CloudNativeCon North America 2019.

Релизы для Kubernetes-экосистемы с KubeCon'19: JFrog Container Registry, Kui от IBM, Loki 1.0.0… - 1

Мероприятие, которое на сей раз посетили 12 тысяч человек, было по традиции богато интересными докладами о стремительно растущей Open Source-экосистеме для современных cloud native-приложений, а также и приуроченными к нему анонсами от компаний, развивающих эту экосистему. Именно последним и посвящена новость.Читать полностью »

Случилось то, чего мы (и не только мы) долго ждали: werf, наша Open Source-утилита для сборки приложений и их доставки в Kubernetes, теперь поддерживает применение изменений с помощью 3-way-merge-патчей! В дополнение к этому, появилась возможность adoption’а существующих K8s-ресурсов в Helm-релизы без пересоздания этих ресурсов.

3-way merge в werf: деплой в Kubernetes с Helm «на стероидах» - 1

Если совсем коротко, то ставим WERF_THREE_WAY_MERGE=enabled — получаем деплой «как в kubectl apply», совместимый с существующими инсталляциями на Helm 2 и даже немного больше.

Но давайте начнём с теории: что вообще такое 3-way-merge-патчи, как люди пришли к подходу с их генерацией и почему они важны в CI/CD-процессах с инфраструктурой на базе Kubernetes? А после этого — посмотрим, что же представляет собой 3-way-merge в werf, какие режимы используются по умолчанию и как этим управлять.Читать полностью »

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

Договоримся, что все скрипты запуска библиотеки выполняются в environment Python с установленной библиотекой DeepPavlov (про установку см. первую статью, про virtualenv можно прочитать здесь). Примеры из этой статьи не требуют знания синтаксиса Python.

DeepPavlov для разработчиков: #2 настройка и деплоймент - 1
Читать полностью »

Перевод статьи подготовлен специально для студентов курса «DevOps практики и инструменты».

Как мы изменили состояние «всегда на связи», чтобы предотвратить профессиональное выгорание - 1


Миссия Intercom заключается в том, чтобы сделать бизнес в интернете персонализированным. Но персонализировать продукт невозможно, когда он не работает как надо. Работоспособность критична для успеха нашего дела и не только потому что наши клиенты платят нам, но и потому что мы сами пользуемся своим продуктом. Если наш сервис не работает, мы буквально чувствуем боль наших клиентов.Читать полностью »

3 истории сбоев Kubernetes в production: anti-affinity, graceful shutdown, webhook - 1

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

Как известно, учиться на чужом опыте дешевле, а посему — пусть эти истории помогут быть готовыми к возможным неожиданностям. Кстати, большая и регулярно обновляемая подборка ссылок на такие «failure stories» публикуется на этом сайте (по данным из этого Git-репозитория).Читать полностью »

Рисунок 2

Эта статья является продолжением цикла публикаций об использовании PVS-Studio в облачных системах. На этот раз мы рассмотрим работу анализатора совместно с GitLab CI — продуктом от GitLab Inc. Интеграция статического анализатора в CI систему позволяет выявить баги сразу после этапа сборки проекта и является очень эффективным способом сократить затраты на обнаружение ошибок.
Читать полностью »

Слёрм растёт.

В Питере на Слёрм DevOps было 70 человек в зале. Москва десантировала в конференц-зал гостиницы "Севастополь" 104 человека. Очередной рекорд, который скромно подсказывает нам, что мы идём в нужном направлении. Расположились и не в тесноте, и не в обиде.

Слёрм Базовый в Москве. День Первый. Залп из СocaCola, у ведущего отобрали микрофон и поддержка бдит - 1

Перед началом Слёрма, лектор попросил выключить звук у мобильных телефонов.
А так же попросил заранее открыть баночки Колы, чтобы шипением не перебивать голос лектора. Все среагировали быстро, чётко и послушно. Такого эффекта спикер явно не ожидал. Раздался залп сотни баночек CocaCola — практически пушечный залп с борта пиратско-админского корабля. Фейерверк, знаменующий начало.

Препарировать K8S собрались три спикера — два опытных и один начинающий.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js