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

Сегодня возникла потребность в мониторинге изменений определенных файлов на сервере, существует много разных способов например osquery от facebook, но так как недавно я начал пользоваться Open Distro for Elasticsearch решил мониторить файлы эластиком, одним из его beat'ов.

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

История по оптимизации образов для java приложений началась с выхода статьи в блоге спринга — Spring Boot in a Container. В ней обсуждались различные аспекты по созданию docker образов для spring boot приложений, в том числе и такой интересный вопрос, как уменьшение размеров образов. Для наших команд это было актуально в силу ряда причин, поэтому мы решили применить это решение к нашим приложениям.

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

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

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

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

Честно говоря, Иван часто посмеивался над тщетными усилиями коллег из отдела мониторинга. Они прилагали огромные усилия для реализации метрик, которые им заказывало руководство компании. Они были настолько заняты, что больше никому ничего не хотели делать.

А руководству всё было мало – оно постоянно заказывало всё новые и новые метрики, очень быстро переставая пользоваться тем, что были сделаны ранее.

Последнее время все только и говорили про LeadTime – время поставки бизнесовых фич. Метрика показала сумасшедшее число – 200 дней на поставку одной задачи. Как же все охали, ахали и воздевали руки к небу!

Через некоторое время шум постепенно затих и от руководства поступил заказ на создание еще одной метрики.

Ивану было совершенно понятно, что и новая метрика точно также тихонько помрёт в тёмном уголке.

Действительно, размышлял Иван, знание числа совершенно никому ни о чём не говорит. 200 дней или 2 дня – нет никакой разницы, потому что по числу невозможно определить причину и понять, хорошо это или плохо.

Это типичная ловушка метрик: кажется, что новая метрика расскажет суть бытия и объяснит какой-то тайный секрет. Все так на это надеются, но ничего почему-то не происходит. Да потому что секрет надо искать вовсе не в метриках!

Для Ивана это был пройденный этап. Он понимал, что метрики – это просто обычная деревянная линейка для измерений, а все секреты надо искать в объекте влияния, т.е. в том, что эту метрику формирует.

Для интернет-магазина объектом влияния будут его клиенты, приносящие деньги, а для DevOps – команды, создающие и раскатывающие дистрибутивы с использованием конвейера.

Однажды, устроившись в холле в удобном кресле Иван решил как следует продумать как бы он хотел видеть метрики DevOps с учётом того, что объектом влияния являются команды.

Цель метрик DevOps

Понятно, что всем хочется уменьшить время поставки. 200 дней – это, конечно, никуда не годится.

Но как, вот в чем вопрос?Читать полностью »

GitLab: С выходом версии 12.1 мы прекращаем поддержку MySQL - 1

Сейчас мы расскажем, почему, начиная с версии 12.1, GitLab перестанет поддерживать MySQL.

В июле 2017 GitLab предупредил, что прекратит поддержку MySQL. Так вот, с выпуском 12.1 период подготовки к этому завершится, и больше мы MySQL поддерживать не будем. Решение непростое, и мы хотели бы поделиться доводами.

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

Речь, конечно, о DevOpsConf. Если не вдаваться в детали, то 30 сентября и 1 октября мы проведем конференцию об объединении процессов разработки, тестирования и эксплуатации, а если вдаваться — прошу под кат.

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

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

Конференция для фанатов DevOps-подхода - 1
Читать полностью »

Развертывание приложений на нескольких кластерах Kubernetes с Helm - 1

Как Dailymotion использует Kubernetes: развертывание приложений

Мы в Dailymotion начали использовать Kubernetes в продакшене 3 года назад. Но развертывать приложения на нескольких кластерах то еще удовольствие, поэтому в последние несколько лет мы старались улучшить наши инструменты и рабочие процессы.

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

Прим. перев.: После недавней публикации материала о методах pull и push в GitOps мы увидели интерес к этой модели в целом, однако русскоязычных публикаций на эту тему оказалось совсем мало (на хабре их попросту нет). Посему рады предложить вашему вниманию перевод другой статьи — пусть и уже почти годичной давности! — от компании Weaveworks, глава которой придумал термин «GitOps». В тексте поясняется суть подхода и ключевые отличия от уже существующих.

Что же такое GitOps? - 1

Год назад мы опубликовали введение в GitOps. Тогда мы рассказали, как команда Weaveworks запустила SaaS, целиком основанную на Kubernetes, и разработала набор предписывающих лучших практик для развертывания, управления и мониторинга в среде cloud native.Читать полностью »

Кошмар «Рыцаря»: поучительная история про DevOps - 1

1066 год, с начала вторжения викингов в Англию прошло уже больше 200 лет. Король Гарольд, собрав отряд рыцарей выступил к реке Дервент для решающего сражения с войсками своего тёзки — норвежского конунга Харальда. Целый месяц трудились оружейники, чтобы выковать достаточное количество доспехов нового поколения, способных защитить рыцаря от удара скандинавским топором. А сколько перед этим было экспериментов и испытаний на турнирах! Но ожидание должно было себя оправдать — лёгкая, но надёжная экипировка позволяла даже в пешем строю, без больших потерь, разметать викингский хирд. И, наконец, они встретились у Стамфорд-Бриджа. Главный отряд рыцарей во главе с командиром в блестящих доспехах схлестнулся посреди моста с врагами. Да, держит удар сталь подгорных мастеров!

Медленно, но верно, викинги переходят к круговой обороне. Кажется, победа уже близко. И на поле боя, наконец-то, находят друг друга командир рыцарей и норвежский ярл.
Читать полностью »

Lazydocker — GUI для Docker прямо в терминале - 1

Два года назад мы уже делали обзор GUI-интерфейсов для работы с Docker, однако мир любителей подобных решений не стоит на месте. На днях до версии 0.2 обновился, а вместе с тем и получил широкую огласку, молодой проект lazydocker, позиционирующий себя как «более ленивый путь управлять всем в Docker». Утилита стремительно набирает популярность — ещё вчера количество его GitHub stars не достигало 3000, а уже сегодня перевалило за 4000.Читать полностью »

Непрерывная репликация из старой в новую версию PostgreSQL с помощью Slony - 1

Нативная потоковая репликация в PostgreSQL работает только между серверами с одинаковой основной версией. О логической репликации мы говорили в предыдущем посте. Мы увидели, как логическая репликация помогает перенести данные из одной версии PostgreSQL в другую. Но логическая репликация подходит только для поддерживаемых версий PostgreSQL, например, для PostgreSQL 9.4 и PostgreSQL 11. Что делать с версиями до 9.4? Использовать Slony-I.

Используйте репликацию с помощью Slony-I, чтобы перенести данные из старых баз в последнюю версию PostgreSQL. Что такое Slony и как он работает?

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


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